wifiphisher


Описание wifiphisher

Wifiphisher предназначена для фишинговой атаки на WiFi сети в целях получения паролей от ТД и другой персональной информации. Этот инструмент основан на атаке социальной инженерии. Т.е. эта программа не содержит каких-либо инструментов для брутфорсинга. Это простой способ получить учётные данные от сайтов или пароли от WPA/WPA2.

После достижения состояния человек-посередине с использованием атаки Злой Двойник, Wifiphisher перенаправляет все HTTP запросы на подконтрольную атакующему фишинговую страницу.

Если смотреть глазами жертвы, то атака включает три фазы:

  1. Жертва деаутентифицируется от её точки доступа. Wifiphisher постоянно глушит все устройства с точками доступа wifi в пределах досягаемости посредством отправки деаутентифицирующих (deauth) пакетов клиенту от точки доступа и точке доступа от клиента, а также широковещательному адресу.
  2. Жертва подсоединяется к подменной точке доступа. Wifiphisher сканирует пространство и копирует настройки целевых точек доступа. Затем она создаёт подменную ТД, которая настроена особым образом. Она также устанавливает NAT/DHCP сервер и перенаправляет порты. Следовательно, из-за помех клиенты начнут подсоединяться к подменной точке доступа. После этого жертва подвергается атаке человек-посередине.
  3. Для жертвы будет отображена реалистично выглядящая страница конфигурации роутера. wifiphisher поднимает минимальный веб-сервер и отвечает на HTTP & HTTPS запросы. Как только жертва запросит страницу из Интернета, wifiphisher в ответ отправит реалистичную поддельную страницу, которая спросит пароль. Примером задачи, которая требуют подтверждение WPA пароля, является обновления прошивки.

Домашняя страница: https://github.com/sophron/wifiphisher

Автор: sophron

Лицензия: GPLv3

Справка по wifiphisher

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

  -h, --help            показать справку и выйти
  -eI EXTENSIONSINTERFACE, --extensionsinterface EXTENSIONSINTERFACE
                        Вручную указать интерфейс, который поддерживает
                        режим монитора для деаутентификации жертв. Пример: -eI
                        wlan1
  -aI APINTERFACE, --apinterface APINTERFACE
                        Вручную выбрать интерфейс, который поддерживает режим
                        ТД для запуска Точки Доступа. Пример: -aI wlan0
  -iI INTERNETINTERFACE, --internetinterface INTERNETINTERFACE
                        Выбрать интерфейс, который подключён к Интернету
                        Пример: -iI ppp0
  -nE, --noextensions   Не загружать какие-либо расширения.
  -nD, --nodeauth       Пропустить фазу деаутентификации.
  -e ESSID, --essid ESSID
                        Ввести ESSID Мошеннической Точки Доступа. Эта опция
                        приведёт к пропуску стадии выбора ТД. Пример:
                        --essid 'Free WiFi'
  -dE, --deauth-essid   Деаутентифицировать все BSSID имеющие имя ESSID
                        от выбранной ТД или от ESSID указанной с опцией -e
  -p PHISHINGSCENARIO, --phishingscenario PHISHINGSCENARIO
                        Выбор фишингового сценария для запуска. Эта опция приведёт
                        к пропуску стадии выбора сценария. Пример: -p
                        firmware_upgrade
  -pK PRESHAREDKEY, --presharedkey PRESHAREDKEY
                        Добавить WPA/WPA2 защиту на Мошенническую Точку Доступа.
                        Пример: -pK s3cr3tp4ssw0rd
  -hC HANDSHAKE_CAPTURE, --handshake-capture HANDSHAKE_CAPTURE
                        Захват WPA/WPA2 рукопожатия для верефикации
                        пароля. Пример: -hC capture.pcap
  -qS, --quitonsuccess  Остановить скрипт после успешного получения
                        пары учётных данных
  -lC, --lure10-capture
                        Capture the BSSIDs of the APs that are discovered
                        during AP selection phase. This option is part of
                        Lure10 attack.
  -lE LURE10_EXPLOIT, --lure10-exploit LURE10_EXPLOIT
                        Fool the Windows Location Service of nearby Windows
                        users to believe it is within an area that was
                        previously captured with --lure10-capture. Part of the
                        Lure10 attack.
  -iAM MAC_AP_INTERFACE, --mac-ap-interface MAC_AP_INTERFACE
                        Указать MAC адрес для интерфейса ТД
  -iEM MAC_EXTENSIONS_INTERFACE, --mac-extensions-interface MAC_EXTENSIONS_INTERFACE
                        Указать MAC адрес для интерфейса глушения
  -iNM, --no-mac-randomization
                        Не менять MAC адрес
  --logging             Записать активность в файл
  --payload-path PAYLOAD_PATH
                        Путь до полезной нагрузки для сценариев, связанных с доставкой полезной нагрузки
  -cM, --channel-monitor
                        Мониторинг, изменила ли целевая ТД канал.
  -wP, --wps-pbc        Мониторинг, была ли нажата кнопку 
                        WPS-PBC Registrar.
  -wAI WPSPBC_ASSOC_INTERFACE, --wpspbc-assoc-interface WPSPBC_ASSOC_INTERFACE
                        WLAN интерфейс, используемый для ассоциации к
                        WPS Точки Доступа.
  -kB, --known-beacons  Broadcast a number of beacon frames advertising
                        popular WLANs

