• XSS.stack #1 – первый литературный журнал от юзеров форума

Статья Поднимаем OpenVPN сервер на взломанных роутерах TP-Link

Hagrid

CD-диск
Пользователь
Регистрация
09.12.2018
Сообщения
18
Реакции
31
Всем привет. Решил и я поучаствовать в конкурсе. Сегодня я расскажу как прошивать сбрученные роутеры кастомной прошивкой со встроенным OpenVPN сервером. Данный способ будет хорош тем, что если хозяин роутера решит сбросить настройки кнопкой RESET, то настройки не сбросятся и наш VPN сервер будет работать. За основу мы возьмем два самых популярных бюджетных роутера TP-Link моделей WR740 (v4) и WR841 (v8). Собирать прошивку будем на Ubuntu 18.04 LTS
Для начала установим все зависимости на убунте:
Код:
sudo apt install python-setuptools python-pip
sudo pip install pycrypto
Затем скачаем архив с билдером прошивки ТЫЦ и распакуем его в /home директорию. В архиве есть папки wr740 и wr841 с конфигурационными файлами, которые мы будем редактировать в зависимости от модели роутера на который зальем прошивку.

С этим разобрались. Перейдем к редактированию конфигов. Первым делом заходим в интерфейс сбрученного роутера и смотрим доступна ли загрузка прошивки в Системные инструменты — Обновление встроенного ПО. Если кнопка «Обзор» активна, то роутер доступен для прошивки.
1.png

Далее идем в Сеть — WAN смотреть тип подключения. Если это PPPoE, нужно будет узнать пароль от подключения, так как стандартная прошивка TP-Link не даст его посмотреть даже через исходный код страницы. Для этого на гитхабе я нашел скрипт, который находится в папке Python. Он и покажет нам скрытый пароль, но прежде нужно получить файл резервной копии по пути Системные инструменты — Резервное копирование
2.png

Кладем файл резервной копии config.bin в одну папку со скриптом и выполняем script.py Должен появится файл config.bin.txt в нем и будет наш заветный логин и пароль от PPPoE соединения.
3.png

Впишем полученные данные в файл конфигурации /etc/config/network в блок «config interface ‘wan'» Не забываем вписать в строку ‘option macaddr’ MAC-адрес из раздела «Состояние» пункта ‘WAN’. Адрес указываем в формате двоеточие
4.png

Если же у нас в Сеть — WAN тип подключения «Динамическое» или «Статическое» то обойдемся стандартным конфигом, просто заменив MAC-адрес
5.png
 
Переходим далее. Чтобы у владельца не отвалились все подключенные беспроводные устройства нам нужно настроить точку доступа Wi-Fi. Заходим на роутере в Беспроводной режим — Защита беспроводного режима, смотрим пароль и записываем его в файл /etc/config/wireless в строку ‘option key’. Имя сети узнаем в разделе «Настройка беспроводного режима» и так же указываем её в строке ‘option ssid’. MAC- адрес вписываем в строку ‘option macaddr’ из раздела «Состояние» пункта «Беспроводной режим»
6.png

Для настройки самого OpenVPN сервера есть конфиг /etc/config/openvpn. В нем нужно пересмотреть имена сертификатов и ключей, которые вы должны самостоятельно создать. Как их сгенерировать я описывать лишний раз не буду, все гуглится по запросу «Генерация ключей и сертификатов OpenVPN». Созданные сертификаты переносим в папку /etc/openvpn. Должно получиться так:
7.png

Остался последний штрих перед сборкой прошивки — настройка динамического DNS. Почти все современные провайдеры выдают динамический IP адрес, и в случае перезагрузки роутера мы рискуем потерять контроль над ним. Чтобы этого не случилось, зарегистрируемся на сервисе No-Ip и создадим hostname. Далее в конфигурационном файле /etc/config/ddns указываем логин, пароль и созданный хост в строках ‘option username’, ‘option password’ и ‘option domain’
8.png

Теперь можно приступать к сборке образа прошивки. На этих бюджетных моделях памяти выделено не много (4MB), поэтому собирать будем только с необходимыми пакетами. Открываем консоль и переходим в папку ImageBuilder. В зависимости от модели вводим в терминале следующую команду:
make image PROFILE=TLWR740 PACKAGES='nano openvpn uci luci kmod-ath9k ddns-scripts -ip6tables -kmod-ipv6 -odhcp6c -kmod-usb2 -kmod-usb-core' FILES=wr740/
make image PROFILE=TLWR841 PACKAGES='nano openvpn uci luci kmod-ath9k ddns-scripts -ip6tables -kmod-ipv6 -odhcp6c -kmod-usb2 -kmod-usb-core' FILES=wr841/
При успешной компиляции в папке bin вы увидите множество файлов. Нам нужен всего один «openwrt-ar71xx-generic-tl-[модель]-[версия]-squashfs-factory.bin». В моем случае будем прошивать TLWR841 V8 значит берем файл openwrt-ar71xx-generic-tl-wr841n-v8-squashfs-factory.bin , заливаем его в Системные инструменты — Обновление встроенного ПО и нажимаем «Обновить». Пойдет строка прогресса, дождемся 100% завершения.

