Руководство программы Airdecap-ng

Описание

 

С airdecap-ng Вы можете расшифровать захваченные файлы WEP/WPA/WPA2. Помимо того, он может быть использован для того чтобы отделить заголовки пакетов захваченных при передаче по не зашифрованным каналам беспроводных сетей.

 

Он создает новый файл с расширением ”-dec.cap”, который является расшифрованной версией входящего файла.

 

Использование

airdecap-ng [параметры]

Параметр

Значение

Описание

-l

Не удалять 802.11 заголовки

-b

bssid

Точка доступа, фильтрация по MAC-адресам

-k

pmk

WPA/WPA2 парный мастер-ключ в шестнадцатеричном виде

-e

essid

Целевая сеть по ascii идентификатору

-p

pass

Целевая сеть WPA/WPA2 парольная фраза

-w

key

Целевая сеть WEP-ключ в шестнадцатеричном виде

Примеры использования

Следующая команда удалит заголовки из открытой сети (без WEP) захвата:

airdecap-ng -b 00:09:5B:10:BC:5A open-network.cap

Следующая команда расшифровывает WEP-шифрование захваченное с использованием шестнадцатеричного WEP-ключа:

airdecap-ng -w 11A3E229084349BC25D97E2939 wep.cap

Следующая команда расшифровывает зашифрованный WPA/WPA2 захваченный пакет с использованием парольной фразы:

airdecap-ng -e ‘the ssid’ -p passphrase tkip.cap

Советы по использованию Airdecap-ng

Требования WPA/WPA2

Захваченный файл должен иметь четыре корректных handshake. Для этой цели файл имеющий (пакеты 2 и 3) или (пакеты 3 и 4) будет работать правильно. На самом деле для этого Вам не обязательно иметь все четыре пакета handshake.

Помимо этого, пакеты данных следующие после handshake будут расшифрованы. Это происходит потому, что требуется информация из handshake для того чтобы расшифровать пакеты данных.

Онлайн руководство Airolib-ng

Программа Airolib-ng является частью программ aircrack-ng и предназначена для хранения и управления essid и списком паролей. Данная программа позволит вам значительно ускорить взлом WPA/WPA2 ключей при помощи брутфорса.

 

Описание программы Airolib-ng

Использование Airolib-ng

Примеры использования Airolib-ng

Советы по использованию Airolib-ng

Неполадки в работе Airolib-ng

Неполадки в работе Airolib-ng

Включение Airolib-ng

 

Airolib-ng по умолчанию не компилируется. Чтобы включить компиляцию “make sqlite=true” и “make sqlite=true install”.

 

Ошибка компиляции

 

Хоть это не совсем, неполадки в работе, но это частая проблема при компиляции версии 1.0dev. Напомню, SQLite должны быть версии 3.3.13 или выше. Данную ошибку компиляции Вы получаете, когда версия SQLite меньше требуемой:

 

gcc -g -W -Wall -Werror -O3 -D_FILE_OFFSET_BITS=64 -D_REVISION=`../evalrev` -I/usr/local/include -Iinclude -DHAVE_SQLITE -c -o airolib-ng.o airolib-ng.c

airolib-ng.c: In function `sql_prepare’:

airolib-ng.c:129: warning: implicit declaration of function `sqlite3_prepare_v2′

make[1]: *** [airolib-ng.o] Error 1

