Летом 2023 года, в рамках стажировки в одной из компаний, специализирующейся на пентесте, мне был поручен проект автоматизации создания Ethernet/Wi-Fi моста на Raspberry Pi для возможности проникновения в корпоративные сети через не защищенные сетевые розетки. Проект оказался успешным, и сегодня я хочу поделиться этим опытом. Особенно актуально это в русскоязычном сегменте интернета, где информации по этой теме мало.

В этой статье мы рассмотрим процесс создания и автоматизации моста Ethernet/Wi-Fi с
использованием Raspberry Pi и обсудим потенциальные угрозы безопасности,
которые могут возникнуть для корпоративных сетей

Ethernet/Wi-Fi мост (Ethernet-to-Wi-Fi bridge или Wi-Fi-to-Ethernet bridge) - это устройство или программное решение, которое позволяет соединять две разные сети: проводную сеть Ethernet и беспроводную сеть Wi-Fi, обеспечивая обмен данными между ними. Пентестер или редтимер, находясь физически внутри компании, может обнаружить сетевую розетку, подключить к ней "мост", который начинает работать как точка доступа. Подключившись к этой точке доступа, можно получить доступ во внутреннюю сеть компании.

Немного о «Малинке»

Raspberry Pi - это мини-компьютер, разработанный и производимый британской фирмой Raspberry Pi Foundation. Он создан с целью обеспечить доступный и простой в использовании компьютер, который может быть использован для обучения программированию, электронике, робототехнике и другим приложениям. Raspberry Pi отличается небольшим размером, низкой стоимостью и низким энергопотреблением, что делает его идеальным выбором для различных задач.

Выбор устройств семейства raspberry Pi достаточно широк, однако для данного  проекта мой выбор пал на модель Raspberry Pi 4B. Эта модель представляет собой мощный одноплатный компьютер, способный справляться с разнообразными задачами. С 4 ГБ оперативной памяти и процессором ARM Cortex-A72, тактовая частота которого достигает 1.5 ГГц, он обеспечивает высокую производительность. Четыре порта USB позволяют подключить множество устройств, а встроенная поддержка Wi-Fi и Bluetooth делает Raspberry Pi 4b идеальным кандидатом для создания моста Ethernet/Wi-Fi и подобных задач.

Подготовка к работе

Для начала, вам потребуется Raspberry Pi и карта Micro SD с установленной операционной системой Raspberry Pi OS. Для установки ОС, используйте Raspberry Pi Imager, который можно скачать и установить на вашем устройстве. После установки, выберите необходимую версию ОС и карту памяти, а затем выполните запись.

Теперь можем перейти непосредственно к настройке и автоматизации работы самого моста.  Есть несколько способов сделать это, но сначала нам необходимо обновить ОС нашей «Малины», делается это в терминале,  с помощью команд :

sudo apt-get update
sudo apt-get full-upgrade
sudo reboot

Теперь приступим непосредственно к созданию «моста». Как уже упоминалось выше, есть несколько способов. Самые популярные это использование HostAPD и bridge-utils,  это мощные инструменты, которые можно использовать для создания точки доступа Wi-Fi и настройки моста между Ethernet и Wi-Fi интерфейсами на Raspberry Pi. HostAPD позволяет превратить ваш Raspberry Pi в точку доступа Wi-Fi, предоставляя возможность управлять параметрами сети, такими как SSID и безопасность. Затем, с помощью bridge-utils, вы можете создать мост между Ethernet и Wi-Fi, что позволит устройствам обмениваться данными между сетями.

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

RaspAP - это проект с открытым исходным кодом, который позволяет создавать беспроводные маршрутизаторы из различных популярных устройств, работающих на операционной системе Debian, включая Raspberry Pi. Он предлагает удобный веб-интерфейс для настройки, включает в себя блокировщик рекламы и обеспечивает маршрутизацию сетевого трафика через протоколы OpenVPN или WireGuard.
Устанавливается RaspAP из командной строки, командой:

curl -sL https://install.raspap.com | bash

После установки, Raspberry Pi будет автоматически перезагружен, и настройки RaspAP будут установлены по умолчанию.

На этом этапе, самое сложные мы уже сделали. Теперь при каждой загрузке Raspberry Pi, RaspAP будет так же автоматически включаться и если подключить RPi к Ethernet-розетке, то мы автоматически получим точку доступа. Но, если вы обратили внимание на дефолтные настройки, которые имеет RaspAP после установки, то обнаружили работающий DHCP, т.е. у нас будет своя отдельная подсеть, что не входило в наши планы.

         Давайте это исправим, тем более это делается очень просто.

Перейдем к настройке RaspAP через веб-интерфейс. Введите адрес по умолчанию (10.3.141.1), имя пользователя (admin) и пароль (secret), чтобы получить доступ к веб-интерфейсу RaspAP. Перейдите на вкладку Hotspot > Advanced и активируйте переключатель Bridged AP mode.

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

Тестирование

На протяжении всей статьи мы настраивали RPi для его автоматизированной работы в качестве Ethernet/WiFi моста. Теперь настало время проверить наши настройки и работу Raspberry Pi в условиях приближенных к боевым.

В качестве тестовой среды я предлагаю использовать небольшую локальную сеть, состоящую из двух ПК и сервера под управлением Windows Server 2008. Эта сеть маршрутизируется через роутер.

Сервер, как вы уже поняли, имеет IP-адрес 192.168.1.4.

А в это время, подключенная к сети «Малинка» начала раздавать доступ к нашей сети. Я специально дал понятное название сети, чтобы его было легко идентифицировать.

Судя по полученному IP-адресу, машина с Kali, находится в целевой сетке.

Но все таки стоит проверить. Поэтому проводим сканирование сети с использованием, всем хорошо знакомой утилиты, NMAP.

После окончания сканирования, мы получаем вывод устройств находящихся в сети. Одному из которых принадлежит IP-адрес целевого сервера. Давайте проведем более целенаправленное  сканирование.

Из вывода работы сканера мы получили подтверждение того, что по адресу: 192.168.1.4 действительно находится машина с установленным серверным ПО. Узнав версию которого, мы можем предположить наличие уязвимости BlueKeep, которая имеется в службе RDP, Windows Server 2008. Открытый порт 3389 нам говорит о, активной работе службы.

Используя Metasploit, мы в этом убеждаемся.

Следовательно, мы удостоверились в том, что наш настроенный мост функционирует без каких-либо проблем.

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