Ettercap у атакуемой цели пропадает интернет. Сканирование wifi-сетей в Ubuntu с Ettercap

Используемая в примерах ОС - Ubuntu 14.04. Значительная часть приведённых операций требует прав суперпользователя и утилиты об этом так или иначе сообщают, если им не хватает полномочий.Будем считать, что все команды выполняются от имени суперпользователя.

ARP poisoning (spoofing)

Какие возможности даёт ARP-spoofing?

DNS spoofing

Рассмотрим DNS spoofing, направлений против хоста, совершающегo запрос к DNS серверу. Предварительно выполнив ARP-spoofing, будем перехватывать ответы DNS сервера если они будут соответствовать нашим правилам замены, то заменять. Используем ettercаp.

1. Отредактировать правила перенаправления в файле:

/etc/ettercap/etter.dns

Например перенаправлять запросы к google.com на локальный адрес 192.168.1.34 .

google.com A 192.168.1.34
*. google.com A 192.168.1.34
www. google.com PTR 192.168.1.34
2. Запустить ettercap для выполнения подмены ответов DNS сервера:
-P dns_spoof - использовать плагин dns_spoof :

ettercap -Tq -i wlan0 -P dns_spoof -M arp :remote // 192.168.1.1 // // 192.168.1.44 //

Активировать плагин dns_spoof можно и после того как ettercap был запущен. Как это сделать подскажет меню ettercap, которое можно увидеть нажав клавишу h во время работы программы.
Если с машины попытаться зайти на google.com то вывод будет таким:

<...>
Activating dns_spoof plugin...

dns_spoof: spoofed to

Ответы на запрос google.com, заменяются в соответствии с правилами, в то время как остальные приходят без изменения.



192.168.1.1 - роутер, 192.168.1.44 - хост, на который производится атака, 192.168.1.34 - IP google.com после спуфинга.

Данный вид атаки может применяться для перенаправленияатакуемого на страницу с вредоносным кодом (Metasploit Browser Autopwn), для дальнейшего проникновения.

bettercap
Похожим образом работает bettercap, целевой IP адрес (-T ) - не обязательный параметр:

bettercap --dns dns.conf

Содержимое файла, в котором описаны правила замены описывается в виде регулярных выражений. Например

192.168.1.2 .* # заменит любой адрес на 192.168.1.2

Traffic dumping

tcpdump -i интерфейс -w файл-для-записи

tcpdump -i wlan0 -w dump.pcap

Для записи только перехваченного трафика нужно использовать фильтр по IP (при необходимости добавить порт port ):

tcpdump -i wlan0 -w dump.pcap host 192.168.1.36 and port 80
src , dst , host - фильтровать по IP отправителя пакета, получателя, или получатели или отправитель соответственно.
src и dst ипользуются и чтобы указать порт-источник и порт-получатель, для сложного фильтра используются логические операторы or , and и not (|| , && и ! ).

Приветствую тебя, юный хакер! Сегодня --
твой день.

Ты уже наверняка слышал о мощном хакерском
средстве, о программе ettercap? Ettercap весьма
бурно эволюционирует, и в этот раз я
расскажу тебе о новой версии этой
суперпроги, 0.6.7, выпущенной буквально на
днях. Начиная с этой версии, ettercap достоин
носить название полноценного крякера
локальных сетей =))) Нельзя сказать, что ettercap
реализует какие-то особенно новые или
гениальные технологии, но у него есть одно
принципиальное отличие, что делает его
уникальным. Он объединяет кучу средств для
кошерного хака локальных сетей в единое
целое.

КОМПИЛИРУЕМ

Ettercap реализован под следующие платформы:
MacOS X, Windows 9x/NT/2000/XP, FreeBSD, OpenBSD и, конечно же, Linux.
Для работы, ettercap"у не нужны какие-то
дополнительные библиотеки вроде libpcap или
libnet (за исключением библиотеки WinPCap для Windows-версии),
но для полнофункциональной работы
рекомендуется включить библиотеку curses (я
использовал шестой ncurses) и openssl (я
использовал дефолтную для red hat 7.2
библиотеку).