Руководство по wifiphisher

Страница man отсутствует.

Примеры запуска wifiphisher

Запустите инструмент набрав

wifiphisher

При запуске инструмента без опций, он найдёт правильные интерфейсы и интерактивно спросит пользователя выбрать ESSID целевой сети (из списка всех ESSID в окружающем пространстве) а также фишинговый сценарий, который нужно выполнить.


wifiphisher -aI wlan0 -jI wlan4 -p firmware-upgrade

Использовать wlan0 для поднятия мошеннической точки доступа и wlan4 для DoS атак. Выбрать целевую сеть вручную из списка и выполнить сценарий "Firmware Upgrade".

Полезно для ручного выбора беспроводных адаптеров. Сценарий "Firware Upgrade" — это очень простой способ получить PSK из защищённой паролем сети.

wifiphisher --essid CONFERENCE_WIFI -p plugin_update -pK s3cr3tp4ssw0rd

Автоматически выбрать правильные интерфейсы. Установить в качестве цели Wi-Fi с ESSID "CONFERENCE_WIFI" и выполнить сценарий "Plugin Update". Злой Двойник будет защищён паролем PSK "s3cr3tp4ssw0rd".

Полезно в отношении сетей с раскрытыми PSK (например, на конференциях). Сценарий "Plugin Update" заключается в том, что жертва скачивает вредоносный исполнимый файл (например, зловред, содержащий полезную нагрузку обратного шелла).

wifiphisher --nojamming --essid "FREE WI-FI" -p oauth-login

Не выбирать в качестве цели какую-либо сеть. Просто создать открытую Wi-Fi сеть с ESSID "FREE WI-FI" и выполнить сценарий "OAuth Login".

Полезно в отношении жертв в публичных местах. Сценарий "OAuth Login" обеспечивает простой способ захвата учётных данных из социальных сетей вроде Facebook.

Фишинговые сценарии

Wifiphisher поддерживает созданные сообществом шаблоны для различных фишинговых сценариев, таких как:

  • Страницы конфигурации роутера
  • Сторонние страницы входа
  • Перехватывающие порталы
  • Сообщения браузера

Название встроенных фишинговых сценариев для использования с опцией -p:

  • firmware-upgrade
  • oauth-login
  • plugin_update
  • wifi_connect

Создание пользовательского фишингового сценария

Для специфичных целевых атак могут понадобиться пользовательские сценарии.

Создание фишингового сценария очень просто и состоит из двух шагов:


1) Создайте config.ini

Файл config.ini размещается в корневой директории шаблон и его содержимое может быть разделено на две секции:

i) info: Эта секция содержит характеристику сценария.

  • Name (обязательно): Имя фишингого сценария
  • Description (обязательно): Короткое описание (<50 слов) сценария
  • PayloadPath (опционально): Если сценарий фишинга отправляет жертве вредоносные файлы, пользователи могут здесь вставить абсолютный путь до вредоносных исполнимых файлов

ii) context: Эта секция опционально и содержит заданные пользователем переменные, которые позднее могут быть внедрены в шаблон.

Пример

Это пример файла config.ini:

    > # Это комментарий
    > [info]
    > Name: Страница с предупреждением от Интернет-провайдера
    > Description: Страница предупреждения, спрашивающего у жертвы от имени Интернет-провайдера учётные данные DSL
    >
    > [context]
    > victim_name: John Phisher
    > victim_ISP: Interwebz

