Инструменты Kali Linux. Intercepter-NG

Многофункциональная программа позволяет опознавать все устройства в общественной сети, определять IP- и MAC-адреса устройств, перехватывать трафик и подменять скачиваемые файлы. Опытному пользователю ничего не будет стоить прочитать чужую переписку по email и зайти в аккаунт социальной сети с помощью этой утилиты.

Характеристика

Как было отмечено выше Intercepter-NG представляет собой программу для, можно сказать, несанкционированного взаимодействия с другими устройствами. В пару кликов вы сможете определить IP-адрес и Mac-адрес устройства, перехватить трафик и файлы Cookies, прочитать чужую онлайн-переписку или зайти в чужой аккаунт в социальной сети, чтобы выполнить свои «грязные» делишки.

Опытные пользователи заверяют, что приложение рабочее, и при подключении к одной точке доступа Wi-Fi можно перехватывать чужой трафик.

Особенности

Во-первых, нужно владеть минимальными знаниями. В приложении нет инструкций, справочников, режимов обучения. Соответствующую информацию предстоит искать на тематических форумах.

Во-вторых, для функционирования утилиты необходимо получить права супер-пользователя. Помня о рисках, которые такое решение несет, важно взвесить все «за» и «против». А решившись получить рут-права, обязательно скачать и установить утилиту-менеджер прав доступа, с помощью которой можно в режиме реального времени контролировать доступ приложений к правам супер-пользователя.

Посмотрело: 2890

Intro

С большим удовольствием хочу представить новую версию Intercepter-NG 0.9.10, которая, на мой взгляд,
в значительной степени расширяет область применения инструмента. Данный обзор будет представлен не в виде сухого перечисления
нововведений, а скорее как описание новых векторов атак вместе с рядом технических подробностей и элементами hack-story. Приступим…

Network Scan

Как всегда было сделано немало исправлений и мелких улучшений, которые нет смысла перечислять.
Кто часто пользуется инструментом знает, что одним из основных режимов является режим сканирования сети и в частности функция Smart Scan. К уже привычной информации об IP и MAC адресах, производителе сетевой карты и операционной системе, добавился вывод имени компьютера.
За тот же промежуток времени теперь дополнительно можно узнать Netbios имя или название устройства под управлением iOS.
Для резольва последнего используется протокол MDNS, на основе которого работает Apple"овский протокол Bonjour. Все полученные имена теперь сохраняются в кеш-файл и если при последующих сканированиях по какой-либо причине информация об имени хоста не была получена динамически, то она будет взята из кеша. Здесь же можно упомянуть о появлении функции Auto ARP Poison, которая включается в экспертных настройках. В режиме автоматического пойзона достаточно внести только 1 хост в список целей, а Intercepter будет сам сканировать сеть с определенным интервалом и автоматически добавлять новые цели.

Bruteforce Mode

В этом режиме добавилась поддержка TLS для протоколов SMTP и POP3, а так же перебор TELNET авторизации.
Теперь при возникновении таймаута, активный тред перезапускается с того же самого места и процесс перебора продолжается.
Появился Single Mode, который указывает на то, что каждую новую пару LP следует проверять с установкой нового соединения, для некоторых протоколов это позволяет увеличить скорость работы. Лог работы сохраняется в brute.txt.

Traffic Changer

Не раз были запросы реализовать функцию подмены трафика и они не остались без внимания, но не стоит радоваться прежде времени.
На встречный вопрос: «а зачем конкретно вам нужна эта возможность?» некоторые пользователи затруднялись ответить или говорили, что ради шутки менять слова в web-трафике. И чтобы не объяснять каждому шутнику, почему результат не всегда оправдывает ожидания, подменять можно данные только равного размера, не изменяя длину пакетов. Ограничение вовсе не связано с проблемами технической реализации, нет никаких сложностей дробить ethernet фреймы с пересчетом соответствующих tcp полей. Все упирается в прикладные протоколы. Рассмотрим пример с HTTP.

Допустим браузер открывает site.com/file.txt, в котором содержится строка «12345». В ответ на GET запрос сервер вернет HTTP заголовок, в котором будет указана длина передаваемых данных - Content-length: 5. Что будет если мы заменим «12345» на «12356»? Браузер скачает только 5 байт, отбросив добавленную «6», а если мы уменьшим размер данных, заменив «12345» на «1234», браузер получит только 4 байта и будет ждать от сервера еще 1 байт до тех пор, пока соединение не разорвется по таймауту. Именно поэтому сделано данное ограничение на размер. Менять можно как текстовые данные так и бинарные, синтаксис для бинарных паттернов как в Си - "x01x02x03".
Если требуется подмена в HTTP трафике, то в настройках необходимо включить опцию «Disable HTTP gzip encoding».

HSTS Spoofing

Как и было обещано, появился обход HSTS при проведении SSL Strip. Техника обхода относительно простая, но именно в реализации присутствуют определенные сложности, поэтому не стоит ждать каких-то особых результатов. Рассмотрим пример на Яндекс Почта с использованием браузера Chrome. Если зайти на , то в правом верхнем углу будет https ссылка «Войти в почту», с которой SSL Strip легко справляется. Далее откроется форма авторизации, где методом POST передаются данные на . Даже «стрипнув» https авторизация произойдет по SSL, т.к. хост passport.yandex.ru внесен в preloaded список хрома. Для того чтобы все таки перехватить данные нам необходимо заменить имя хоста passport.yandex.ru на какое-то другое, чтобы браузер не обнаружил, что этот ресурс следует посещать строго по безопасному соединению. Для примера можно заменить passport.yandex.ru на paszport.yandex.ru, в этом случае данные будут отправлены в открытом виде на измененное имя домена. Но т.к. такого домена - paszport.yandex.ru не существует, то дополнительно требуется сделать DNS Spoofing, т.е. клиент при резольве paszport.yandex.ru должен получить в ответ оригинальный ip адрес от passport.yandex.ru. Эта процедура автоматизирована и не требует дополнительного вмешательства пользователя при проведении атаки. Единственное, что требуется так это предварительно составить список замен в mischsts.txt. По умолчанию там присутствует несколько записей для yandex, gmail, facebook, yahoo. Важно понимать, что данная техника обхода не позволит перехватить сессию или авторизацию если пользователь введет в браузере facebook.com, т.к. браузер сразу откроет безопасную версию сайта. В этом случае атака возможна только если ссылка на facebook.com будет взята с другого ресурса, например при вводе facebook на . Из основных проблем в реализации атаки можно отметить непредсказуемую логику работы сайтов со своими субдоменами и особенности web-кода, которые могут свести на нет любые попытки
обхода HSTS. Именно поэтому не стоит добавлять в список любые сайты, даже домены, присутствующие в Intercepter-NG по умолчанию имеют свои особенности и работают корректно далеко не всегда. Городить костыли под каждый ресурс совсем не хочется, возможно в будущем будут внесены некоторые универсальные улучшения, а пока, как говорится, as is.
Еще один нюанс, в текущей реализации для проведения DNS Spoofing"а необходимо чтобы DNS сервер находился не в локальной сети, чтобы была возможность видеть dns запросы до шлюза и отвечать на них нужным образом.

Важно отметить, что в новой версии заметно улучшена работа самого SSL Strip.

Forced Download and JS Inject