Процесс компиляции прост, особенно под Linux:

./configure --help
включаем нужные параметры
./configure
./make help

В итоге, мы получаем ncurses-based-программу с
очень простым интерфейсом и богатым
диапазоном возможностей.

Документация к программе не очень обильна,
но я крайне рекомендую тебе прочесть все,
что идет в поставке пакета.

ВОЗМОЖНОСТИ

Все, что написано про возможности программы
на сайте - это правда =)) Но я не буду все это
пересказывать здесь, ты ведь уже не
маленький и умеешь читать по-английски.

Не спеши запускать прогу и пытаться её
юзать сразу же, едва скомпилировав и
установив. Прочти man ettercap, все readme, разберись
с конфигом (etter.conf) и фильтрами (etter.filter и
etter.filter.ssh). Учти, что по дефолту программа
выполняет множество лишних действий (например,
dns-резолвинг найденных адресов). Кроме того,
активный arpoisoning и некоторые другие действия
могут скомпрометировать хакера,
использующего ettercap. Даже в самой программе
встроена функция обнаружения себе подобных
=)) Конечно же, некоторые действия требуют
активной работы программы (т.е. испускания
ею некоторых кадров данных, которые могут
быть пойманы и продиагностированы), от
этого никуда не деться, но лучше, все-таки,
об этом знать =))

ЗАПУСКАЕМ

Запуск программы, её начальная работа
зависит от версии (Windows-версия спросит у
тебя номер интерфейс, который необходимо
использовать), от ключей, с которыми
программа была запущена, а также от
настроек в конфигурационных файлах. Я буду
рассказывать о максимально дефолтной (следовательно,
о предельно неприкрытой) работе программы.
Запускаем, выбираем интерфейс, программа
сканирует сабнет интерфейса (у меня это
192.168.0.246, маска подсети 255.255.255.0) на предмет
выяснения соответствий IP<->MAC, dns- и netbios-имен
машин. Открывается ncurses-окошко примерно
такого содержания:

Это главное (начальное) окно ettercap"а, откуда
ты можешь выбирать вражеские адреса,
запускать плагины (если твой ettercap их
поддерживает), выполнять различные команды.
Жми кнопку "h", и ты получишь справку о
возможных функциях программы на этом
уровне. Почти во всех случаях, тебе
необходимо выбрать адреса, с которыми тебе
необходимо работать. Левая колонка -- source,
правая -- destination. Селект и деселект
производится кнопками и .
Далее следует выбрать метод сниффинга. ettercap
предлагает целых три, я расскажу о каждом в
отдельности.

СНИФФИНГ

Итак, методов сниффинга три.

1) , ARP poisoning based sniffing, применяется для
сниффинга в свичуемых сетях, а также для
применения атак класса mitm. В данном случае
используется атака arpoison, которая
модифицирует ARP-таблицы заражаемых хостов
таким образом, что все кадры данных с
выбранного source идут на твой хост, а с твоего
уже - на destination.

Иными словами, с помощью этого метода
сниффинга ты сможешь видеть любой траффик
твоего сегмента за пределами каких бы то ни
было ограничивающих тебя свичей. Ты также
сможешь проводить любые mitm-атаки, ровно с
той же силой, как если бы ты на самом деле
был посередине двух хостов. На основе этого
метода, уже с версии 0.6.7 ettercap реализует
перехват (dissection) паролей протоколов ssh1 и https.
Можно даже сниффить пароли в ssh версии 2,
если подключить фильтр (ettercap -F etter.filter.ssh),
который будет спуфить версию ssh-сервера с 1.99
(openssh-0.9.6, etc) на 1.51, поддерживающую только
лишь первую версию протокола ssh.

Очевидно, что для проведения атаки arpoison,
ettercap"у необходимо нагадить в сеть целой
пачкой ложных ARP-пакетов, и я почти уверен,
что уже есть средства, отлавливающие эту
атаку. И уж тебе решать, как от этого
спасаться. Можно, например, вводить ложный
IP-адрес...

