31.07.2023

Ettercap: универсальный анализатор трафика. Сканирование wifi-сетей в Ubuntu с Ettercap Атака DNS-spoofing с помощью Ettercap


В этой статье будет рассказано, как перехватывать трафик в локальной сети с помощью Ettercap. Используя для этого MITM атаки (Man In The Middle attacks – атаки типа “человек по середине”).

– open source утилита для анализа безопасности компьютерных сетей. Основное предназначение которой – MITM атаки (Man In The Middle attacks – атаки типа “человек по середине”). Имеет возможность sniffing of live connections, фильтрация контента на лету, а так же много других интересных возможностей. Поддерживает как активные, так и пассивные вскрытия протоколов и включает большое количество функций для анализа сети и узла.

Более подробную информацию, можно найти на

Установка/Настройка Ettercap

Скачать и установить Ettercap можно из исходников – . В качестве альтернативы можно воспользоваться следующей командой:

# apt-get install ettercap-gtk ettercap-common

Находим в нем вот эти строки и раскомментируем их:

# if you use iptables: 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"

# if you use iptables:

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"

После того, как все перечисленные выше операции сделаны, запускаем Ettercap. Однако у некоторых, в том числе и у меня, Ettercap работать не будет. Будут появляться ошибки вида “SEND L3 ERROR “. Чтобы такие ошибки не появлялись, воспользуйтесь следующей командой:

# echo "1" > /proc/sys/net/ipv4/ip_forward # cat /proc/sys/net/ipv4/ip_forward 1

# echo "1" > /proc/sys/net/ipv4/ip_forward

# cat /proc/sys/net/ipv4/ip_forward

Теперь все должно работать нормально и ошибки не должны выскакивать.

ARP Poisoning

Ранее уже описывалось, что такое “ “ и для чего она нужна. Здесь же будет описано, как осуществить ее используя Ettercap.

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

Запускаем Ettercap:

Перед нами появится окно приложения, как показано ниже:

Щелкаем по кнопкеSniff -> Unified sniffing . После этого выбираем интерфейс, который используется. У меня этоeth0 :

В верхнем меню нажимаем кнопкиHosts Scan for hosts :

Теперь опять щелкаемHosts Hosts list . Появится окно, как показано на рисунке ниже:

Здесь нам нужно выбрать цели, т.е. выбрать машину, которая будет выступать в качестве “жертвы” и шлюз. Как видно из архитектуры сети, которую используем, в качестве “жертвы” выступает машина сIP-адресом = 192.168.1.3 . Ну а в качестве шлюзаIP-адрес = 192.168.1.1 . Поэтому выбираем 192.168.1.3 и нажимаем кнопкуAdd to Target 1 . Теперь щелкаем 192.168.1.1 и нажимаем кнопкуAdd to Target 2 .

НажимаемОК . Осталось только запустить. Для этого нажимаем на кнопкуStart Start sniffing .

Sniffing запущен. Осталось подождать, когда пользователь будет вводить свои данные, например от почтового аккаунта.

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 адресов.

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

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

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

Используемая в примерах ОС - 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 вы можете проверить безопасность своей сети, насколько она подвержена такого типа атакам, а также анализировать трафик из нескольких компьютеров, и даже модифицировать его на лету. В этой статье мы рассмотрим как пользоваться 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. Давайте рассмотрим простенький фильтр, который будет заменять все картинки на нашу:

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 адресов.

Выводы

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

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

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

Ты уже наверняка слышал о мощном хакерском
средстве, о программе 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 -=)

С уважением,


© 2024
zane-host.ru - Программы. Компьютеры. Сетевое оборудование. Оргтехника