Оба нововведения относятся к режиму HTTP Injection. По-русски Forced Download можно перевести как «принудительная закачка», ведь именно это и происходит на стороне цели во время web-серфинга. При заходе на сайт предлагается скачать заданный атакующим файл, в зависимости от настроек браузера он может самостоятельно скачаться, а пользователь уже выберет, запустить его или нет.
Как вы понимаете, в форсированную загрузку можно добавить и.exe файл с произвольным содержимым, причем источником этого файла будет сайт, который в данный момент посещает пользователь. Зная, что цель собирается открыть adobe.com, вы можете выдать flashplayer.exe, и в качестве источника этого файла будет указан adobe.com или один из его субдоменов.
После разовой выдачи форсирование отключается, для повторного инжекта нужно снова нажать на соответствующую галку.

JS Inject в явном виде не присутствует среди элементов управления, т.к. по сути это самый обычный http inject, но с одним отличием. При подмене одного файла другим, например картинок.jpg на заданную, происходит именно замена одного содержимого другим. Замена.js скрипта с большой вероятностью может нарушить работу ресурса, поэтому в новой версии js inject не заменяет один скрипт другим, а дописывает его в существующий, добавляя возможность внедрить дополнительный код, не затрагивая оригинальный.

SSL MiTM

Плавно подходим к наиболее интересным новинкам. В новой версии был полностью переписан код для SSL MiTM. Теперь он работает быстро и стабильно. Также изменился алгоритм генерации сертификатов, в них стали добавляться дополнительные dns записи и все сертификаты подписываются единым ключом (miscserver). Это означает, что добавив данный самоподписанный сертификат в список доверенных на компьютере цели, можно будет прослушивать SSL трафик до любого ресурса (где нет SSL Pinning). Функция Cookie Killer теперь работает и для SSL соединений. Появились черные (miscssl_bl.txt) и белые списки (miscssl_wl.txt). В них можно исключить или напротив жестко указать IP адреса или домены, к которым следует или не следует применять SSL MiTM. При указании extra ssl port больше нет необходимости указывать тип readwrite, достаточно указать номер порта. Весь трафик пишется в ssl_log.txt.

Group Policy Hijacking

Очередная killer-feature в Intercepter-NG. Несмотря на то, что техника открыта вовсе не мной, это первая публичная и полностью функциональная реализация данной атаки. Подробное описание имеется и .

В очередной раз SMB подложил свинью Microsoft, ведь благодаря данной уязвимости примерно за полтора часа можно получить доступ к любому компьютеру в домене (кроме домен-контроллера). В чем же суть.

Каждые 90 + случайное количество от 0 до 30 минут мембер домена запрашивает групповые политики с DC. Происходит это по SMB, путем открытия сетевого адреса DCSYSVOLdomain.namePoliciesUUIDgpt.ini.

Содержимое данного файла следующее:


Version=12345

Данное число является относительной версией текущих групповых политик. Если с последнего обновления версия не изменилась, то процесс получения групповых политик прекращается, но если версия другая - значит требуется их обновить. На этом этапе клиент запрашивает у домена активные CSE (client-side extensions), к которым относятся различные logon скрипты, задачи для планировщика и так далее. Естественно, атакующий, встав посередине, может подменить одну из задач, которая генерируется контроллером в виде файла. При таком раскладе эксплуатация была бы совсем простой, но все эти CSE по умолчанию отключены и единственное, что можно сделать - модифицировать реестр, ведь при обновлении групповых политик клиент запрашивает еще один файл - GptTmpl.inf, через который можно добавить или удалить запись. Авторы обеих статей для демонстрации выполнение кода решили воспользоваться хорошо известным методом - AppInit_Dll. Прописали в нужный ключ реестра загрузку своей dll с сетевого пути, после чего вновь созданный процесс в системе выполнял произвольный код. Но этот метод годится только в качестве proof of concept, ведь AppInit_Dll по умолчанию отключен уже много лет. В связи с этим была поставлена задача найти иной способ удаленного выполнения кода, причем без необходимости ждать перезагрузки, как в случае с добавлением автозапуска в ключ Run.

Безрезультатно было проделано много попыток тем или иным образом достичь желаемого, пока один хороший человек (thx man) не подсказал весьма любопытный ключ реестра о котором я раньше ничего не знал.

В ключ можно прописать дебагер для любого.exe файла. Например указать, что calc.exe необходимо открывать через c:pathdebuger.exe и как только будет запущен калькулятор - первым делом откроется дебагер, в командной строке которого будет путь до calc"а. Это уже казалось почти готовым решением, ведь удалось выполнить код без перезагрузки, хоть и при определенных условиях. На тот момент меня устроило ограничение на неизбежность участия пользователя в процессе получения доступа, т.е. вместо калькулятора можно было выполнить код через вызов IE или Chrome или любого другого приложения, но появилась новая проблема. Если атакуемый пользователь не имел административных прав, то даже получив шелл отсутствовала возможность удалить ранее добавленный в реестр дебагер, а это значит, что после прекращения атаки или при перезагрузке - эксплуатируемое приложение переставало работать, ведь заспуфленный сетевой адрес с debuger.exe больше не существовал.
Требовалось найти способ получить не просто шелл доступ, а обязательно с правами администратора. Опуская все последующие трудности опишу итог. После получения групповых политик система их должна применить, для этого вызывается svchost и создает новый процесс taskhost.exe с правами SYSTEM. Встав в качестве дебагера для taskhost.exe было убито сразу два зайца - мы не просто получали шелл с правами SYSTEM, но и получали его сразу же, без любого ручного вмешательства со стороны пользователя. Атака полностью автоматизирована, можно выбрать разом группу целей и в течение полутора-двух часов получить целый набор активных шелл-сессий с максимальными правами. Для этого даже не обязательно быть самому членом домена. Единственное, что необходимо - включить Network access: Let Everyone permissions apply to anonymous users. При тестировании, чтобы не ждать полтора часа, достаточно с консоли запустить gpupdate. Проверено на патченых Windows 78.1 в доменах с серверами 2008R22012R2.

Какие меры защиты? Microsoft выпустили патч для MS15-011, вводя так называемый UNC Hardened Access, который требует ручной настройки. Интересная фраза присутствует в бюллетене:

«Users whose accounts are configured to have fewer user rights on the system could be less affected than users who operate with administrative user rights.»

Как уже стало ясно, угроза одинаково высока для любого пользователя.

Несмотря на весь потенциал GP Hijacking, как мне кажется, особого внимания заслуживает другое новшество данного релиза…

Десерт

То, о чем пойдет речь в завершении нельзя назвать новой функцией. Скорее это вектор атаки, который открывается при совместном использовании целого ряда уже существующих решений в Intercepter-NG.

Упор в данном случае делается на беспроводные сети и мобильные устройства, в частности под управлением iOS - Iphone"ы и Ipad"ы. Все знают, что элементарный arp poison этих устройств практически ничего не дает. Перехват cookie от открытых сайтов в браузере пожалуй единственное на что можно расcчитывать, т.к. в большинстве случаев пользователь работает через фирменные приложения от различных сервисов, где общение с сервером происходит по SSL. Даже если попытаться провести SSL MiTM, то ничего не выйдет, приложения просто перестанут работать с недоверенным сертификатом. Поэтому считается, что от сетевого перехвата телефоны и планшеты достаточно неплохо защищены по умолчанию.

