Хакер - Крококряк. Снимаем трафик с витой пары обычными «крокодилами»
hacker_frei
s0i37
Содержание статьи
- Теория
- Оборудование
- Эксплуатация
- Выводы
Говорят, подслушивать нехорошо. Однако прослушивание сетевого трафика для многих не увлечение, а самая настоящая профессия. Почему‑то считается, что для этого требуется какое‑то специальное дорогостоящее оборудование, но я расскажу, как организовать прослушивание трафика в сети с помощью обычных клемм типа «крокодил».
INFO
Эта статья — часть серии публикаций о практических приемах взлома и атак с использованием подручных устройств, которые можно собрать дома. В этих материалах мы раскрываем простые способы получения несанкционированного доступа к защищенной информации и показываем, как ее оградить от подобных атак. Предыдущая статья серии: «Cold boot attack. Дампим оперативную память с помощью флешки».
Существует достаточно красивая по своей простоте и оригинальности атака, которая заключается в полудуплексном прослушивании трафика витой пары RJ45. Это означает, что прослушивается только половина трафика — либо входящий, либо исходящий.
Сниффинг витой пары — тема не новая, но она актуальна и по сей день из‑за чрезвычайной распространенности: несмотря на то что сейчас повсеместно используется «оптика», старая добрая витая пара по‑прежнему встречается почти в каждом подъезде или коридоре офисного здания. В жилых домах можно обнаружить такие провода, протянутые почти к каждой квартире. А порою это и вовсе выглядит примерно так.

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

Иными словами, атака может быть реализована из помещения, где есть беспрепятственный доступ к проводам витой пары: коридора офисного здания или самого обычного подъезда.
Чаще всего витая пара встречается на «последней миле», непосредственно возле абонентских устройств. Но между домами, территориальными офисами компаний, то есть на протяженных расстояниях, скорее всего, будет использоваться оптика, поэтому целый дом, компанию или даже город, разумеется, так прослушать не удастся.
ТЕОРИЯ
Провод RJ45 состоит из четырех отличающихся цветом пар жил. Каждая пара — это два провода, скрученные между собой.

У каждой пары своя роль:
- зеленая — прием данных;
- оранжевая — передача данных;
- коричневая — PoE-, данные 1000 Мбит/с;
- синяя — PoE+, данные 1000 Мбит/с.
Входящий и исходящий сетевой трафик идет по определенной паре жил, а сами байты кодируются простым изменением характеристики электрического сигнала в них.
ОБОРУДОВАНИЕ
Для реализации атаки нам потребуется обычная сетевая карта Ethernet и отрезок витой пары, состоящий всего из двух жил. Такой провод можно сделать самостоятельно, купив в специализированном магазине, либо модифицировать готовый патчкорд.
Нас будет интересовать только RX-пара (первая и вторая жилы), реализованная в форме обычного RJ45-коннектора, как представлено на следующем рисунке.

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

В данном случае белый крокодильчик — положительный контакт, а черный — отрицательный. Этот модифицированный провод мы подключим напрямую к сетевой карте атакующего.
ЭКСПЛУАТАЦИЯ
Само прослушивание трафика реализуется подключением этих самых крокодильчиков либо к оранжевой, либо к зеленой паре, как показано на следующем рисунке.

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

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

Телефон успешно снимает трафик, идущий от одного ноутбука к другому (только в одну сторону). При этом факт прослушки никак не выявить, поскольку никаких дополнительных хопов (traceroute) между ноутбуками не появляется. Воспользуемся утилитами, которые извлекают из трафика учетные записи и загружаемые файлы:
rj45/sniff.sh
#!/bin/bash
sudo ethtool -s eth0 speed 100 duplex half autoneg off
sudo ethtool eth0 | grep Speed
sleep 1
dumpfile=out-$(date +'%H:%M:%S_%d.%m.%Y').pcap
sudo tcpdump -i eth0 -nn -w $dumpfile &
tcpdump=$!
tmux new-session -d -s rj45 'sudo tcpdump -i eth0 -nn'
tmux split-window -v -t rj45 'sudo /opt/net-creds/net-creds.py -i eth0'
tmux split-window -v -t rj45 'sudo tcpxtract -d eth0'
tmux a -t rj45
sudo kill $tcpdump
ls -lh $dumpfile
Этот скрипт не только сохранит трафик в файл для последующего анализа, но и удобно поделит экран телефона на три области, в каждой из которых мы увидим соответствующую информацию, как показано на следующем рисунке.

