Атака ARP Spoofing, или как выполняется перехват почты и пароля в локальной сети.
Введение в механизм атаки Man in the middle («Человек посередине»).
Вот по такой схеме происходит обмен пакетами между двумя узлами. Я воспользуюсь двумя виртуальными машинами из нашей схемы. Как вы можете видеть, одна машина (А) имеет IP-адрес: 192.168.10.2 (клиент), вторая (Б): 192.168.10.1 (сервер). Всё это относительно почты конечно же. Машины могут быть равноправны. Сути это не меняет. Серая колбаска по центру — это передающая среда (Ethernet-сеть).

А вот так будет выглядеть атакованная сеть. Встраивается третий компьютер и все данные проходят через него.
Теоретическая выкладка такова, что перед тем как узел «А» посылает кадр данных для «Б», он должен получить физический адрес узла «Б» с известным IP-адресом. Посылается широковещательный запрос и ожидается ответ от «Б» обратно к «А», что «Это я! Это я! У меня такой адрес!». Наша задача, как злоумышленника, ответить узлу «А» раньше истинного узла «Б», что мы, якобы, и есть узел «Б». Тогда узел «А» будет посылать пакет нам, вместо истинного «Б», полагая, что посылает верно. Мы же, прочитав данные, пошлём пакет истинному «Б» дальше. И наоборот. В общем встраиваемся между ними, как на схеме.

Собираем информацию о сети с помощью программы Cain.
Для этих экспериментов я использую программку Cain, которую можно легко найти на просторах Интернета или скачать с нашего сайта. Она бесплатна и очень функциональна. Мы не раз будем обращаться к ней за помощью. Итак, ставим её на атакующую систему злоумышленника (так же поставим сниффер Wireshark, на предложение установить библиотеки WinPcap соглашаемся).
Вот что мы увидим на нашей (под нашей здесь и далее я буду называть машину 192.168.10.34 — злоумышленник. Узлы соответственно «А» и «Б»).

Запускаем программу по ярлыку и видим перед собой такое вот окошко.

Переходим на вкладочку Sniffer. Нажимаем кнопку «Start Sniffer», я отметил её стрелочкой.

Появляется вот такое окошко с выбором сетевого адаптера. Учитывая то, что у нас один адаптер и одна сеть: 192.168.10.0/24 — используем его и жмём «ОК».

На вкладке Sniffer / Hosts (через слэш я здесь и далее обозначаю верхнюю и нижнюю панели соответственно) кликаем правой кнопкой мыши на таблице и выбираем пункт сканирования MAC-адресов.

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

Прогресс поиска идёт, а у нас уже два найденных узла. Конечно, у них адреса .1 и .2
После того, как узлы найдены, можно в этом же поле кликнуть правой кнопкой мыши и выбрать пункт определения имён хостов (Resolv).
Если у нас в сети много машин, можно понять кто есть кто.

Переходим на вкладку Sniffer / Arp, обратите внимание, чтобы в левом дереве был выбран корневой пункт ARP. Кликаем на верхнем поле, отмеченное цифрой 1, чтобы туда перешёл фокус. И у нас станет доступна кнопка 2, с картинкой «+». Добавим в наш лист атакуемую систему.

Выбираем, между какими узлами будем встраиваться. Целевая система HOST с IP: .2, поэтому в первом поле выбираем SERV .1, а во втором .2 (.1 = 192.168.10.1 и т.д., учитывая, что работаем в пределах одной подсети — я буду сокращать адресацию). Жмём ОК.

У нас появилась запись об этом в таблицу. Нажимаем на кнопку ARP Spoofing-а, эта кнопка 3-я по счёту на верхней панели инструментов, с логотипом радиационной угрозы. Процесс пошёл. Ну теперь осталось отправить пакеты узлу А до узла Б и мы должны их все получить. И что получить? Как открыть? Правильно! Запускаем сниффер WireShark, из первого урока со сниффером вы уже должны знать, как пользоваться основными моментами.

Реализуем атаку с перехватом почты и пароля
А тем временем на узле «А» пользователь Вася решил отправить письмо админу следующего содержания:

(настройки почты мы с вами делали в материале про настройку клиентов для работы с нашими POP3/SMTP сервисами, но это не важно. В качестве почты можно использовать любой механизм, хоть аську, хоть веб-форму)
Итак, отправляем письмо ни о чём не подозревая. Оно, кстати, дойдёт. 
Возвращаемся на машину злоумышленника. Если вы увидели Packets-> и

Пришла пора заглянуть в сниффер: Ого! Наловили немало. Серо-чёрная линейка — общение непосредственно клиента с сервером, стандартные команды на светло-серых полях: HELO, MAIL FROM и т.д.. Помните их в материале про отправку почты посредством telnet? Оказывается, сервер делает то же самое. Только быстро и надёжно.
Кстати, так же стоит обратить внимание на узлы Source и Destination — это не наши IP, что означает, что пакеты для нас не предназначались, но мы их получили. Значит атака удалась. Идём дальше.

Найдём место, когда отправлялась команда DATA и развернём содержимое пакета в нижнем поле WireShark: мы увидим там HTML-код письма! Вот и перехваченное почтовое сообщение.

Но это ещё не всё. Проследуем на вкладку Sniffer/Passwords и увидем 1 пойманый пароль в POP3. Вот user@mail.serv.main.com и засветил свой Password: 1234. 

Вот сколько интересного мы сделали с помощью двух бесплатных программок.
Комментарии