Но представьте следующую ситуацию, среднестатистический пользователь сидит в приложении Instagram и просматривает ленту.
Вдруг приложение перестает работать, сетуя на отсутствие подключения и пользователь открывает в браузере instagram.com, где всплывает alert с текстом «Для продолжения работы на instagram.com установите новый сертификат безопасности» и после закрытия сообщения на экране появляется запрос на установку нового сертификата. Дальнейшее развитие событий конечно зависит от пользователя, но вероятность того, что он все таки установит предлагаемый сертификат достаточно высока, ведь ситуация вполне правдоподобная: перестало работать приложение, зашел на сайт, увидел предупреждение о необходимом обновлении, обновился - все заработало, хотя на самом деле атакующий подставил свой сертификат и теперь читает весь SSL трафик. Внедрение Forced Download, JS Inject и стабильно работающий SSL MiTM позволяют в два счета реализовать подобный сценарий:

1. Делаем.js inject с внедрением alert("Please install new certificate for %domain%.");
В шаблон %domain% будет подставлено имя сайта, на котором призошел инжект.

2. Форсируем закачку miscserver.crt - корневого сертификата в Intercepter-NG.

3. Включаем SSL MiTM (а так же ssl strip для работы инжектов).

4. После запуска атаки на устройстве цели перестанут работать SSL подключения, а в браузере будет выдан alert с сертификатом.

Возникает закономерный вопрос, что делать с SSL трафиком, кроме пассивного перехвата уже установленных сессий. На помощь приходит Cookie Killer, который исправно работает, например, на приложении Facebook.
Есть на iOS и свой святой грааль - iCloud, но обнуление cookie не поможет сбросить его сессию. Именно для iCloud, а так же Instagram и VK, была добавлена функция iOS Killer, которая сбрасывает сессии указанных приложений и позволяет перехватить повторную авторизацию. Такой фокус нельзя проделать с AppStore, т.к. там, по всей видимости, используется SSL Pinning. Данный вектор опробован на IOS 56 и 8.4.

В планах было добавить возможность самостоятельно создавать обработчики на LUA или через DLL плагин, но судя по реакции пользователей реального интереса ни у кого нет. Новая версия будет скорее всего уже в следующем году, возможно осенью выйдет функциональное обновление Intercepter-NG под Android. Вопросы, отзывы, feature-реквесты всегда приветствуются. На этом все.

Демонстрация новых функций представлена на видео.

Контакты проекта.

Что такое Intercepter-NG

Рассмотрим суть функционирования ARP на простом примере. Компьютер А (IP-адрес 10.0.0.1) и компьютер Б (IP-адрес 10.22.22.2) соединены сетью Ethernet. Компьютер А желает переслать пакет данных на компьютер Б, IP-адрес компьютера Б ему известен. Однако сеть Ethernet, которой они соединены, не работает с IP-адресами. Поэтому компьютеру А для осуществления передачи через Ethernet требуется узнать адрес компьютера Б в сети Ethernet (MAC-адрес в терминах Ethernet). Для этой задачи и используется протокол ARP. По этому протоколу компьютер А отправляет широковещательный запрос, адресованный всем компьютерам в одном с ним широковещательном домене. Суть запроса: «компьютер с IP-адресом 10.22.22.2, сообщите свой MAC-адрес компьютеру с МАС-адресом (напр. a0:ea:d1:11:f1:01)». Сеть Ethernet доставляет этот запрос всем устройствам в том же сегменте Ethernet, в том числе и компьютеру Б. Компьютер Б отвечает компьютеру А на запрос и сообщает свой MAC-адрес (напр. 00:ea:d1:11:f1:11) Теперь, получив MAC-адрес компьютера Б, компьютер А может передавать ему любые данные через сеть Ethernet.

Чтобы не было необходимости перед каждой отправкой данных задействовать протокол ARP, полученные MAC-адреса и соответствующие им IP адреса записываются в таблице на некоторое время. Если нужно отправить данные на тот же IP, то нет необходимости каждый раз опрашивать устройства в поисках нужного MAC.

Как мы только что увидели, ARP включает в себя запрос и ответ. MAC-адрес из ответа записывается в таблицу MAC/IP. При получении ответа он никак не проверяется на подлинность. Более того, даже не проверяется, был ли сделан запрос. Т.е. на целевые устройства можно прислать сразу ARP-ответ (даже без запроса), с подменёнными данными, и эти данные попадут в таблицу MAC/IP и они будут использоваться для передачи данных. Это и есть суть атаки ARP-spoofing , которую иногда называют ARP травлением, травлением ARP кэша.

Описание атаки ARP-spoofing

Два компьютера(узла) M и N в локальной сети Ethernet обмениваются сообщениями. Злоумышленник X, находящийся в этой же сети, хочет перехватывать сообщения между этими узлами. До применения атаки ARP-spoofing на сетевом интерфейсе узла M ARP-таблица содержит IP и MAC адрес узла N. Также на сетевом интерфейсе узла N ARP-таблица содержит IP и MAC узла M.

Во время атаки ARP-spoofing узел X (злоумышленник) отсылает два ARP ответа (без запроса) - узлу M и узлу N. ARP-ответ узлу M содержит IP-адрес N и MAC-адрес X. ARP-ответ узлу N содержит IP адрес M и MAC-адрес X.

Так как компьютеры M и N поддерживают самопроизвольный ARP, то, после получения ARP-ответа, они изменяют свои ARP таблицы, и теперь ARP-таблица M содержит MAC адрес X, привязанный к IP-адресу N, а ARP-таблица N содержит MAC адрес X, привязанный к IP-адресу M.

Тем самым атака ARP-spoofing выполнена, и теперь все пакеты(кадры) между M и N проходят через X. К примеру, если M хочет передать пакет компьютеру N, то M смотрит в свою ARP-таблицу, находит запись с IP-адресом узла N, выбирает оттуда MAC-адрес (а там уже MAC-адрес узла X) и передает пакет. Пакет поступает на интерфейс X, анализируется им, после чего перенаправляется узлу N.

Описание Intercepter-NG

Intercepter-NG - это многофункциональный набор сетевого инструментария для IT специалистов различного типа. Главной целью является восстановление интересных данных из сетевого потока и выполнение различного рода атак человек-посередине (MiTM). Кроме этого программа позволяет выявлять ARP спуфинг (может применяться для обнаружения атак человек-посередине), выявлять и эксплуатировать некоторые виды уязвимостей, брут-форсить учётные данные входа сетевых служб. Программа может работать как с живым потоком трафика, так и анализировать файлы с захваченным трафиком, для обнаружения файлов и учётных данных.

Программа предлагает следующие функции:

  • Сниффинг паролей/хешей следующих типов: ICQ, IRC, AIM, FTP, IMAP, POP3, SMTP, LDAP, BNC, SOCKS, HTTP, WWW, NNTP, CVS, TELNET, MRA, DC++, VNC, MYSQL, ORACLE, NTLM, KRB5, RADIUS
  • Сниффинг сообщений чатов: ICQ, AIM, JABBER, YAHOO, MSN, IRC, MRA
  • Реконструкция файлов из: HTTP, FTP, IMAP, POP3, SMTP, SMB
  • Различные типы сканирования, такие как неразборчивый (Promiscuous) режим, сканирование ARP, DHCP, шлюза, портов и Smart
  • Захват пакетов и последующий (офлайн) анализ/RAW (сырой) режим
  • Удалённый захват трафика через RPCAP демона и PCAP Over IP
  • NAT, SOCKS, DHCP
  • ARP, DNS через ICMP, DHCP, SSL, SSLSTRIP, WPAD, SMB ретранслятор, SSH MiTM
  • SMB Hijack (перехват), LDAP ретранслятор, MySQL LOAD DATA инъекция
  • ARP Watch, ARP Cage, HTTP инъекция, эксплойт Heartbleed, Kerberos Downgrade, Cookie Killer
  • DNS, NBNS, LLMNR спуфинг
  • Брутфорс различных сетевых служб