Подождав пару минут, можно заходить на хост, котрый вы зарегистрировали на сервисе No-Ip. В случае успешной прошивки вы увидите панель OpenWRT. Стандартная комбинация для авторизации root:admin Так же маршрутизатор будет доступен по SSH на 22 порту.
9.png

Пробуем подключиться и по OpenVPN. Конфигурация для клиента будет выглядеть так:
client
dev tun
proto udp
remote ricardohost.ddns.net 1194
ca ca.crt
cert client.crt
key client.key
tls-client
tls-auth ta.key 0
auth SHA1
cipher AES-128-CBC
verb 1
mute 10
keepalive 30 120
persist-key
persist-tun
float
nobind
route-method exe
route-delay 5
route 10.8.0.0 255.255.255.0
Congratulations!
10.png

На этом все. Всем спасибо. Голосуйте за статью на конкурсе и расскажите о ней друзьям.
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Хороший материал
 
Хороший материал
Автор молодец, годные статьи начинаются наконец то.
Спасибо, старался
P.S admin, добавь количество прикрепляемых изображений к посту, 5 очень мало
 
что за бредятина, ставим openwrt на все уязвимые роутеры, а потом лишь накатываем пакет с openvpn?
 
что за бредятина, ставим openwrt на все уязвимые роутеры, а потом лишь накатываем пакет с openvpn?

После прошивки ты потеряешь доступ к роутеру, по этому привязываем но-ип
тем самим конфиг но-ип остается вшит в прошивке, и сброс через хард ресет не поможет юзеру
только если он накатит другую прошику, но на опенврт это сделать не просто
 
что за бредятина, ставим openwrt на все уязвимые роутеры, а потом лишь накатываем пакет с openvpn?
Читай внимательней. Скачиваешь билдер прошивки, правишь конфиги под определенный роутер, билдишь и только потом заливаешь файл прошивки на роутер. После ничего делать не нужно
 
Читай внимательней. Скачиваешь билдер прошивки, правишь конфиги под определенный роутер, билдишь и только потом заливаешь файл прошивки на роутер. После ничего делать не нужно

Интересно бы было найти способ заливать прошивки если пк не подключен в лан порт роутера
Дошел только до того, что роутер не дает шить по причине того, что я не в одной подсети с ним
это был tp-link wr940n
 
И так че то мне подсказывает что тема пиз*ешь!
вот почему:
1 - 60% роутеров попадаются где кнопка апгрейд не активна
2 - 40% не дают шить удаленно по причине того, что я не нахожусь в одной подсети с роутером

Итог
Либо ТС делал статью на своем роутере
либо ему очень повезло!
Мне не удалось прошить не одного роутера!!
 
И так че то мне подсказывает что тема пиз*ешь!
вот почему:
1 - 60% роутеров попадаются где кнопка апгрейд не активна
2 - 40% не дают шить удаленно по причине того, что я не нахожусь в одной подсети с роутером

Итог
Либо ТС делал статью на своем роутере
либо ему очень повезло!
Мне не удалось прошить не одного роутера!!
Какие роутеры пытаешься шить? В начале статьи указано, что будем шить модели WR740 (v4) и WR841 (v8). Стандартная прошивка этих моделей позволяет шить удаленно
 
Какие роутеры пытаешься шить? В начале статьи указано, что будем шить модели WR740 (v4) и WR841 (v8). Стандартная прошивка этих моделей позволяет шить удаленно

ну так ты написал два самых популярных бюджетных роутера TP-Link моделей WR740 (v4) и WR841 (v8).
а не два версии которые шьются :)
 
Спасибо за статью. У меня есть вопросы.

I. Правильно ли я понимаю, что автор предлагает поставить вместо нативной проишивки прошивку от OpenWRT? Если да, то будет ли дефейснута web-морда настроек рутера? Если будет дефейснута, то проникновение будет обнаружено и, скорее всего будут приняты меры.

II.
скачаем архив с билдером прошивки ТЫЦ и

Откуда взят билдер? Дайте pls ссылку на гитхаб или оригинал кода.

III. Если одному удалось взломать точку доступа и пароль к рутеру, значит это удасться и другому. Менять пароли на более сложные нельзя, так как это обнаружит взлом и отрубит беспроводные клиенты жертвы. Есть ли какие-то способы предотвратить взлом рутера другим хакером? Иначе он так же получит доступ и зальёи уже свою прошивку.

UPD.
Не сразу посмотрела на дату поста и поняла, что занимаюсь некропостингом. Всё равно оставлю вопросы, может кто-то другой знает и ответит.
 
Последнее редактирование:


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх