
Эксплуатация маршрутизатора TP-Link Archer CR-700. (Ответственно раскрыто компании TP-Link)
Эксплуатация роутера TP-Link Archer CR-700. (Ответственно раскрыто в TP-Link)
Шаг 1 -> На вашей Linux-машине (Kali или Ubuntu) введите следующую команду
gedit /etc/dhcp/dhclient.conf
Закомментируйте строку ниже #send host-name = gethostname();
Скопируйте её в строку под ней и замените функцию gethostname() на XSS-скрипт, как показано ниже.
send host-name = "<script>alert(5)</script>";
Шаг 2: Перезагрузите вашу систему Linux, чтобы изменения вступили в силу.
Шаг 3: Отправьте DHCP-запрос на роутер, чтобы получить IP-адрес, с помощью приведённой ниже команды. (Попробуйте это на любом открытом сетевом роутере, в котором используется TP-Link Archer CR-700)
dhclient -v -i wlan0
При выполнении приведённой выше команды на роутер отправляется DHCP-запрос. При DHCP-запросе отправляется имя хоста, которое мы принудительно задали как XSS-скрипт <script>alert(5)</script>
Шаг 4: Войдите в консоль администратора.
При входе скрипт выполняется.
Ещё одна проблема, которую я увидел в роутере, заключалась в отсутствии CSRF-токена. Cookie, устанавливаемый роутером, содержит имя пользователя и пароль в кодировке base64, которые можно похитить с помощью XSS-скрипта.
Примечание: вся вышеуказанная информация была раскрыта в TP-Link, которые воспроизвели проблему и передали её в свой отдел исследований и разработок (R&D) для исправления.
Ссылка на продукт: https://www.amazon.com/Wireless-Certified-Cablevision-Archer-CR700/dp/B012I96J3W