Основная версия работает на Windows, имеется консольная версия для Linux и версия для Android.

Лицензия: «как есть»

Режимы Intercepter-NG

Intercepter-NG имеет семь основных режимов, которые соответствуют количеству вкладок программы и количеству главных кнопок:

Это режимы:

  • Мессенджеров
  • Resurrection
  • Паролей
  • Сканирования
  • RAW (сырой)

На первое место поставлен Режим Мессенджеров (эмблема ICQ). Это произошло по историческим причинам — первоначально Intercepter-NG создавался как программа для перехвата сообщений ICQ и других мессенджеров.

Режим Resurrection (эмблемой на кнопке является Феникс) означает восстановление файлов из сетевого потока. Это могут быть файлы изображений, просмотренных на веб-сайтах, а также файлы переданных архивов, документов и любых других.

При переключении на Режим Паролей (третья кнопка - связка ключей) вы увидите учётные данные, захваченные из сетевого потока. Отображаются адреса сайтов, введённые логины и пароли.

При запуске программы открывается Режим Сканирования (средняя кнопка - радар). Это первоначальный режим для начала атак: в этой вкладке происходит сканирование, выбор целей, установка других параметров сети.

Вкладка MiTM (связка патч-кордов) содержит поля для ввода настроек цели, многие из которых заполняются автоматически во время сканирования на вкладке Сканирование. Также имеются кнопки для запуска разнообразных MiTM атак.

Вкладка DHCP содержит некоторые настройки сети и DHCP сервера.

Режим RAW (сырой) выводит необработанную информацию о передаваемых в сетевом потоке данных. Информация представлена в виде, похожем на .

Подсказки по использованию Intercepter-NG и решению проблем:

  • Для работы Intercepter-NG требуется WinPcap, но её не нужно устанавливать отдельно, поскольку Intercepter поставляется с портативной версией WinPcap.
  • Если вы не видите свой адапетр в списке адптеров, это означает, что WinPcap не поддерживает вашу карту.
  • Если с WiFi картой ничего не работает, даже ARP травление, то используйте иконку NIC, которая находится с левой стороны от списка адаптеров, чтобы переключиться на режим WiFi. Также убедитесь, что Stealth IP имеет доступ в Интернет.
  • В некоторых редких ситуациях служба BFE (Base Filtering Engine) может блокировать локальные порты Intercepter. Это проявляется так: ARP работает, но другие функции MiTM не работают (на Windows 7 и выше). Антивирусы, такие как Avast, также могут их блокировать, даже если сетевая защита отключена в панели управления. Ещё одной причиной такого поведения может быть одновременная работа WiFi соединения и службы Internet Connection Sharing.
  • Intercepter поддерживает 802.11 инкапсуляцию, поэтому вы можете использовать pcap дампы из программ и . Также поддерживаются инкапсуляции PPPoE, GRE(PP2P) и дополнительные заголовки 802.11. Это не означает, что Intercepter может анализировать зашифрованные данные, это означает, что Intercepter способен очищать ethernet\ip заголовки из пакетов этого вида и анализировать их.
  • Из-за ограничений протоколов, во вкладке сообщений чата могут не показываться источник и пункт назначения UIN\MAIL\….
  • Для копирования данных из таблицы паролей, кликните на строку и нажмите ctrl+c.
  • Чтобы спрятать окно программы используйте сочетание клавиш Ctrl+Alt+S. Нажмите его снова, чтобы окно вновь появилось.
  • Intercepter можно запускать даже на win9x (98 и 95!), но вам нужно установить WinPcap 3.1 или WinPcap 4.0beta2. Новые сборки WinPcap не поддерживают win9x.
  • Консольный режим для офлайн анализа:
./intercepter -t dump.cap
  • Для активации автоматического сниффинга вам нужно открыть settings.cfg и отредактировать "autorun ". Значение по умолчанию — 0 , измените на номер интерфейса, который вы собираетесь сниффить.
  • Intercepter конвертирует дампы pcap с сырыми инкапсулированными IP данными в Ethernet инкапсуляцию (добавляя информацию заголовков ethernet).
  • Intercepter может читать новый формат — pcapng. Поскольку все файлы захватов pcapng из Wireshark используют только тип “Enhanced Packet Block”, то Intercepter поддерживает только этот тип пакетных блоков. Дополнительно он показывает комментарии к пакетам.
  • В сыром (RAW) режиме вы можете устанавливать ваши собственные правила с использованием фильтров pcap для фильтрации трафика. Подробности ищите в синтаксисе pcap фильтрации. Пример:
port 80

означает получать только пакеты с tcp порта 80 из ядра.

Not port 80

означает исключить пакеты с порта 80

Вы можете комбинировать правила:

Port 80 and not port 25

  • Не следует работать с огромными дампами в сыром режиме, поскольку Intercepter загружает каждый пакет в память и не использует жёсткий диск в качестве раздела (файла) подкачки.

Подсказки по опциям Intercepter-NG

Опции сниффера:

  • Если вы собираетесь проводить офлайн анализ pcap дампа, то для ускорения процесса снимите галочку с “Resolve Hosts ”.
  • Если поставить галочку на опции "Lock on Tray ", то при восстановлении окна из трэя у вас будет спрашиваться пароль. Паролем по умолчанию является "4553 ". Вы можете поменять его в файле settings.cfg . Пароль кодируется в base64.
  • Опция "Save Session " означает, что Intercepter сохранит все полученные пакеты в файл pcap. Этот файл можно использовать для офлайн анализа данных. Это своего рода функция экспорта результатов.
  • Если установить Promiscuous , то Intercepter открывает сетевой адаптер в неразборчивом (promiscuous) режиме. Это означает, что он будет читать все пакеты, даже те, которые не предназначены для данного сетевого интерфейса. Если галочка снята, то он будет считывать только пакеты, которые отправлены указанному интерфейсу. Некоторые Wi-Fi карты не поддерживают этот режим.
  • Unique Data ” - показывать только уникальные логины и пароли. Т.е. показывать захваченные логины и пароли только один раз — если пользователь ввёл тот же логин и пароль снова, он не будет отображаться.
  • Autosave — вся текстовая информация будет сохраняться каждые 10 секунд.
  • По умолчанию стоит галочка на “Grid View ”. Она означает, что пароли будут выглядеть как сетка с данными. Для просмотра полной детальной информации снимите галочку с “Grid View ”.
  • eXtreme. В типичном рабочем процессе сниффер анализирует предопределённые порты ассоциированные со специфичными протаколами. Если мы говорим http, мы подразумеваем 80 порт (или 8080 или какие там предопределены в списке портов ассоциированных с http протоколом). Т.е. будут проанализированы только эти порты. Если некоторые приложения используют другой порт, например, 1234, тогда сниффер не будет анализировать пакеты, которые проходят через него. В режиме eXtreme Intercepter будет анализировать все TCP пакеты без проверки портов. Т.е. даже если какое-то приложение использует неопределённый порт, сниффер всё равно будет проверять эти пакеты. Хотя это замедляет производительность (необходимо проверить намного больше портов чем обычно) и может выявить неправильные данные или пропустить правильный протокол (6например, FTP и POP3 использует тот же тип авторизации), он даёт возможность найти и перехватить интересные данные на неопределённых портах. Используйте этот режим на свой собственный риск, не удивляйтесь, если что-то пойдёт не так когда eXtreme режим включен.
  • "Capture Only " означает, что Intercepter будет только сохранять пакеты в файл дампа без анализа в реальном времени. Это полезно для увеличения производительности, когда вы захватываете много сетевых данных.
  • Опция Resurrection означает включение режима Resurrection, который реконструирует файлы из данных, переданных в сетевом потоке.
  • IM Ports
  • HTTP . Ассоциированные с HTTP порты, подробности смотрите в описании опции eXtreme .
  • SOCKS
  • IRC\BNC