2,3) , IP based sniffing, , MAC based sniffing, это
обычный пассивный сниффинг локальной сети.
Возможности такого сниффинга ограничены,
хотя меня впечатлило количество
поддерживаемых протоколов при
относительно небольшом размере программы.

Напихав нужные адреса в source, destination или в оба
сразу (я выбрал 192.168.0.200 в качестве source),
выбирай метод сниффинга (я выбрал
), ты
попадешь в соответствующее окно:

и будешь видеть все интересующие тебя
соединения. Для того, чтобы собирать пароли,
делать не нужно вообще ничего =)) Наведи
курсор на нужное тебе соединение: пароли
будут появляться в нужной части экрана =))
Сброс паролей в лог -- кнопка . Нажми на
кнопку и ты увидишь новый диапазон
возможностей, уверен, он тебя впечатлит.
Убийство соединений, хайджекинг, филтеринг,
etc... Что ещё нужно хакеру? =)

ВКУСНОСТИ

Возможности программы ettercap огромны, но я
почти уверен, что они тебя не удовлетворят
на все 100%. Ну что же, для твоих злобных целей
предусмотрены варианты в виде:

1) Написания плагинов; ну тут все просто и
понятно: не влезая в кишки ettercap"a, рюхаешь
плагинный интерфейс этой проги и делаешь
нужный тебе компонент, который ты сможешь
подгружать в программу всякий раз, когда
тебе это нужно.

2) Возможность bind"ить локальный порт, с
которым ettercap проассоциирует нужное тебе
соединение. Это очень ценное свойство
программы: ты сможешь заранее реализовать
нужные тебе механизмы, воспроизвести
которые в реальном времени весьма
затруднительно =)) Проще говоря, влезать в
чужие IRC-приваты и материться можно и руками,
но если ты захочешь впарить кому-нибудь
бекдор, проспуфив http или ftp, или сообщить
какому-нибудь биржевому игроку, что его
акции упали в цене в четыре раза, такое
свойство программы может оказаться весьма
и весьма кстати =))

ГОРЬКОСТИ

Они тоже есть, а куда же без них? =))) И
горькостей, пожалуй, даже больше, чем
вкусностей.

1) Виндовый порт программы, мягко говоря,
далёк от совершенства. В этом вина
реализации posix"овой мультизадачности cygwin"а,
сквалыжностью сетевой части и множеством
более минорных моментов, связанных с
портированием софта. Даже в моей win2k,
системе довольно кондовой и крепкой, ettercap
работает нестабильно...

2) Если ты не программист (принципиально, как
один мой знакомый журналист, или просто от
нежелания/неумения), то тебе придется
забыть о возможных вкусностях ettercap"а,
довольствоваться дефолтным содержимым и
ждать обновлений программы.

3) Один мой знакомый хакер из Свердловска
уже опубликовал патч к ядру linux-2.4 против
атаки arpoison. Следует надеяться, что ядра Windows
исправят нескоро, но уже можно утверждать,
что дни arpoison сочтены... О патче к ядру linux-2.4
ты можешь прочесть тут:

Желаю тебе удачи, юный хакер!

P.S. И не ходи под рутом на захваченных
машинах... man adduser -=)

С уважением,

Риторика

Сканирование беспроводных сетей wifi занятие такое же простое, как и компилирование приложений из исходников в оперционной системе Linux. Если вы хотите проверить, насколько разбирается ваш сосед в деле компьютерной безопасности или же вообще в компьютерных технологиях. А также узнать о нем несколько больше, чем он сам этого хочет. И при этом он, фактически, сам предлагает вам это сделать благодаря своей безграмотности. Тогда прошу следовать дальше, по волнам этого описания.

Героем этой статьи будет недольшая, но умная и шустрая программка по имени . Она очень распространена в мире Linux и есть в репозиториях практически всех дистрибутивов. Ettercap , как любая истинная unix-программа, имеет две ипостаси: чистый, не замутненный всякими кнопками и свистелочками интерфейс командной строки CLI; более тяжелый, но удобный для новичков графический GUI (написанный на библиотеках GTK, а занчит, расчитаный на работу прежде всего под Gnome.).

