Полный набор инструментов для аудита безопасности Wi-Fi сетей. Включает: захват пакетов (airodump-ng), деаутентификацию клиентов (aireplay-ng), взлом WEP/WPA/WPA2 (aircrack-ng), генерацию трафика и мониторинг интерфейсов. Стандарт отрасли для пентеста беспроводных сетей.
# Debian/Ubuntu: sudo apt install aircrack-ng # Arch: sudo pacman -S aircrack-ng # Из исходников: git clone https://github.com/aircrack-ng/aircrack-ng cd aircrack-ng && autoreconf -i && ./configure && make && sudo make install
Aircrack-ng — это полный набор инструментов для оценки безопасности WiFi-сетей.
Он сосредоточен на различных аспектах безопасности WiFi: * Мониторинг: Захват пакетов и экспорт данных в текстовые файлы для последующей обработки сторонними инструментами. * Атаки: Атаки повторного воспроизведения, деаутентификация, поддельные точки доступа и другие методы с помощью инъекции пакетов. * Тестирование: Проверка возможностей WiFi-карт и драйверов (захват и инъекция). * Взлом: WEP и WPA PSK (WPA 1 и 2).
Все инструменты являются командной строкой, что позволяет создавать сложные скрипты. Множество графических интерфейсов используют эту возможность. Он работает в основном в Linux, но также в Windows, macOS, FreeBSD, OpenBSD, NetBSD, а также в Solaris и даже в eComStation 2.
--disable-libnl в configure.Примечание: Airmon-ng требует pciutils только если в системе есть шина PCI/PCIe и она задействована. Такая шина может присутствовать, даже если физически не видна. Например, она присутствует и задействована на Raspberry Pi 4, поэтому pciutils требуется на этом устройстве.
besside-ng, besside-ng-crawler, easside-ng, tkiptun-ng и wesside-ng,
потребуется пакет разработки libpcap (в Cygwin используйте Airpcap SDK; см. выше).Ниже приведены инструкции по установке основных требований для сборки
aircrack-ng в различных операционных системах.
Примечание: CMocka, tcpdump, screen, HostAPd и WPA Supplicant не должны быть зависимостями при упаковке Aircrack-ng.
sudo pacman -Sy base-devel libnl openssl ethtool util-linux zlib libpcap sqlite pcre2 hwloc cmocka hostapd wpa_supplicant tcpdump screen iw usbutils pciutils expect
sudo apt-get install build-essential autoconf automake libtool pkg-config libnl-3-dev libnl-genl-3-dev libssl-dev ethtool shtool rfkill zlib1g-dev libpcap-dev libsqlite3-dev libpcre2-dev libhwloc-dev libcmocka-dev hostapd wpasupplicant tcpdump screen iw usbutils expect
sudo yum install libtool pkgconfig sqlite-devel autoconf automake openssl-devel libpcap-devel pcre2-devel rfkill libnl3-devel gcc gcc-c++ ethtool hwloc-devel libcmocka-devel make file expect hostapd wpa_supplicant iw usbutils tcpdump screen zlib-devel expect
sudo yum install epel-release
sudo ./centos_autotools.sh
# Remove older installation of automake/autoconf
sudo yum remove autoconf automake
sudo yum install sqlite-devel openssl-devel libpcap-devel pcre2-devel rfkill libnl3-devel ethtool hwloc-devel libcmocka-devel make file expect hostapd wpa_supplicant iw usbutils tcpdump screen zlib-devel
Примечание: Пакеты autoconf, automake, libtool и pkgconfig в репозиториях слишком старые. Скрипт centos_autotools.sh автоматически устанавливает зависимости для компиляции, а затем устанавливает инструменты.
sudo yum config-manager --set-enabled powertools
sudo yum install epel-release
sudo yum install libtool pkgconfig sqlite-devel autoconf automake openssl-devel libpcap-devel pcre2-devel rfkill libnl3-devel gcc gcc-c++ ethtool hwloc-devel libcmocka-devel make file expect hostapd wpa_supplicant iw usbutils tcpdump screen zlib-devel
sudo zypper install autoconf automake libtool pkg-config libnl3-devel libopenssl-1_1-devel zlib-devel libpcap-devel sqlite3-devel pcre2-devel hwloc-devel libcmocka-devel hostapd wpa_supplicant tcpdump screen iw gcc-c++ gcc ethtool pciutils usbutils expect
sudo urpmi autoconf automake libtool pkgconfig libnl3-devel libopenssl-devel zlib-devel libpcap-devel sqlite3-devel pcre2-devel hwloc-devel libcmocka-devel hostapd wpa_supplicant tcpdump screen iw gcc-c++ gcc make expect
sudo apk add gcc g++ make autoconf automake libtool libnl3-dev openssl-dev ethtool libpcap-dev cmocka-dev hostapd wpa_supplicant tcpdump screen iw pkgconf util-linux sqlite-dev pcre2-dev linux-headers zlib-dev pciutils usbutils expect
Примечание: Для установки iw необходимо включить community-репозиторий.
sudo swupd bundle-add c-basic devpkg-openssl devpkg-libgcrypt devpkg-libnl devpkg-hwloc devpkg-libpcap devpkg-pcre2 devpkg-sqlite-autoconf ethtool wget network-basic software-testing sysadmin-basic wpa_supplicant os-testsuite
Примечание: hostapd должен быть скомпилирован вручную, его нет в репозитории.
pkg install pkgconf shtool libtool gcc9 automake autoconf pcre2 sqlite3 openssl gmake hwloc cmocka
pkg install pkgconf shtool libtool gcc8 automake autoconf pcre2 sqlite3 libgcrypt gmake cmocka
pkg_add pkgconf shtool libtool gcc automake autoconf pcre2 sqlite3 openssl gmake cmocka
pkg_add pkgconf libtool gcc7 automake autoconf pcre2 sqlite3 openssl gmake cmocka
Требуются XCode, инструменты командной строки Xcode и HomeBrew.
brew install autoconf automake libtool openssl shtool pkg-config hwloc pcre2 sqlite3 libpcap cmocka
Для автоматизированной установки необходимых пакетов в Cygwin требуется полный путь к утилите setup.exe. Кроме того, он требует указания расположения вашей установки, пути к кэшированному месту загрузки пакетов и URL-адреса зеркала.
Пример автоматической установки всех зависимостей:
c:\cygwin\setup-x86.exe -qnNdO -R C:/cygwin -s http://cygwin.mirror.constant.com -l C:/cygwin/var/cache/setup -P autoconf -P automake -P bison -P gcc-core -P gcc-g++ -P mingw-runtime -P mingw-binutils -P mingw-gcc-core -P mingw-gcc-g++ -P mingw-pthreads -P mingw-w32api -P libtool -P make -P python -P gettext-devel -P gettext -P intltool -P libiconv -P pkg-config -P git -P wget -P curl -P libpcre2-devel -P libssl-devel -P libsqlite3-devel
pacman -Sy autoconf automake-wrapper libtool msys2-w32api-headers msys2-w32api-runtime gcc pkg-config git python openssl-devel openssl libopenssl msys2-runtime-devel gcc binutils make pcre2-devel libsqlite-devel
apt-get install build-essential autoconf automake libtool pkg-config libssl-dev shtool zlib1g-dev libpcap-dev libsqlite3-dev libpcre2-dev libhwloc-dev libcmocka-dev screen expect libbsd-dev
У нас есть два репозитория на DockerHub: - aircrackng/release: Каждый релиз. - aircrackng/git: Каждый коммит в git-репозитории.
Базовая команда для версии git:
sudo docker run --rm -it aircrackng/git
Доступные платформы/архитектуры ЦП: - linux/386 (базовый образ: debian:unstable-slim) - linux/amd64 (базовый образ: debian:unstable-slim) - linux/arm/v5 (базовый образ: debian:unstable-slim) - linux/arm/v6 (базовый образ: alpine:3) - linux/arm/v7 (базовый образ: debian:unstable-slim) - linux/arm64/v8 (базовый образ: debian:unstable-slim) - linux/mips64le (базовый образ: debian:unstable-slim) - linux/ppc64le (базовый образ: debian:unstable-slim) - linux/riscv64 (базовый образ: debian:unstable-slim) - linux/s390x (базовый образ: debian:unstable-slim)
Для сборки aircrack-ng используется система сборки Autotools. Autotools заменяет более старый метод компиляции.
ПРИМЕЧАНИЕ: Если вы используете версию для разработки, например, выбранную из системы контроля версий, вам необходимо запустить предварительный скрипт configure. Используйте один из следующих скриптов: autoreconf -i или env NOCONFIGURE=1 ./autogen.sh.
Сначала выполните ./configure для проекта с указанием соответствующих опций для вашей среды:
./configure <options>
СОВЕТ: Если вышеуказанная команда не работает, ознакомьтесь с разделом о версиях исходного кода для разработчиков выше.
Затем скомпилируйте проект (с учетом необходимости использования make или gmake):
Компиляция:
make
Компиляция на *BSD или Solaris:
gmake
Наконец, следующие дополнительные цели могут быть полезны в вашей среде:
Запуск всех тестов модуля:
make check
Запуск всех интеграционных тестов (требуются права root):
make integration
Установка:
make install
Удаление:
make uninstall
./configure параметрыПри конфигурации могут использоваться и комбинироваться следующие параметры для настройки комплекта инструментов по вашему выбору:
with-airpcap=DIR: необходим для поддержки устройств airpcap в Windows (только Cygwin или MSYS2).
Замените DIR выше на абсолютный путь к корню распакованного исходного кода с компакт-диска Airpcap или загруженного SDK, доступного в сети.
Необходим в Windows для сборки besside-ng, besside-ng-crawler, easside-ng, tkiptun-ng и wesside_ng при сборке экспериментальных инструментов.
Пакет для разработки (совместимый с версиями 4.1.1 и 4.1.3) можно загрузить по адресу
https://support.riverbed.com/content/support/software/steelcentral-npm/airpcap.html
with-experimental: необходим для компиляции tkiptun-ng, easside-ng, buddy-ng,
buddy-ng-crawler, airventriloquist и wesside-ng.
Также требуется пакет разработки libpcap для компиляции большинства инструментов.
Если он отсутствует, будут собраны не все экспериментальные инструменты.
В Cygwin libpcap отсутствует, и его заменяет SDK Airpcap.
См. параметр --with-airpcap выше.
with-ext-scripts: необходим для сборки airoscript-ng, versuck-ng, airgraph-ng и
airdrop-ng.
Примечание: у каждого скрипта свои зависимости.
with-gcrypt: Использовать криптографическую библиотеку libgcrypt вместо OpenSSL по умолчанию. А также использовать внутреннюю быструю реализацию sha1 (заимствованную из GIT). Зависимость (Debian): libgcrypt20-dev
with-duma: Компилировать с поддержкой DUMA. DUMA — это библиотека для обнаружения переполнения и недозаполнения буферов. Зависимость (Debian): duma
disable-libnl: Настроить проект для компиляции без libnl (1 или 3). Только для Linux.
without-opt: Не включать оптимизации -O3.
enable-shared: Сделать OSdep разделяемой библиотекой.
disable-shared: В сочетании с enable-static, статически скомпилирует Aircrack-ng.
with-avx512: На x86 добавить поддержку инструкций AVX512 в aircrack-ng. Используйте только когда текущий процессор поддерживает AVX512.
with-static-simd=: Скомпилировать одну оптимизацию в бинарный файл aircrack-ng. Полезно при статической компиляции и/или для устройств с ограниченным пространством. Допустимые параметры SIMD: x86-sse2, x86-avx, x86-avx2, x86-avx512, ppc-altivec, ppc-power8, arm-neon, arm-asimd. Должен использоваться с --enable-static --disable-shared. При использовании этих двух параметров по умолчанию в бинарный файл компилируется универсальная оптимизация. --with-static-simd лишь позволяет выбрать другую.
enable-maintainer-mode: Важно включать этот параметр при разработке с Aircrack-ng. Он включает дополнительные предупреждения компилятора и средства безопасности.
Конфигурация и компиляция:
./configure --with-experimental
make
Компиляция с gcrypt:
./configure --with-gcrypt
make
Установка:
make install
Установка (с удалением отладочной информации из бинарников):
make install-strip
Установка со внешними скриптами:
./configure --with-experimental --with-ext-scripts
make
make install
Тестирование (с sqlite, экспериментальными инструментами и pcre2)
./configure --with-experimental
make
make check
Компиляция в OS X с macports (и всеми параметрами):
./configure --with-experimental
gmake
Компиляция в macOS на M1/AARCH64 с Homebrew:
autoreconf -vif
env CPPFLAGS="-Wno-deprecated-declarations" ./configure --with-experimental
make
make check
Компиляция в OS X 10.10 с XCode 7.1 и Homebrew:
env CC=gcc-4.9 CXX=g++-4.9 ./configure
make
make check
ПРИМЕЧАНИЕ: Старые версии XCode поставляются с версией LLVM, которая не поддерживает
определение возможностей процессора; это вызывает сбой ./configure. Чтобы обойти эту проблему со
старым LLVM, необходимо использовать другой компилятор, такой как GCC или более новая версия LLVM
из Homebrew.
Если вы хотите использовать OpenSSL из Homebrew, возможно, потребуется указать путь к его установке. Чтобы узнать, где находится OpenSSL, выполните:
brew --prefix openssl
Используйте вывод выше как DIR для --with-openssl=DIR в строке ./configure:
env CC=gcc-4.9 CXX=g++-4.9 ./configure --with-openssl=DIR
make
make check
Компиляция в FreeBSD с gcc9
env CC=gcc9 CXX=g++9 MAKE=gmake ./configure
gmake
Компиляция в Cygwin с Airpcap (предполагается, что пакет разработки Airpcap распакован в каталоге Aircrack-ng)
cp -vfp Airpcap_Devpack/bin/x86/airpcap.dll src
cp -vfp Airpcap_Devpack/bin/x86/airpcap.dll src/aircrack-osdep
cp -vfp Airpcap_Devpack/bin/x86/airpcap.dll src/aircrack-crypto
cp -vfp Airpcap_Devpack/bin/x86/airpcap.dll src/aircrack-util
dlltool -D Airpcap_Devpack/bin/x86/airpcap.dll -d build/airpcap.dll.def -l Airpcap_Devpack/bin/x86/libairpcap.dll.a
autoreconf -i
./configure --with-experimental --with-airpcap=$(pwd)
make
Компиляция в DragonflyBSD с gcrypt, используя GCC 8
autoreconf -i
env CC=gcc8 CXX=g++8 MAKE=gmake ./configure --with-experimental --with-gcrypt
gmake
export AUTOCONF_VERSION=2.69
export AUTOMAKE_VERSION=1.16
autoreconf -i
env MAKE=gmake CC=cc CXX=c++ ./configure
gmake
export CFLAGS='-O0 -g'
export CXXFLAGS='-O0 -g'
./configure --with-experimental --enable-maintainer-mode --without-opt
make
LD_LIBRARY_PATH=.libs gdb --args ./aircrack-ng [ПАРАМЕТРЫ]
Среда разработки для VS Code предоставляется как есть для быстрой настройки среды разработки. Это также добавляет поддержку GitHub Codespaces.
Первым требованием является работающая среда Docker Engine.
Далее, установка VS Code со следующим расширением(ями):
Remote - Containers от Microsoft.Расширение "Remote - Containers" отказывается работать с OSS Code.
$ git clone --recursive https://github.com/aircrack-ng/aircrack-ng.git
$ cd aircrack-ng
$ code .
ВАЖНО: Вы должны ответить "Да", если спрашивается, следует ли открыть каталог внутри удаленного контейнера. Если вопрос не задается, нажмите
Ctrl+Shift+Pи введитеopen in container. Это должно вызвать правильную команду, нажатие Enter запустит эту команду.
compile_commands.json. Ими можно пока пренебречь, так как этот файл автоматически генерируется после первичной компиляции.Ctrl+R и выбрав Build Full из всплывающего меню.compile_commands.json и спросить, следует ли его использовать; выбор "Да, всегда" завершит первоначальную настройку полностью функциональной IDE.ВАЖНО: Если файл не обнаружен, нажмите
Ctrl+Shift+Pи введитеreload window, чтобы появился выбор для полной перезагрузки среды.
aircrack-ng.Автоматическое определение оптимизации для процессора выполняется во время выполнения. Это поведение является желательным при упаковке Aircrack-ng (для Linux или другого дистрибутива).
Также, в некоторых случаях может потребоваться полностью предоставить свои собственные флаги и неAllow the suite to automatically detect a number of optimizations. To do this, add
the additional flag --without-opt to the ./configure line:
./configure --without-opt
Aircrack-ng доступен в репозиториях большинства дистрибутивов. Однако он не всегда актуален.
Пуск -> Выполнить... -> cmd.exe и затем использовать их.Более подробная информация представлена в файле README.
Документация, учебные пособия и т.д. доступны на сайте https://aircrack-ng.org.
Поддержка доступна в GitHub Discussions и на IRC (в #aircrack-ng на Libera Chat).
Каждый инструмент имеет собственную man-страницу. Для aircrack-ng — man aircrack-ng.