Опции атак человек-посередине (MiTM) в Intercepter-NG

  • Во всех MiTM атаках Intercepter использует спуфинг (подмену) адресов ip\mac (опция Spoof IP\MAC ). Если вы используете Wi-Fi интерфейс, то вы должны снять галочку с этой опции, поскольку 99% wifi драйверов не позволяют отправлять пакеты с подменённым mac. Хотя вы раскрываете свой реальный адрес, вы хотя бы способны выполнять любые атаки MiTM через wifi интерфейс. Это лучше, чем ничего. Вместо отключения спуфинга в настройках, используйте WIFI режим. Вы можете изменить показываемый mac в Экспертном Режиме.
  • iOS Killer была добавлена для iCloud, а так же Instagram и VK. Эта функция (iOS Killer) сбрасывает сессии указанных приложений и позволяет перехватить повторную авторизацию.
  • Kerberos Downgrade
  • HSTS Spoofing . Обход HSTS при проведении SSL Strip. Техника обхода относительно простая, но именно в реализации присутствуют определенные сложности, поэтому не стоит ждать каких-то особых результатов. Рассмотрим пример на Яндекс Почта с использованием браузера Chrome. Если зайти на ya.ru, то в правом верхнем углу будет https ссылка «Войти в почту», с которой SSL Strip легко справляется. Далее откроется форма авторизации, где методом POST передаются данные на passport.yandex.ru. Даже «стрипнув» https авторизация произойдет по SSL, т.к. хост passport.yandex.ru внесен в preloaded список хрома. Для того чтобы все таки перехватить данные нам необходимо заменить имя хоста passport.yandex.ru на какое-то другое, чтобы браузер не обнаружил, что этот ресурс следует посещать строго по безопасному соединению. Для примера можно заменить passport.yandex.ru на paszport.yandex.ru, в этом случае данные будут отправлены в открытом виде на измененное имя домена. Но т.к. такого домена — paszport.yandex.ru не существует, то дополнительно требуется сделать DNS Spoofing, т.е. клиент при преобразовании paszport.yandex.ru должен получить в ответ оригинальный ip адрес от passport.yandex.ru.

Эта процедура автоматизирована и не требует дополнительного вмешательства пользователя при проведении атаки. Единственное, что требуется так это предварительно составить список замен в misc\hsts.txt . По умолчанию там присутствует несколько записей для yandex, gmail, facebook, yahoo. Важно понимать, что данная техника обхода не позволит перехватить сессию или авторизацию если пользователь введет в браузере facebook.com, т.к. браузер сразу откроет безопасную версию сайта. В этом случае атака возможна только если ссылка на facebook.com будет взята с другого ресурса, например при вводе facebook на google.com. Из основных проблем в реализации атаки можно отметить непредсказуемую логику работы сайтов со своими субдоменами и особенности web-кода, которые могут свести на нет любые попытки обхода HSTS. Именно поэтому не стоит добавлять в список любые сайты, даже домены, присутствующие в Intercepter-NG по умолчанию имеют свои особенности и работают корректно далеко не всегда. Городить костыли под каждый ресурс совсем не хочется, возможно в будущем будут внесены некоторые универсальные улучшения, а пока, как говорится, as is. Еще один нюанс, в текущей реализации для проведения DNS Spoofing"а необходимо чтобы DNS сервер находился не в локальной сети, чтобы была возможность видеть dns запросы до шлюза и отвечать на них нужным образом.

  • IP Forward . Включает режим чистого IP форварда. В этом режиме недоступны атаки MiTM, но он позволяет начать arp травление в ситуациях, когда вы не можете использовать Stealth IP. Это обычно необходимо, когда шлюз имеет белый список легитимных компьютеров в сети, поэтому NAT не может правильно работать.
  • Cookie Killer — обнуляет кукиз, тем самым принуждая пользователя повторно авторизоваться — ввести логин и пароль, чтобы атакующий мог их перехватить. Функция Cookie Killer работает и для SSL соединений. Имеются черные (misc\ssl_bl.txt ) и белые списки (misc\ssl_wl.txt ). В них можно исключить или напротив жестко указать IP адреса или домены, к которым следует или не следует применять SSL MiTM. При указании extra ssl port нет необходимости указывать тип read\write, достаточно указать номер порта. Весь трафик пишется в ssl_log.txt .
  • Remote Capture (RPCAP). Libpcap даёт возможность пересылать сетевые данные с одного хоста на другой через его собственный протокол, названный RPCAP. Т.е. вы можете поднять демон rpcap на вашем шлюзе и видеть весь трафик, который через него проходит. После запуска демона, вы можете начать захватывать удалённый трафик используя Intercepter. Введите имя хоста или IP демона в специальное поле и затем выберите адаптер из списка. Затем вам нужно установить фильтр “not host IP”, заменив «IP» на действительный IP адрес, присвоенный вашей ethernet карте (это нужно для игнорирования rpcap трафика между вами и демоном).
  • PCAP Over IP

Данная функция связана с удаленным захватом трафика и является отличной заменой старому и проблемному сервису rpcapd. Название говорит само за себя. Практически на любом юниксе всегда присутствует связка tcpdump и netcat, при помощи которых можно логировать трафик на удаленный компьютер-приемщик. В данном случае Intercepter может открыть порт в ожидании потока данных в формате libpcap и в реальном времени вести их анализ.

Нет никакой принципиальной разницы в источнике трафика, поэтому кроме tcpdump"а можно точно так же использовать утилиту cat для чтения уже существующего.pcap лога.

Вот несколько примеров использования, по-умолчанию Intercepter слушает 2002 порт:

Tcpdump -i face -w - | nc IP 2002

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

Tcpdump -i face -w - not port 2002 | nc IP 2002 cat log.pcap | nc IP 2002 dumpcap -i face -P -w - | nc IP 2002

это аналог tcpdump"а входящий в состав . Флаг -P указывает на то, что следует сохранять пакеты в стандартном формате libpcap, а не в новом pcapng.

Альтернативный способ перенаправления пакетов без помощи netcat:

Tcpdump > /dev/tcp/ip/port