Под программу ettercap , помимо того, что она сама умеет делать многое, существует большое колличество плагинов, которые значительно расширяют ее возможности. С помощью ettercap вы можете сделать многое из того, что бы хотели.

Конечно, ettercap не единственная утилита такого рода. Существует не менее известная и "навороченная" aircrack-ng . Но здесь мы остановим свой выбор именно на ettercap . И вы увидите, почему.

Работу программы ettercap я буду приводить на примере дистрибутива Blackbuntu . Это очень неплохая операционная система для пентестинга, которая "появилась на свет" совсем . Она представляет из себя переработанную и дополненную необходимыми программами и утилитами Ubuntu (если быть точнее - Ubuntu 10.10). Так что те, кто привык работать с этой ОС, почувствуют себя в Blackbuntu в привычной обстановке. Набор программ для пентестинга почти не уступает хорошо известному BackTrack . Ну, а оформление дистрибутива заслуживает отдельной темы для обсуждения. Однако, мы отвлеклись. Переходим к программе ettercap .

Установка ettercap в Ubuntu

Запуск режима arp poisoning в ettercap

Ставим галочку на Sniff Remote connections в появившемся диаговом окне настройки этого режима.

Sniff Remote в ettercap

Теперь нам нужно перейти в меню плагинов и выбрать один из них - chk_poison . Работа этого плагина ясна из его названия - он проверяет, включился ли у нас режим перехвата arp poisoning . Переходим в меню Plugins - Manage the Plugins , находим chk_poison и двойным щелчком запускаем его.

Переходим в управление плагинами в ettercap

Окно управления плагинами в ettercap

Если режим перехвата включился успешно, то в окне логов мы должны увидеть следующую запись:

Activating chk_poison plugin... chk_poison: You have to run this plugin during a poisoning session Unified sniffing already started...

Вот теперь можно расслабиться и посмотреть, как идет сам процесс сниффинга. Переходим в меню View - Connections и смотрим, что у нас получилось.

Процесс сниффинга в ettercap

Как видите, окно Connections достаточно информативное. Показываются IP-адреса машин, их состояние (state), колличество переданных байт между каждой из них. Если хотим увидеть более подробную информацию (то, что передается), выбираем из списка строку и двойным щелчком открываем ее. Появится отдельное окно, в котором показаны перехваченные между этими машинами пакеты.

Ettercap настроен так, что автоматически отлавливает и сохраняет пароли и логины, передаваемые по локальной сети. Осталось только немного подождать.

Если вам понравилась статья, поделитесь ею с друзьями:

ARP-спуфинг — это атака на сеть Ethernet или WiFi, чтобы попасть между маршрутизатором и целевым пользователем. При спуфинге ARP сообщения, предназначенные для цели, вместо этого отправляются злоумышленнику, что позволяет злоумышленнику шпионить, отказывать в обслуживании или посреднике цели. Одним из наиболее популярных инструментов для выполнения этой атаки является Ettercap, который предустановлен на Kali Linux.

В обычной сети сообщения маршрутизируются через Ethernet или Wi-Fi, связывая MAC-адрес подключенного устройства с IP-адресом, используемым для его идентификации маршрутизатором. Обычно это происходит посредством сообщения протокола разрешения адресов (ARP), указывающего, какой MAC-адрес устройства соответствует какому IP-адресу. Он позволяет остальной части сети знать, куда отправлять трафик, но его можно легко подделать, чтобы изменить способ маршрутизации трафика.

Не пропустите: использование Netdiscover & ARP для поиска внутренних IP-адресов и MAC-адресов

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

Типы ARP спуфинг-атак