2) Создание файлов шаблона

Шаблон содержит статичные части желаемого HTML вывода и может содержать состоять из нескольких статичных HTML файлов, изображений, CSS или JavaScript файлов. Динамичные языки (например, PHP) не поддерживаются.

Заполнители

HTML файлы могут содержать специальных синтаксис (благодаря заполнителям), описывающим, как будет вставлен динамическое содержимое. Динамический контент может происходить из двух источников:

i) Маячковые фреймы (Beacon). Маячковые фреймы содержат всю информацию о целевой сети и могут использоваться для сбора информации. Во время выполнения главный процесс собирает всю интересную информацию и передаёт её в выбранный шаблон.

На время написания, главный процесс передаёт следующие данные:

    target_ap_essid <строка>: ESSID целевой точки доступа
    target_ap_bssid <строка>: BSSID (MAC) адрес целевой точки доступа
    target_ap_channel <строка>: Канал целевой точки доступа
    target_ap_vendor <строка>: Имя производителя целевой точки доступа
    target_ap_logo_path <строка>: Относительный путь до логотипа целевой точки доступа в файловой системе
    APs <список>: Список, содержащий словари точек доступа, захваченных во время фазы выбора ТД
        AP <dict>: Словарь содержит следующую информацию в отношении точки доступа:
            channel <строка>: Канал точки доступа
            essid <строка> ESSID точки доступа
            bssid <строка> BSSID (MAC) адрес точки доступа
            vendor <строка> Имя производителя точки доступа

Помните, что приведённые выше значения могут иметь значение 'None'. Например, все значения target_* будут None, если пользователь не указал целевую точку доступа (использую опцию --essid). Поле 'target_ap_logo_path' будет None если логотип не определён конкретного производителя не существует в репозитории логотипов.

ii) Файл config.ini (описанный выше). Все значения заданные в секции "Context" могут использоваться внутри файлов шаблонов.

В случае конфликтов имён, значения из конфигурационного файла перепишут значения, приходящие из маячковых фреймов.


Запись учётных данных

Для того, чтобы wifiphisher знал, какие учётные данные записывать, значение 'name' HTML атрибутов нужно предварять строкой 'wfphshr'. Во время запросов POST, wifiphisher будет записывать все переменные, которые начинаются с этой строки.

Пример

Это сниппет из шаблона (index.html):

    > <p> Dear {{ victim_name }}, This is a message from {{ ISP }}.
    > A problem was detected regarding your {{ target_ap_vendor }} router. </p>
    > <p> Please write your credentials to re-connect over PPPOE/PPPOA.</p>
    > <input type="text" name="wphshr-username"></input>
    > <input type="text" name="wphshr-password"></input>

В этом примере переменные 'victim_name' и 'ISP' поступают из config.ini, а переменные 'target_ap_vendor' — из маячковых фреймов. И "wphshr-username", и "wphshr-password" будут записаны в журнал.

Установка wifiphisher

Требования

Вы сможете извлечь из Wifiphisher максимум при следующих условиях:

  • Kali Linux. Хотя Wifiphisher работает и на других дистрибутивах, Kali Linux является официально поддерживаемым дистрибутивом, следовательно, все новые функции тестируются в первую очередь на этой платформе.
  • Один беспроводной адаптер, который поддерживает режим AP. Драйверы должны поддерживать netlink.
  • Один беспроводной адаптер, который поддерживает режим монитора и способен инъекциям. Если второй беспроводной адаптер недоступен, вы можете запустить этот инструмент с опцией --nojamming. Она отключит проведение атаки деаутентификация.

Установка в Kali Linux

sudo apt install wifiphisher hostapd dnsmasq python-pyric python-jinja2

Установка в BlackArch

sudo pacman -S wifiphisher dnsmasq hostapd net-tools python2-pyric python2-j2cli --needed

Скриншоты wifiphisher

 

03


Инструкции по wifiphisher


Близкие программы:

  • WiFi-Pumpkin (ранее 3vilTwinAttacker) (94.1%)
  • infernal-twin (90%)
  • Fluxion (89%)
  • AtEar (81.1%)
  • airgeddon (74.2%)
  • Sn1per (RANDOM - 4.8%)
  • Рекомендуется Вам:

    Comments are Closed