WPAD означает «WebProxy Autodiscovering Protocol» который соответствует функции «Automatically detect settings» в современных браузерах. Эта функция позволяет браузеру получать текущую конфигурацию прокси без вмешательства пользователя. Это даже сегодня является угрозой и атакующий может с лёгкостью настроить вредоносный сервер для перехвата веб-трафика. Ситуация усугубляется тем фактом, что Internet Explorer (и Chrome тоже) поддерживает эту функцию по умолчанию.

Обычно WPAD не настроен в сети, поэтому обычное поведение браузеров заключается в отправке запросов NetBios для имени «WPAD» (пропуская методы DHCP и DNS). Если ответ не получен, браузер просто использует прямое соединение. Но если ответ получен, браузер пытается загрузить файл конфигурации с http: /ip_of_wpad_host/wpad.dat.

Intercepter-NG ответит на каждый запрос и попросит клиентов использовать его собственную конфигурацию, чтобы он мог сниффить трафик через прокси-сервер. Вы можете настроить собственную конфигурацию любого другого прокси-сервера в сети или просто выбрать встроенный прокси-сервер. Встроенный прокси-сервер позволяет использовать функцию внедрения HTTP.

Опции экспертного режима Intercepter-NG

  • SSL Strip Timeout (seconds) — Тайм-аут в секундах SSL Strip
  • ARP Poison every (seconds) — Делать ARP травление каждые … секунд
  • ARP Scan Timeout (seconds) — Тайм-аут ARP сканирование
  • DNS Cache TTL (seconds) — Время жизни в DNS кеше
  • Spoofing MAC — Адрес MAC, на который будет подменяться адрес атакующего
  • MySQL LOAD DATA Injection
  • LDAP Relay DN: DC=xxx,DC=xxx
  • Stop injiction on NBNS Request
  • Drop SSH connection after auth — Сбросить SSH подключение после авторизации
  • SMB Hijack -> SMB Relay
  • Auto ARP Poison — В режиме автоматического пойзона достаточно внести только 1 хост в список целей, а Intercepter будет сам сканировать сеть с определенным интервалом и автоматически добавлять новые цели.
  • Reset ARP Table — Сбросить ARP таблицу
  • Custom payload for SMB Hijack (64kb max)
  • Custom payload for GP Hijack
  • Run Shell — Запустить шелл
  • Run HTTP NTLM Grabber

Виды сканирования

Сканирование является первой стадией, т. е. многие MiTM атаки начинаются с него. Чтобы показать меню сканирований, перейдите во вкладку MiTM Mode и нажмите правую кнопку мыши на таблице.

  • Smart Scanning : оно комбинирует ARP сканирование и обнаружение шлюза. К привычной информации об IP и MAC адресах, производителе сетевой карты и операционной системе, делается вывод имени компьютера. За тот же промежуток времени теперь дополнительно можно узнать Netbios имя или название устройства под управлением iOS. Для резольва последнего используется протокол MDNS, на основе которого работает Apple"овский протокол Bonjour. Все полученные имена теперь сохраняются в кеш-файл и если при последующих сканированиях по какой-либо причине информация об имени хоста не была получена динамически, то она будет взята из кеша. В дополнении это сканирование показывает Stealth IP и автоматически устанавливает в соответствующих полях во вкладке MiTM IP шлюза (если он был обнаружен) и Stealth IP. Также выполняется обнаружение ОС на основе TTL значений.
  • ARP Scanning (ARP сканирование): просто проверяет подсеть C-класса назначенную на выбранный ethernet адаптер. Например, если ваш IP это 192.168.0.10, то будет проверено 255 IP адресов в диапазоне 192.168.0.1-255. Начиная с версии 0.9.5, программа проверяет сетевую маску для правильного сканирования всех подсетей.
  • DHCP Discovering (обнаружение DHCP): отправляет широковещательные сообщения DHCP-Discovery и ожидает ответов от DHCP серверов. Если какие-либо сервера отвечают, добавляет их в список.
  • Promisc Detection (обнаружение сетевых карт в неразборчивом режиме): отправляет в сеть специальные ARP запросы. Отвечающие хосты очевидно являются снифферами. Также могут отвечать некоторые ethernet карты (3COM), т. е. возможны ложные срабатывания.
  • Gateway Discovering (обнаружение шлюза): отправляет SYN пакет через все хосты в сети, если имеется шлюз, обратно будет отправлен ответ.

Техники атак человек-посередине (MiTM) в Intercepter-NG

При нажатии на кнопку Configure MiTMs (шляпа с глазом) открывается диалоговое окно MiTM Attacks :

Оно содержит перечень поддерживаемых техник.

SSL MiTM

Является старой классической техникой подмены сертификатов. Позволяет перехватывать данные любого протокола, защищенного при помощи SSL. Стандартно поддерживаются: HTTPS, POP3S, SMTPS, IMAPS. Опционально можно указать любой дополнительный порт.

При перехвате HTTPS, сертификаты генерируются «на лету», копируя оригинальную информацию с запрашиваемого ресурса. Для всех других случаев используется статичный сертификат.

Естественно, при использовании данного функционала неизбежны предупреждения браузера и другого клиентского ПО.

В новой версии был полностью переписан код для SSL MiTM. Теперь он работает быстро и стабильно. Также изменился алгоритм генерации сертификатов, в них стали добавляться дополнительные dns записи и все сертификаты подписываются единым ключом (misc\server ). Это означает, что добавив данный самоподписанный сертификат в список доверенных на компьютере цели, можно будет прослушивать SSL трафик до любого ресурса (где нет SSL Pinning). Функция Cookie Killer теперь работает и для SSL соединений. Появились черные (misc\ssl_bl.txt ) и белые списки (misc\ssl_wl.txt ). В них можно исключить или напротив жестко указать IP адреса или домены, к которым следует или не следует применять SSL MiTM. При указании extra ssl port больше нет необходимости указывать тип read\write, достаточно указать номер порта. Весь трафик пишется в ssl_log.txt.

SSL Strip

SSL Strip — «тихая» техника для перехвата HTTPS соединений. Долгое время рабочая версия существовала только под unix, теперь подобные действия можно проводить и в среде NT. Суть в следующем: атакующий находится «посередине», анализируется HTTP трафик, выявляются все https:// ссылки и производится их замена на http:// Таким образом клиент продолжает общаться с сервером в незащищенном режиме. Все запросы на замененные ссылки контролируются и в ответ доставляются данные с оригинальных https источников.

Т.к. никаких сертификатов не подменяется, то и предупреждений нет. Для имитации безопасного соединения производится замена иконки favicon.

DNC <> ICMP

Это совершенно новая техника, ранее упоминаемая или не реализованная. Она основывается на том же старом ICMP Redirect MiTM, но открывает новый способ для сниффинга данных. Первый шаг этой атаки похож на классический ICMP редирект, но имеется одно важное отличие.

Так называемая «новая запись» - это DNS сервер жертвы. Мы собираемся захватить контроль над всеми DNS запросами и сделать некоторую магию перед тем, как жертва получит ответы.

Когда мы преобразовываем (резолвим) somehost.com, DNS отправляет нам ответ, содержащий один или более ответ с IP somehost.com. Более того, он может содержать «дополнительные» ответы, и мы собираемся позаботиться также и о них. После завершения первой части атаки, жертва начинает отправлять все DNS запросы через хост атакующего (NAT). Когда NAT получает ответ от DNS, он считывает все IP и затем отправляет жертве сообщения ICMP редиректа с преобразованным IP.

Таким образом, к моменту, когда NAT отправляет DNS ответ обратно жертве, его таблица маршрутизации уже имеет записи для всех преобразованных адресов, которые показывают на наш хост!

Это означает, что мы сниффим не только DNS жертвы, но всё, что было преобразовано. Весь трафик спуфится через поддельный IP\MAC.

Эта часть атаки выполняется на стороне NAT, по этой причине вы должны его правильно настроить.

Поставьте галочку в "DNS over ICMP" затем заполните:

  • Router"s IP - это IP шлюза по умолчанию, используемого жертвой.
  • Client"s IP - это IP жертвы. Вы можете добавить несколько целей, но не забудьте начать с отправки из Intercepter пакета ICMP редиректа каждой цели.

После добавления клиентов, вы должны поместить свободный/неиспользуемый IP в поле «New Gateway» и в «Stealth IP».

Выберите адаптер, они должны быть теми же, поскольку мы собираемся маршрутизировать трафик в одной ethernet области.

Запустите NAT.

Все DNS ответы сохраняются в специальном списке и NAT регулярно (в соответствии с временем, установленным в настройках) повторно отсылает ICMP редиректы,

В конце вам нужно проделать ещё одно действие. Вы не можете выполнить «лечение» таблицы маршрутизации жертвы (как при ARP травлении), поэтому вы должны снять галочку с «DNS ↔ ICMP» для предотвращения повторной отправки ICMP редиректов и ожидать примерно 10-15 минут. После этого новые записи не будут добавляться, но старые будут прекрасно работать через NAT, пока не истечёт срок действия.

WPAD MiTM

Подробности смотрите к описанию опции WPAD Configuration (PROXY:PORT) .

SMB Hijack

SSH MiTM

Вы можете перехватить данные SSH аутентификации (логин/пароль) и видеть все команды, проходящие во время удалённой сессии. Поддерживается 2 механизма аутентификации: по паролю и интерактивная. Для сниффинга данных жертвы нам необходимо действовать как настоящий sshd и мы предоставляем наши собственные ключи rsa/dsa. Если оригинальный ключ хоста кэшируется жертвой, то появится сообщение с предупреждением, если не кэшируется, то на клиентской стороне не будет никаких признаков атаки.

Когда жертва залогинилась, она может работать как обычно, выполнять команды и псевдографические программы, такие как midnight commander. Intercepter перехватывает запросы WINDOW_CHANGE, следовательно, если жертва решит изменить размер окна, всё будет корректно перерисовано в соответствии с новым размером окна.

Программа работает с удалённым сеансом, но не работает с SFTP. Если жертва запустит SFTP клиент, данные аутентификации будут перехвачены, но затем соединение будет отброшено и помечено. Затем, когда жертва попытается заново подключиться, она получит доступ к оригинальному серверу ssh помимо нашего фальшивого sshd.

Необходимо упомянуть, что атакующий входит на удалённый сервер и оставляет его IP адрес в логах. В экспертном режиме вы можете выбрать опцию отбрасывать ssh соединение после получения учётных данных жертвы. Соединение будет помечено, и при следующей попытке программа разрешит доступ к оригинальному серверу.

GP Hijack

Дополнительные возможности при атаках человек-посередине (MiTM) в Intercepter-NG

Кнопки для использования этих возможностей также расположены в секции MiTM Options (кубики, символ JDownloader, шприц, щит и отдельно стоящий символ радиационной опасности):

Traffic Changer (изменение текстовых данных в потоке сетевого трафика)

Подменять можно данные только равного размера, не изменяя длину пакетов. Допустим браузер открывает site.com/file.txt, в котором содержится строка «12345». В ответ на GET запрос сервер вернет HTTP заголовок, в котором будет указана длина передаваемых данных — Content-length: 5. Что будет если мы заменим «12345» на «12356»? Браузер скачает только 5 байт, отбросив добавленную «6», а если мы уменьшим размер данных, заменив «12345» на «1234», браузер получит только 4 байта и будет ждать от сервера еще 1 байт до тех пор, пока соединение не разорвется по таймауту. Именно поэтому сделано данное ограничение на размер. Менять можно как текстовые данные так и бинарные, синтаксис для бинарных паттернов как в Си — "\x01\x02\x03".

Если требуется подмена в HTTP трафике, то в настройках необходимо включить опцию «Disable HTTP gzip encoding».

Spoofing

Спуфинг (Spoofing) позволяет вам перенаправлять хосты на заданный IP. Поддерживаются протоколы DNS, NBNS, LLMNR.

С DNS вы можете указать маску чтобы перенаправлять также все поддомены. Обычно устанавливаются пары domain.com:IP, но субдомены не будут спуфлены. Для перенаправления их всех добавьте * (звёздочку) перед именем домена: *host.com

Forced Download и JS Inject

Оба нововведения относятся к режиму HTTP Injection. По-русски Forced Download можно перевести как «принудительная закачка», ведь именно это и происходит на стороне цели во время web-серфинга. При заходе на сайт предлагается скачать заданный атакующим файл, в зависимости от настроек браузера он может самостоятельно скачаться, а пользователь уже выберет, запустить его или нет.

Как вы понимаете, в форсированную загрузку можно добавить и.exe файл с произвольным содержимым, причем источником этого файла будет сайт, который в данный момент посещает пользователь. Зная, что цель собирается открыть adobe.com, вы можете выдать flashplayer.exe, и в качестве источника этого файла будет указан adobe.com или один из его субдоменов.

После разовой выдачи форсирование отключается, для повторного инжекта нужно снова нажать на соответствующую галку.

JS Inject в явном виде не присутствует среди элементов управления, т.к. по сути это самый обычный http inject, но с одним отличием. При подмене одного файла другим, например картинок.jpg на заданную, происходит именно замена одного содержимого другим. Замена.js скрипта с большой вероятностью может нарушить работу ресурса, поэтому в новой версии js inject не заменяет один скрипт другим, а дописывает его в существующий, добавляя возможность внедрить дополнительный код, не затрагивая оригинальный.

Режим FATE совмещает в себе две новые функции: FAke siTE и FAke updaTE.

Ключевой целью FAke siTE служит получение авторизационных данных с любого веб ресурса, в обход SSL и других механизмов защиты. Достигается это клонированием страницы авторизации и созданием шаблона, который будет размещаться на встроенном псевдо-веб сервере. По-умолчанию в состав интерцептера входит один шаблон для accounts.google.com, т.к. оригинальная страница требует заполнить поочередно поле с логином, а затем с паролем. В данном шаблоне внесены небольшие изменения, чтобы оба поля были активны одновременно. Перед атакой необходимо указать домен, на котором будет размещаться шаблон. После начала атаки, в трафик цели инжектится редирект на выбранный домен и впоследствии интерцептер автоматически будет проводить DNS спуфинг на требуемые адреса. В итоге в браузере откроется выбранная страница авторизации.

Функциональность FAke updaTE (фальшивые обновления) означает появление сообщений об установленного у «жертвы» программного обеспечения и загрузку будто бы файла обновления, в который добавлена полезная нагрузка. Список поддерживаемого софта весьма скромен. При желании можно добавлять свои шаблоны, их структуру можно посмотреть в misc\FATE\updates.

ARP Poison (ARP травление)