После того, как злоумышленник добьется первоначального успеха в отравлении кэша ARP других хостов в сети, может быть три основных результата:

  • Злоумышленник может следить за трафиком. Они могут скрываться в тени, видя все, что целевой пользователь делает в сети. Это довольно очевидно.
  • Атакующий может перехватывать и изменять пакеты в атаке «человек посередине». Они могут перехватывать пароли, введенные на веб-сайте HTTP, просматривать DNS-запросы и разрешать IP-адреса, по которым перемещается цель, чтобы увидеть, какие веб-сайты посещает цель. При атаке «человек посередине» злоумышленник имеет возможность не только увидеть, что происходит в сети, но и манипулировать ею. Например, они могут попытаться снизить уровень шифрования, которое использует соединение, преднамеренно запрашивая небезопасные версии веб-страниц, чтобы упростить задачу злоумышленника по перехвату паролей. Кроме того, хакер может быть просто неприятностью. Например, они могут заменять слова в тексте веб-сайта, переворачивать или заменять изображения или изменять другие типы данных, поступающих к цели и от нее.
  • Злоумышленник может отбросить пакеты, предназначенные для цели, чтобы создать атаку типа «отказ в обслуживании». Это, возможно, самый неприятный для цели. Хотя атака с использованием аутентификации Wi-Fi является гораздо более частой причиной атаки сети Wi-Fi, спуфинг ARP может быть гораздо сложнее выяснить. Если злоумышленник решит не пересылать пакеты, которые теперь отправляются ему, вместо цели, цель никогда не получит их. Сеть Wi-Fi может быть заблокирована изнутри, попасть между целью и маршрутизатором, а затем отбросить пакеты, проходящие между ними.

Как пользоваться Ettercap

– для switched LAN. Программа использует ARP poisoning и “man-in-the-middle” нападения, чтобы перехватить подключения между двумя компьютерами. Вы можете перехватить подключения между двумя компьютерами, используя MAC-based sniffing mode. Позволяет перехватывать SSH1, HTTPS и другие защищенные протоколы. Позволяет расшифровывать пароли для следующих протоколов — TELNET, FTP, POP, RLOGIN, SSH1, ICQ, SMB, MySQL, HTTP, NNTP, X11, NAPSTER, IRC, RIP, BGP, SOCKS 5, IMAP 4, VNC, LDAP, NFS, SNMP, HALF LIFE, QUAKE 3, MSN, YMSG.

Ettercap — одна из самых интригующих программ, установленных по умолчанию в Kali Linux. В отличие от многих программ, использующих только командную строку, Ettercap имеет графический интерфейс, который очень удобен для начинающих. Хотя результаты могут иногда отличаться, Ettercap является отличным инструментом для новичков, чтобы освоить сетевые атаки, такие как ARP-спуфинг.

Ettercap не единственный инструмент для этого и не самый современный. Другие инструменты, такие как Bettercap, утверждают, что делают Ettercap, но более эффективно. Тем не менее, Ettercap оказывается достаточно эффективным для демонстрации. Общий рабочий процесс спуфинговой атаки Ettercap ARP состоит в том, чтобы присоединиться к сети, на которую вы хотите атаковать, найти узлы в сети, назначить цели для файла «целей», а затем выполнить атаку на цели.

Как только мы сделаем все это, мы сможем образно наблюдать за тем, как целевые объекты просматривают Интернет, и мы можем даже убить соединение с веб-сайтов, с которых мы хотим их отвести. Мы также можем запускать различные полезные нагрузки, например, изолировать хост от остальной части сети, отказывать им в обслуживании, отбрасывая все отправленные им пакеты, или запускать сценарии, чтобы попытаться понизить безопасность соединения.

Установка Ettercap

Если у вас его еще нет (например, если вы скачали облегченную версию Kali), вы можете получить его, введя следующее в окне терминала.

apt install - graphical

Reading package lists . . . Done

Building dependency tree

Reading state information . . . Done

Graphical is already the newest version (1 : 0.8.2 - 10 + b2 ) .

Подключение к сети

Первым шагом подмены ARP является подключение к сети, которую вы хотите атаковать. Если вы атакуете зашифрованную сеть WEP, WPA или WPA2, вам нужно знать пароль. Это потому, что мы атакуем сеть внутренне, поэтому мы должны иметь возможность видеть некоторую информацию о других хостах в сети и передачи данных в нем.

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

Запуск Ettercap

В Kali нажмите «Приложения», затем «Обнюхивание и подмена», а затем «ettercap-graphicical». В качестве альтернативы, нажмите «Показать приложения» в доке, затем найдите и выберите «Ettercap».

