Каким образом eBlocker автоматически перехватывает сетевой трафик?

Каким образом eBlocker автоматически перехватывает сетевой трафик?

eBlocker (http://www.eblocker.com) — это программное обеспечение, работающее на Raspberry Pi и аналогичных архитектурах (Banana Pi и т. д.) с целью блокировки нежелательных веб-трекеров и рекламы.

Меня удивило то, что Pi достаточно подключить к стандартному порту Ethernet на маршрутизаторе потребителя (а не к порту мониторинга или чему-то подобному), после чего (в течение нескольких минут) он будет перехватывать весь HTTP-трафик (не HTTPS) на любом устройстве в сети, подключенном как по кабелю, так и по беспроводной сети.

Не было необходимости настраивать устройство в качестве шлюза ни на клиентских устройствах, ни на маршрутизаторе, и мне вообще не нужно было вносить какие-либо изменения в сетевые настройки — оно просто автоматически настраивалось на всех устройствах, независимо от того, работают ли они под управлением Windows, OS X, iOS, Android, Linux или пользовательских сетевых стеков микроконтроллера.

Я связался с производителем устройства, но, по понятным причинам, они хотят сохранить эту информацию в тайне.

Я провел некоторые исследования и подозреваю, что здесь могут быть задействованы UPnP или ZeroConf, но я слишком мало разбираюсь в этих технологиях, чтобы сделать однозначную оценку.

Итак, у меня два взаимосвязанных вопроса:

Как eBlocker это делает? (Я с радостью проведу любое расследование, необходимое для получения окончательного ответа.) Вызывает беспокойство тот факт, что кто-то без доступа к машинам в сети (т. е. без паролей, без доступа к BIOS и т. д.), но с физическим доступом к маршрутизатору может установить устройство, которое будет захватывать весь сетевой трафик. Какие методы на потребительском маршрутизаторе (работающий под управлением OpenWrt) защитят от этого?

Обновлять: вот инструкции по установке eBlocker, на случай, если это поможет определить метод.

  1. Подключите порт Ethernet Raspberry Pi / Banana Pi к интернет-маршрутизатору или к свободному порту Ethernet вашего коммутатора.
  2. Подключите кабель micro-USB к Raspberry Pi / Banana Pi и подключите его к адаптеру питания.
  3. Подождите 5 минут, пока Raspberry Pi / Banana Pi завершит загрузку и настройку.
  4. Посетите случайный веб-сайт с HTTP (не HTTPS). Значок eBlocker будет показан в правом верхнем углу экрана. Он показывает, что eBlocker активен и вы защищены. При нажатии на значок откроется панель управления eBlocker, которая позволит выполнить дальнейшую настройку

Автоматическая конфигурация

Если автоматическая настройка сети не работает в вашей сетевой среде, мы рекомендуем использовать сетевой мастер eBlocker для ручной настройки...

Автоматическая настройка работает только в одном сегменте сети.

Автоматическая конфигурация распознает только сетевые устройства в одном сегменте сети (например: 192.168.1.X и 192.168.2.X не находятся в одном сегменте сети). Если вы используете два разных сегмента сети и оба должны использовать eBlocker, пожалуйста, настройте eBlocker вручную как шлюз для доступа в Интернет. В eBlocker, пожалуйста, установите ваш исходный интернет-шлюз как «шлюз».

Сети IPv6 и сети IPv4 без DHCP

Домашние сети, использующие только новый протокол IPv6, пока не поддерживаются. В сетях IPv4 без DHCP-сервера eBlocker необходимо настроить вручную как шлюз. Для этого подключитесь к eBlocker, используя IP-адресhttp://169.254.94.109:3000/. Ваш интернет-клиент должен находиться в том же сегменте сети, 169.254.94.0/24.

решение1

Я предполагаю, что он используетОтравление кэша ARPперенаправлять все пакеты, отправленные на шлюз по умолчанию, на себя. Как человек посередине он мог бы проверять http-трафик и пересылать или отбрасывать его. Он также мог бы вставлять html-объекты в http- (но не https)-разговор между хостами локальной сети и интернет-сайтами.

решение2

Сначала eblocker ищет MAC-адреса всех активных IP-станций в подсети. Затем он отправляет несколько кадров ARP-ответа каждой станции, сообщая, что MAC-адрес шлюза по умолчанию является MAC-адресом eblocker.

Это изменит ARP-кэш во всех узлах подсети.

Такие инструменты, как Wireshark, отправляют предупреждения: обнаружены дубликаты IP-адресов на разных MAC-адресах

Связанный контент