make[1]: Leaving directory `/root/1.0-dev/src’

make: *** [all] Error 2

 

Сообщение об ошибке «invalid lines ignored»

 

Это сообщение об ошибке может возникнуть при импорте паролей либо ESSIDs. Числа записей с паролями либо ESSIDs неподходящей длины. Допустимые длины:

 

Пароли должны иметь длину от 8 до 63 символов.

ESSIDs должны иметь длину от 1 до 32 символов.

 

Сообщение о ошибке «Quitting aircrack-ng…»

 

Если после запуска aircrack-ng выводит только “Quitting aircrack-ng…”, то ESSID отсутствует в базе данных. Вам его необходимо загрузить плюс перезапустить параметр «batch».

Советы по использованию Airolib-ng

Создание собственной базы данных пример

 

Чтобы проверить свой инструмент…

 

установите себе sqlite3 библиотеки(рекомендуется последняя версия)

установите себе версию 1.0dev набора aircrack-ng либо выше

импортируйте essid, например “echo Harkonen | airolib-ng testdb —import essid —

 

Database does not already exist, creating it…

Database sucessfully created

Reading file…

Writing…

Done.

 

импортируйте password, например “echo 12345678 | airolib-ng testdb —import passwd —

 

Reading file…

Writing…

Done.

 

Начните пакетную обработку (“airolib-ng testdb —batch”), подождите окончание работы, затем уничтожьте процесс.

 

Computed 1 PMK in 0 seconds (1 PMK/s, 0 in buffer). All ESSID processed.

 

Проверьте базу данных, для того чтобы подтвердить все вычисления (“airolib-ng testdb —stats”)

 

There are 1 ESSIDs and 1 passwords in the database. 1 out of 1 possible combinations have been computed (100%).

 

ESSID Priority Done

Harkonen 64 100.0

 

Взломайте Ваш WPA/WPA2 handshake, например “aircrack-ng -r testdb -e Harkonen wpa2.eapol.cap

 

KEY FOUND! [ 12345678 ]

 

Использование образца предварительно созданной базы данных

 

Еще один способ протестировать самого себя, это скачать готовые базы данных под названием passphrases.db. Так же этот файл Вы можете найти в исходных кодах aircrack-ng в директории test. Попробуйте использовать эту базу данных с двумя тестовыми файлами WPA/WPA2, которые так же находятся в исходных кодах программы aircrack-ng в директории test. WPA/WPA2 тестовые файлы называются «wpa.cap» и «wpa2.eapol.cap«

 

Используйте любую из команд:

 

aircrack-ng -r passphrases.db wpa.cap

aircrack-ng -r passphrases.db wpa2.eapol.cap

 

Это даст вам парольную фразу. Успех будет означать что все работает правильно.

Примеры использования Airolib-ng

Вот примеры использования каждой операции.

Status операция

Вводим:

airolib-ng testdb —stats

Где:

testdb — имя создаваемой базы данных.

—stats — операция которая должна быть выполнена.

На что система отвечает:

statsThere are 2 ESSIDs and 232 passwords in the database. 464 out of 464 possible combinations have been computed (100%).

 

ESSID Priority Done

Harkonen 64 100.0

teddy 64 100.0

SQL операция

Следующий пример даст SSID “VeryImportantESSID” максимальный приоритет.

Введите:

airolib-ng testdb —sql ‘update essid set prio=(select min(prio)-1 from essid) where essid=»VeryImportantESSID»;’

На что система отвечает:

update essid set prio=(select min(prio)-1 from essid) where essid=»VeryImportantESSID»;

Query done. 1 rows affected.

В следующем примере будут искаться важные закономерности в pmk.

Введите:

airolib-ng testdb —sql ‘select hex(pmk) from pmk where hex(pmk) like «%DEADBEEF%»‘

На что система отвечает:

hex(pmk) BF3F122D3CE9ED6C6E7E1D7D13505E0A41EC4C5A3DEADBEEFFEFF597387AFCE3

Clean операция

Чтобы сделать основную очистку, введите:

airolib-ng testdb —clean

На что система отвечает:

cleanDeleting invalid ESSIDs and passwords…

Deleting unreferenced PMKs…

Analysing index structure…

Done.

Чтобы сделать основную очистку, уменьшить размер файла, если это возможно, и выполнить проверку целостности, введите:

airolib-ng testdb —clean all

На что система отвечает:

cleanDeleting invalid ESSIDs and passwords…

Deleting unreferenced PMKs…

Analysing index structure…

Vacuum-cleaning the database. This could take a while…

Checking database integrity…

integrity_check

ok

Query done. 2 rows affected.

Done.

Batch операция

Введите:

airolib-ng testdb —batch

На что система отвечает:

Computed 464 PMK in 10 seconds (46 PMK/s, 0 in buffer). No free ESSID found. Will try determining new ESSID in 5 minutes…

Verify операция

Проверить 1000 PMKs случайным образом. Введите:

airolib-ng testdb —verify

На что система отвечает:

verifyChecking ~10.000 randomly chosen PMKs…

ESSID CHECKED STATUS

Harkonen 233 OK

teddy 233 OK

Чтобы проверить все PMKs, введите:

airolib-ng testdb —verify all

На что система отвечает:

verifyChecking all PMKs. This could take a while…

ESSID PASSWORD PMK_DB CORRECT

Cowpatty table Export операция

Введите:

airolib-ng testdb —export cowpatty test cowexportoftest

На что система отвечает:

exportExporting…

Done.

Import операции

SSID

Чтобы импортировать ascii список SSIDs и создать базу данных, если она не существует, введите:

airolib-ng testdb —import essid ssidlist.txt

Где:

testdb — имя базы данных, которая будет обновлена или же создана в том случае если она не существует.

—import — операция которая должна быть выполнена.

essid — показывает что база данных представляет собой список SSIDs.

ssidlist.txt — имя файла в котором содержатся SSID. По одному SSID на строку.

На что система отвечает:

importReading…

Writing…

Done.

Passwords

Чтобы импортировать ascii список паролей и создать базу данных, если она не существует, введите:

airolib-ng testdb —import passwd password.lst

Где:

testdb — имя базы данных, которая будет обновлена или же создана в том случае если она не существует.

—import — операция которая должна быть выполнена.

passwd — показывает что база данных представляет собой список паролей.

password.lst — имя файла в котором содержатся пароли. Один пароль на строку.

На что система отвечает:

importReading…

Writing… read, 1814 invalid lines ignored.

Done.

Cowpatty таблицы

Импортирует таблицы cowpatty и создает базу данных, в том случае если она не существует, введите:

airolib-ng testdb —import cowpatty cowexportoftest

Где:

testdb — имя базы данных, которая будет обновлена или же создана в том случае если она не существует.

—import — операция которая должна быть выполнена.

cowpatty — показывает что база данных представляет собой cowpatty таблицы.

cowexportoftest — имя файла cowpatty. По одному в строку.

На что система отвечает:

importReading header…

Reading…

Updating references…

Writing…

Пример использования Aircrack-ng

Конечной целью использования Airolib-ng, позволяет ускорить взлом WPA/WPA2 с программой aircrack-ng. Используйте таблицы, построенные с использованием airolib-ng, затем используйте параметр «-r», для того чтобы указать базу данных содержащую предварительно рассчитанные PMKs.

Введите:

aircrack-ng -r testdb wpa2.eapol.cap

Где:

-r — указывает, что будет использоваться база данных предварительно вычисленных PMK.

Testdb — имя файла базы данных.

wpa2.eapol.cap — захваченный файл содержащий WPA/WPA2 handshake.

Примечание: все иные стандартные варианты, которые применимы к WPA/WPA2 также могут быть использованы. Это очень ограниченный пример.

Использование Airolib-ng

Usage:

 

airolib [options]

 

Где:

database(База данных) — имя базы данных или файла базы данных. Дополнительно можете указать полный путь к базе данных.

operation(операция) — определяет действия которые бы Вы хотели применить к базе данных. Смотрите ниже для создания полного списка.

options(параметры) — параметры которые могут потребоваться в зависимости от используемой операции.

 

Допустимы варианты операций:

— -stats — Выводит информацию о базе данных.

— -sql {sql} — выполнить указанный оператор SQL.

— -clean [all] — Очищает базу данных от старого ненужного хлама. Параметр «all» уменьшит размер файла по возможности и выполнит проверку целостности.

— -batch — Начать пакетную обработку всех комбинаций ESSID и паролей. Данная операция должна быть запущена перед использованием базы данных в aircrack-ng или после добавления Вами дополнительных идентификаторов SSIDs или паролей.

— -verify [all] — Проверить случайно выбранные PMKs. Если указан параметр «all» все PMKs в базе данных проверяются и некорректные удаляются.

— -export cowpatty {essid} {file} — Экспортировать в файл cowpatty.

— -import cowpatty {file} — Импортировать файл cowpatty и создать базу данных, в том случае если она не существует.

— -import {essid|passwd} {file} — Импортировать текстовый файл в виде списка ESSIDs или паролей и создать базу данных, в том случае если она еще не существует. Данный файл должен содержать один essid или пароль в строке. Строка должна оканчиваться переводом строки. Это будет равнозначно вводу кнопки «Enter» в конце каждой строки, при вводе значений программой.

Описание программы Airolib-ng

Airolib-ng является частью набора инструментов aircrack-ng, и предназначен для хранения и управления essid и списком паролей, вычисления парных мастер ключей(PMKs), и дальнейшего использования их при взломе ключей WPA/WPA2. Программа использует SQLite3 базы данных в качестве механизма хранения, который доступен на большинстве платформ. SQLite3 базы данных, были выбраны принимая во внимание наличие платформы плюс управления, памяти и накладных расходов дискового пространства.

WPA/WPA2 взлом включает в себя, расчет парного мастер ключа, из которого получают частный переходной ключ (PTK). Используя PTK, мы можем вычислить пакет сообщения с кодом (MIC) для данного пакета, и потенциально найти MIC идентичных пакетов с правильными PTK, поэтому PTK так же будет правильным.

Рассчитывается PMK очень медленно, поэтому он использует алгоритм pbkdf2. Тем не менее PMK всегда одинаков для данной ESSID и парольной фразы. Это позволяет вычислить PMK для данных комбинаций и ускорить взлом wpa/wpa2 handshake. Тесты показали, что при помощи данной техники, aircrack-ng способен проверить более 50000 паролей в секунду, используя предварительно рассчитанные таблицы PMK.

Вычисление PMK, как и прежде необходимо, но мы можем:

Предварительно вычислить его для дальнейшего и/или совместного использования.

Использовать разделенные машины для создания PMK и использования их значения в ином месте.

Как я сказал ранее, данная программа требует базы данных SQLite3. Вам необходима версия 3.3.17 либо выше.