Как только он запустится, вы должны оказаться на главном экране Ettercap. Вы увидите жуткий логотип Ettercap и несколько выпадающих меню для начала атаки. На следующем шаге мы начнем изучать меню «Sniff».

На этом этапе убедитесь, что у вас есть активное подключение к сети, прежде чем продолжить.

Выбор сетевого интерфейса

Нажмите на пункт меню «Sniff», а затем выберите «Unified сниффинг». Откроется новое окно с просьбой выбрать, какой сетевой интерфейс вы хотите прослушивать. Вы должны выбрать сетевой интерфейс, который в данный момент подключен к сети, которую вы атакуете.

Теперь вы увидите текст, подтверждающий, что сниффинг начался, и вы сможете получить доступ к более сложным опциям меню, таким как Targets, Hosts, Mitm, Plugins и т. Д. Прежде чем мы начнем использовать любой из них, мы нужно идентифицировать нашу цель в сети.

Определение хостов сети

Чтобы найти устройство, которое мы хотим атаковать в сети, Ettercap предлагает несколько хитростей. Сначала мы можем выполнить простое сканирование хостов, нажав «Хосты», затем «Сканировать хосты». Сканирование будет выполнено, и после его завершения вы сможете увидеть результирующие хосты, которые Ettercap определил в сети, нажав «Hosts», затем «Hosts list».

Теперь мы можем увидеть список целей, которые мы обнаружили в сети. Хотите увидеть, что они делают или сузить цели? Нажмите «Просмотр», затем «Подключения», чтобы начать поиск подключений.

Находясь в представлении «Подключения», вы можете фильтровать подключения по IP-адресу, типу подключения и по тому, открыто ли соединение, закрыто, активно или уничтожено. Это дает вам много возможностей отслеживания, которые можно увеличить, нажав «Просмотр», затем «Разрешить IP-адреса». Это означает, что Ettercap будет пытаться определить IP-адреса, которые он видит для других устройств в сети, к которым он подключается.

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

Выберите хоста для таргетинга со спуфингом ARP

Теперь, когда мы определили IP-адрес нашей цели, пришло время добавить их в список целей. Как только мы сделаем это, мы скажем Ettercap, что мы хотим назначить этот IP-адрес как тот, которым мы хотим притвориться, чтобы мы получали сообщения от маршрутизатора, которые должны были быть отправлены на цель.

Вернитесь к экрану «Хосты» и выберите IP-адрес цели, на которую вы хотите настроить таргетинг. Щелкните по IP-адресу, чтобы выделить его, затем нажмите «Цели», а затем «Список целей», чтобы увидеть список устройств, на которые был нацелен спуфинг ARP.

Теперь мы можем перейти в меню «Mitm», чтобы начать нашу атаку на эту цель.

Начало атаки

Нажмите на «Mitm» меню и выберите «ARP отравление». Откроется всплывающее окно, и вы выберете «Удаленные соединения Sniff», чтобы начать атаку Sniff.

Как только эта атака начнется, вы сможете перехватывать учетные данные для входа, если целевой пользователь вводит их на веб-сайт, который не использует HTTPS. Это может быть маршрутизатор или устройство в сети, или даже веб-сайт с низким уровнем безопасности.

Чтобы попробовать другую атаку, вы можете нажать «Плагины», затем «Загрузить плагины», чтобы открыть меню плагинов. Если вы выберете DOS-атаку, она начнет сбрасывать пакеты, отправленные этой цели, и отключит их доступ в Интернет.

Перехват пароля

Теперь давайте попробуем перехватить пароль. Отличным для тестирования веб-сайтом является aavtain.com, который намеренно использует плохую защиту, чтобы вы могли перехватывать учетные данные. На целевом устройстве перейдите на aavtrain.com. Как только он загрузится, вы увидите экран входа в систему, в который вы можете ввести поддельный логин и пароль.

Введите имя пользователя и пароль, затем нажмите «Отправить». Если Ettercap успешен, вы должны увидеть введенные вами логин и пароль на экране злоумышленника!