Является частью классической атаки человек-посередине. Эта атака начинается со сканирования хостов. Когда хосты обнаружены и некоторые из них выбраны в качестве цели, то начинают ARP травление, в результате которого атакуемые хосты начинают пересылать свой трафик не шлюзу, а атакующему. Атакующий изучает (сниффит) этот трафик, выполняет другие манипуляции и отправляет его целевому серверу. Целевой сервер отвечает атакующему (как источнику запроса), этот трафик также сниффится, модифицируется и пересылается жертве. В результате для жертвы не происходит значимых изменений — она будто бы обменивается данными с удалённым сервером.

Дополнительные функции Intercepter-NG

Кнопки для запуска дополнительных функций расположены в отдельной секции правого столбца в окне программы:

В Intercepter-NG появился свой сетевой сканер, который пришел на замену примитивному сканеру портов из прошлых версией. Основные его функции:

  1. Сканировать открытые порты и эвристически определять следующие протоколы: SSH, Telnet, HTTP\Proxy, Socks4\5, VNC, RDP.
  2. Определять наличие SSL на открытом порту, читать баннеры и различные web заголовки.
  3. При обнаружении прокси или сокса, проверять их открытость наружу.
  4. Проверять беспарольный доступ к VNC серверам, проверять SSL на HeartBleed. Читать version.bind у DNS.
  5. Проверять по базе наличие скриптов на веб-сервере, потенциально уязвимых к ShellShock. Проверять по базе список директорий и файлов на 200 OK, а так же список директорий из robots.txt.
  6. Определять версию ОС через SMB. При наличии анонимного доступа получать локальное время, uptime, список общих ресурсов и локальных пользователей. Для найденных пользователей запускается автоматический перебор паролей.
  7. Определять по встроенному списку пользователей SSH через замер времени отклика. Для найденных пользователей запускается автоматический перебор паролей. Если энумерация не дала результата (работает не на всех версиях), перебор запускается только для root.
  8. Автоматический брутфорс для HTTP Basic и Telnet. Учитывая особенности telnet протокола возможны ложные срабатывания.

Сканировать можно любые цели, как в локальной сети так и в интернете. Можно указывать список портов для скана: 192.168.1.1:80,443 или диапазон 192.168.1.1:100-200. Можно указывать диапазон адресов для скана: 192.168.1.1-192.168.3.255.

Для более точного результата, одновременно можно сканировать только 3 хоста. Буквально в последний момент были добавлены проверки на данные из SSL сертификатов, например если встречается слово Ubiquiti и при этом открыт 22 порт, то автоматически запускается брутфорс SSH пользователя ubnt. То же самое для пары Zyxel железок с пользователем admin. Для первого релиза сканера функционала достаточно и он неплохо отлажен.

HeartBleed Exploit

Тестирует, уязвима ли цель к HeartBleed. Если цель уязвима, то эксплуатирует эту уязвимость — получает часть содержимого оперативной памяти удалённого хоста.

Bruteforce Mode

Поддерживается атака грубой силой (брут-форс, полный перебор) для следующих сетевых протоколов:

  • POP3 TLS
  • SMTP TLS
  • HTTP Basic
  • HTTP Post
  • TELNET
  • VMWARE

Можно задать количество потоков, в которое будут проверяться учётные данные.

При возникновении таймаута, активный тред перезапускается с того же самого места и процесс перебора продолжается.

Имеется Single Mode , который указывает на то, что каждую новую пару логин:пароль следует проверять с установкой нового соединения, для некоторых протоколов это позволяет увеличить скорость работы. Лог работы сохраняется в brute.txt .

ARP функции

Кроме ARP травления и ARP сканирования, имеются несколько других функций, связанных с протоколом ARP. Две из них вынесены в отдельные кнопки правого столбца в окне программы:

  • ARP Watch : строенная персональная служба наблюдения за ARP. Нужно начать с выполнения ARP сканирования для заполнения списка доверенных («чистых») MAC адресов. Если кто-либо попытается травить ваш arp кэш, то появится сообщение с предупреждением.
  • ARP Cage : изолирует целевой IP адрес от других локальных хостов посредством спуфинга записей arp таблицы.

Примеры запуска Intercepter-NG

Как запустить MiTM в Intercepter-NG

Начните с выбора сетевого адаптера (Network Adapter ):

Кликните правой кнопкой по пустой таблице и выберите Smart Scan :

Будет отображён список целей:

Добавьте нужные в качестве целей (Add as Target ):

Для начала сниффинга нажмите соответствующую иконку:

Перейдите на вкладку MiTM mode (это глобус с патч-кордами) и нажмите иконку ARP Poison (символ радиационной опасности):

Во вкладке Password Mode (символ — связка ключей), будут появляться захваченные учётные данные:

Работа с Wi-Fi и работа с Ethernet

При работе с Wi-Fi или проводными соединениями отсутствуют какие-либо различия, но вам нужно переключиться на нужный режим кликнув иконку:

Офлайн анализ pcap файлов захвата

Имеется много опций, которые могут замедлить или ускорить время анализа.

  1. Для начала, если вам нужно прочитать большой файл.pcap, то отключите опцию "Resolve ".
  2. Если ваш.pcap содержит большие файлы и Resurrection включена, скорость может упасть. Решением является установление лимита на максимальный размер файла для восстановления.
  3. Если вам не нужно что-либо реконструировать, тогда в настройках отключите эту опцию. Скорость увеличится.
  4. Если вам нужно проанализировать только специфичный протокол, например, ICQ\AIM или только HTTP, то установите соответствующий фильтр "pcap filter " из RAW MODE : tcp port xxx , где xxx — это номер порта вашего протокола.
  5. Вы можете загрузить более чем один захват для анализа. В Open Dialog выберите несколько файлов, все они будут проанализированы по очереди.

Установка Intercepter-NG

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

Для установки и запуска Intercepter-NG в Kali Linux выполните следующие команды:

Wget https://github.com/intercepter-ng/mirror/blob/master/wine_pcap_dlls.tar.gz?raw=true -O wine_pcap_dlls.tar.gz sudo apt install libpcap-dev sudo dpkg --add-architecture i386 sudo apt update sudo apt install wine32 sudo apt install tcpdump:i386 wine --config tar xvzf wine_pcap_dlls.tar.gz sudo cp wpcap/wpcap.dll.so /usr/lib/i386-linux-gnu/wine sudo cp packet/packet.dll.so /usr/lib/i386-linux-gnu/wine rm -rf wine_pcap_dlls.tar.gz wpcap/ packet/ sudo apt install winetricks winetricks cc580 sudo ethtool --offload eth0 rx off tx off # Загружаем Intercepter-NG v1.0 и удаляем dll файлы wpcap.dll и Packet.dll: wget https://github.com/intercepter-ng/mirror/blob/master/Intercepter-NG.v1.0.zip?raw=true -O Intercepter-NG.zip unzip Intercepter-NG.zip rm wpcap.dll rm Packet.dll sudo wine Intercepter-NG.exe

Установка в Windows

Для установки Intercepter-NG в Windows перейдите на и скачайте соответствующий архив (без букв CE ). Программа не требует установки, достаточно распаковать архив и запустить файл .exe .

Установка в Android

Для установки Intercepter-NG в Android перейдите на и скачайте файл apk . Для успешного запуска приложения необходимы root-права.

Скриншоты Intercepter-NG