Первая треть экрана показывает прослушиваемую половину трафика с помощью tcpdump. Вторая треть — это утилита net-creds, извлекающая учетные данные из трафика. И, на минуточку, тут мы извлекли NetNTLM-хеш в момент подключения компа к сетевому диску простыми крокодильчиками! Последняя треть экрана — это tcpxtract, просто извлекающий файлы по сигнатурам вне зависимости от протокола передачи данных. И в данном случае при скачивании картинки по FTP наш телефон успешно сохранил ее.
В ходе демонстрации ни один домашний или корпоративный интернет не пострадал. Но мы, конечно же, понимаем, с какой легкостью тестовые компоненты нашего стенда могут быть заменены реальными целями.
Стоит отметить, что подобный сниффинг возможен только на подключении со скоростью 10 или 100 Мбит/с, когда задействованы четыре жилы (оранжевые и зеленые пары) — четырехжильный провод. С восьмижильным проводом данные передаются иначе (со скоростью 1000 Мбит/с). Однако даже если в проводе есть все восемь жил, часто сетевые карты не согласуются в режим 1000 Мбит/с. Например, на рисунке выше, где длина провода составляет всего пару метров и все восемь жил в наличии, сетевые карты продолжают работать в уязвимом для прослушки режиме 100 Мбит/c.
Если же перед нами витая пара с активным подключением 1000 Мбит/с, прослушивать трафик двумя крокодильчиками становится невозможно. Однако опытным путем было установлено, что если перерезать одну из дополнительных пар жил, которые нужны, чтобы обеспечивать скорость в 1000 Мбит/с (синюю или коричневую), то через несколько секунд произойдет автоматический даунгрейд к 100 Мбит/с, и мы вновь сможем подключать крокодильчики и прослушивать трафик.
Некоторые компании в своих сетях часто используют PoE для питания IP-телефонов по витой паре, для этого задействованы те самые дополнительные жилы (синяя и коричневая). Из‑за этого подключение на скорости 1000 Мбит/с в такой сети невозможно.
Продемонстрированная атака — это пассивное прослушивание трафика на лету без его модификации. Попытки же активного вмешательства в передаваемый трафик и, например, атака SSLsplit (подмена сертификата) тоже возможна, но потребует от атакующего достаточной ловкости рук, чтобы очень быстро разрезать провод, обжать его с двух сторон, а потом уже вклиниться посередине. Но такой способ достаточно «грязный» и бесхитростный, так что мы его не рассматриваем.
Описанный же метод с крокодильчиками тоже нельзя назвать идеально «чистым», поскольку мы все же разрезаем, пусть и слегка, внешнюю защиту витой пары. Хотя это никак не сказывается на функционировании провода и никаких обрывов соединения при грамотном исполнении этой манипуляции не случается.
ВЫВОДЫ
Опасность подобного пассивного прослушивания трафика сильно снижается в эпоху повсеместного использования SSL/TLS. Тем не менее ряд протоколов по‑прежнему использует открытую аутентификацию — это и всем известные сетевые диски, и FTP, и HTTP-Basic-аутентификация на прокси, и многое другое. И все это часто встречается в корпоративных сетях.
Поэтому стоит уделять внимание качественной прокладке кабеля. В случае если мы имеем дело с компаниями, недопустимо размещать открытые провода в неконтролируемом месте. Также нелишним было бы использовать короба, кабель‑каналы или скрытую прокладку кабеля.
Читайте ещё больше платных статей бесплатно: https://t.me/hacker_frei