В приведенном выше результате мы видим, что Ettercap успешно ARP отравил цель и перехватил HTTP-запрос на вход в систему, который цель отправляла на небезопасный веб-сайт.

ARP Poisoning — мощный инструмент с некоторыми ограничениями

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

Защита от атаки ARP Poisoning

Атаки ARP — еще один пример того, почему так важно выбирать надежные пароли для своих сетей и ограничивать доступ тем, кому вы доверяете. Вы отдаете много доверия, когда даете кому-то свой сетевой пароль или соединение Ethernet, поэтому не забывайте тщательно выбирать свои пароли и с кем вы им делитесь.

Надеюсь, вам понравилось это руководство по использованию графической версии Ettercap для атак отравления ARP!

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

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

Что такое атака "Человек по середине"?

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

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

Существует два способа выполнения MITM (Man In Middle Attack):

  • ARP атака - с помощью особенностей протокола ARP ваш компьютер говорит другим, что он маршрутизатор, после этого все пакеты начинают предаваться ему;
  • DNS атака - когда компьютер пытается получить ip адрес для домена, мы подменяем этот адрес на свой, но чтобы этот вид работал, нужно использовать способ с ARP.

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

Установка Ettercap

Это довольно популярная программа, среди специалистов по сетевой безопасности, поэтому она есть в официальных репозиториях большинства дистрибутивов. Например, чтобы установить Ettercap в Ubuntu выполните:

$ sudo apt install ettercap-gtk

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

$ sudo yum install ettercap-gtk

С задачей как установить Ettercap Linux мы справились, но перед тем, как ее использовать, нужно изменить несколько настроек в конфигурационном файле.

$ sudo vi /etc/ettercap/etter.conf

Строки ec_uid и ec_gid должны иметь значение 0, чтобы сервис программы работал от имени суперпользователя:


ec_uid = 0 # nobody is the default
ec_gid = 0 # nobody is the default

redir_command_on = "iptables -t nat -A PREROUTING -i %iface -p tcp --dport %port -j REDIRECT --to-port %rport"
redir_command_off = "iptables -t nat -D PREROUTING -i %iface -p tcp --dport %port -j REDIRECT --to-port %rport"

Они используются для перенаправления SSL соединений на обычные HTTP, если это возможно. Дальше сохраните изменения и программа готова к работе.

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

Программа может работать в нескольких режимах - с графическим интерфейсом, без и в виде сервиса. Мы будем рассматривать работу в графическом интерфейсе. Для запуска программы с интерфейсом GTK используйте опцию -G:

$ sudo -E ettercap -G

Атака ARP-poisoning в Ettercap

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

Для этого используется протокол ARP. Компьютер отправляет запрос всем устройствам в сети, например "кто такой 192.168.1.1" и маршрутизатор, увидев свой адрес отправит в ответе свой MAC. Дальше он будет сохранен в кэше. Но мы можем с помощью Ettercap попросить целевой компьютер обновить свой ARP кэш и передать ему вместо MAC адреса роутера свой MAC адрес. Тогда все пакеты будут передаваться нам, а уже мы отправим их куда нужно.

Перейдем ближе к делу и выполним атаку attercap arp spofing. В Ettercap откройте меню Sniff и выберите Unified Snifing. Затем выберите ваш сетевой интерфейс, например, eth0 или wlan0:

Окно программы измениться и нам будет доступно намного больше функций. Теперь нужно просканировать сеть. Для этого откройте меню Hosts и нажмите Scan hosts. Если даже что-то не работает, то вы можете загрузить список хостов из файла:

Чтобы начать атаку нам нужно указать цель 1 и цель 2. В качестве первой цели нужно указать ip машины, которую мы собрались атаковать, а в качестве цели 2 - ip маршрутизатора. Для добавления целей используйте кнопки Add Target 1 и Add Traget 2 :

В открывшемся окне отметьте пункт Sniff remote connections , чтобы перехватывать все удаленные соединения от этого компьютера:

Теперь, для запуска процесса подмены в меню Start выберите Start Sniffing.

