Мы покажем, как пассивно перехватить Ethernet трафик на физическом уровне, используя лишь знание устройства витой пары и обычные крокодиловые зажимы.
Говорят, подслушивать — некрасиво. В обычной жизни — да. Но в сетевом мире внимательно слушать трафик — это работа. Сетевая форензика, реагирование на инциденты, аудит безопасности — всё это основанно на умении наблюдать за тем, как перемещаются данные. При этом многие почему-то считают, что для перехвата трафика нужно какое-то хитрое дорогостоящее оборудование из секретной лаборатории. Спешим разочаровать — всё гораздо проще.
Подпишись на наши каналы в телеграме и в Max, там ты найдешь огромное количество качественного контента, без инфошума и воды!
Имея базовое понимание того, как работает Ethernet, и несколько дешевых компонентов, можно организовать перехват трафика буквально подручными средствами — теми самыми крокодиловыми зажимами. Техника не новая, но живучая — именно за счёт своей простоты и эффективности. Речь идёт о полудуплексном перехвате трафика на витой паре RJ45. Полудуплекс здесь означает, что мы снимаем только одно направление — либо входящий трафик, либо исходящий, но не оба сразу. Казалось бы, давно известный приём — но он до сих пор работает, потому что витая пара Ethernet никуда не делась. Оптика наступает, но медный кабель по-прежнему широко распространен.
Кабели витой пары зачастую проложены совершенно открыто — по лестничным клеткам, подвалам и техническим шахтам.

Такая физическая доступность делает перехват значительно проще, чем принято думать.

Атака может быть проведена в любом месте, где есть беспрепятственный доступ к Ethernet кабелям — будь то офисный коридор, серверная или подъезд обычного жилого дома.
Теория
Начнём с краткого повторения устройства кабеля RJ45. Стандартный Ethernet кабель содержит четыре пары скрученных (для подавления электромагнитных помех и снижения утечки сигнала) проводов.

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

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

Белый зажим — положительный контакт, чёрный — отрицательный. Конструкция выглядит грубовато, однако этого достаточна для решения поставленной задачи.
Эксплуатация
Непосредственный перехват трафика начинается с подключения зажимов-«крокодилов» к целевому кабелю. В зависимости от того, в каком направлении требуется захватить трафик, зажимы подсоединяются либо к оранжевой, либо к зелёной паре прослушиваемого Ethernet кабеля.

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

В демонстрационных целях в качестве устройства захвата используется смартфон на Android. Ряд внешних Ethernet адаптеров автоматически распознаётся Android, а при наличии root-прав никакой дополнительной настройки не требуется. В простой тестовой конфигурации смартфон успешно захватывает трафик, передаваемый от одного ноутбука к другому — опять же только в одном направлении.

Воспользуемся скриптом, который не только сохраняет трафик для последующего анализа, но и разделяет экран смартфона на три функциональные области.
#!/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 Мбит/с в передаче данных участвуют все восемь проводников, а метод кодирования сигнала полностью меняется. Вместе с тем согласование гигабитной скорости не всегда проходит успешно. Даже при наличии всех восьми проводников и длине кабеля всего в несколько метров многие соединения откатываются до 100 Мбит/с. В таких случаях соединение остаётся уязвимым для данной техники перехвата.
Если канал работает на скорости 1000 Мбит/с, перехват с помощью одних лишь зажимов-«крокодилов» невозможен. Однако эксперименты показывают: если перерезать одну из дополнительных пар проводников (синюю или коричневую), канал автоматически перейдёт на скорость 100 Мбит/с после небольшой задержки, после чего перехват снова станет возможным. Во многих корпоративных средах для питания IP-телефонов и других устройств применяется технология Power over Ethernet. PoE использует именно эти дополнительные пары проводников, а значит, реальная работа на гигабитной скорости на таких каналах зачастую в принципе невозможна.
Продемонстрированная атака является сугубо пассивной: мы наблюдаем за трафиком, не модифицируя его. Активные атаки — такие как SSLsplit или man-in-the-middle — теоретически возможны, однако они более инвазивны (требуют разрезания кабеля, обжима разъёмов и встраивания оборудования в разрыв линии). Все эти действия заметны, сопряжены с рисками и значительно легче обнаруживаются. По этой причине они не рассматриваются в данном материале.
Хотя метод с зажимами-«крокодилами» нельзя назвать аккуратным — поскольку он предполагает вскрытие внешней оболочки кабеля — при аккуратном выполнении он не нарушает связность соединения. Пакеты не теряются, и никаких видимых признаков вмешательства не появляется.
Итоги
Риски, связанные с пассивным перехватом трафика, сегодня снижены благодаря широкому распространению SSL и TLS. Тем не менее многие протоколы по-прежнему передают чувствительные данные в открытом виде. Сетевые ресурсы общего доступа, FTP, устаревшие механизмы аутентификации и HTTP Basic authentication по-прежнему часто встречаются в корпоративных средах. В связи с этим физическая безопасность сети сохраняет свою актуальность. Открыто проложенные кабели в неконтролируемых зонах недопустимы. Кабельные каналы и скрытая прокладка являются простыми мерами, позволяющими сократить поверхность атаки.
Понимание того, каким образом данные могут быть перехвачены на физическом уровне, позволяет более точно оценивать риски и проектировать сети с меньшим числом уязвимых мест.
Подпишись на наши каналы в телеграме и в Max, там ты найдешь огромное количество качественного контента, без инфошума и воды!