После этого программа начнет отправлять в сеть пакеты, с запросом для 192.168.1.3 на обновление кэша ARP и замены MAC адреса маршрутизатора на ваш. Атака запущена и успешно выполняется. Вы можете открыть меню View -> Connections и посмотреть активные соединения для целевого устройства:

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

Атака DNS-spoofing с помощью Ettercap

Для преобразования имен сайтов в IP адреса сети используется специальная служба - DNS. Когда компьютеру нужен ip сайта он спрашивает его у DNS сервера. Но если вы уже выполняем MITM атаку, то можем подменить ответ сервера таким образом, чтобы вместо IP сервера сайта возвращался наш IP. Сначала нам нужно отредактировать файл /etc/ettercap/etter.dns:

$ sudo vi /etc/ettercap/etter.dns

google.com.ua A 127.0.0.1

Эта запись означает, что мы подменим основной IP google.com.ua на 127.0.0.1. Обратите внимание, что эта атака не выполняется без предыдущей. Дальше откройте меню Plugins -> Manage Plugins :

Затем два раза кликните по плагину dns_spoof :

Плагин будет активирован и вы можете проверять ip на устройстве. DNS действительно подменяется. Например, вы можете выполнить на целевой машине:

$ ping google.com.ua

$ ping www.ettercap.org

Кроме этих плагинов, существуют и другие, с помощью которых вы можете выполнять нужные действия.

Фильтры Ettercap

Фильтры позволяют модифицировать пропускаемые через программу пакеты прямо на лету. Вы можете отбрасывать пакеты, либо вносить в них необходимые изменения с помощью функции replace. Фильтры тоже работают только пока запущена MITM атака. Синтаксис условий, по которым мы будем фильтровать пакеты очень похож на wireshark. Давайте рассмотрим простенький фильтр, который будет заменять все картинки на нашу:

$ vi test.filter

if (ip.proto == TCP && tcp.dst == 80) {
if (search(DATA.data, "Accept-Encoding")) {
replace("Accept-Encoding", "Accept-Rubbish!");
# note: replacement string is same length as original string
msg("zapped Accept-Encoding!\n");
}
}
if (ip.proto == TCP && tcp.src == 80) {
replace("img src="/, "img src=\"https://pbs.twimg.com/profile_images/655061121007616000/NCV0qQnS.png\" ");
replace("IMG SRC=", "img src=\"https://pbs.twimg.com/profile_images/655061121007616000/NCV0qQnS.png\" ");
msg("Filter Ran.\n");
}

Для тех, кто имел опыт работы с языками программирования здесь должно быть все понятно. Если протокол TCP и порт назначения 80, мы продолжаем поиск и ищем Accept-Encoding. Затем заменяем это слово на любое другое, но эквивалентное по длине. Потому что если браузер будет отправлять Accept-Encoding gzip, то данные будут сжаты и мы там ничего не отфильтруем. Дальше уже в ответе сервера, порт источника 80, мы подменяем все изображения на наше. Теперь фильтр нужно скомпилировать:

$ etterfilter test.filter -o test.ef

Осталось загрузить фильтр с помощью меню Filters -> Load Filter :

Выберите файл фильтра в файловой системе:

Фильтр будет загружен и вы можете открыть любой сайт, где не используется https чтобы убедиться, что все работает. Чтобы остановить MITM атаку, откройте меню MITM и выберите Stop All Mitm attacks . Наша инструкция Ettercap подходит к концу, но...

Как защититься?

Наверное, после прочтения статьи у вас возник резонный вопрос, как же защитить свой компьютер от такого вида атак? Для этого есть несколько инструментов, в том числе для операционной системы Linux:

  • XArp - графическая утилита, которая может обнаруживать попытки подмены MAC адресов по протоколу ARP и противодействовать этому. Может работать в WIndows и в Linux;
  • Snort - достаточно известная система противодействия вторжениям, среди прочего обнаруживает атаки на протокол ARP;
  • ArpON - небольшой сервис, который следит за ARP таблицей и защищает ее от подмены MAC адресов.

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

На завершение видео с демонстрацией работы программы:

необходимо зарегистрироваться,
для того что бы оставить комментарий