Взлом роутера обычно является либо самой простой, либо самой сложной задачей - его сложность варьируется от ввода имени пользователя и пароля по умолчанию, и ты максимально заебёшься, пытаясь попасть внутрь роутера по telnet или ssh. В обоих этих случаях перебор паролей не очень полезен, но это довольно простой метод, мы ведь не ищем лёгких путей, да? Однако я скажу тебе следующее: Это все еще роутер, который я использовал в своей домашней сети, потому что он предоставляется моим интернет-провайдером, и поскольку он является одним из основных поставщиков в моей области, многие люди страдают от этих уязвимостей. Ну ладно, теперь к делу. ЭТАП I. НАЙДИ IP РОУТЕРА. Так как это самый простой шаг, и есть бесчисленное множество способов сделать это, я просто приведу несколько различных возможностей: Проверка сетевых настроек с помощью панелей настроек ОСИспользование ipconfig в Windows и ifconfig на машинах Unix из терминалаИспользование Fuzzer в качестве инструмента обнаружения цели.Найденный мной IP роутера - 192.168.0.1 ЭТАП II. СОБЕРИ ТРАФФИК. Я решил, что хороший способ начать, будет исследовать веб-сервер роутера для чего-то за пределами того, что видно невооружённым глазом. По этой причине я использовал HTTPView и проанализировал трафик от первой попытки входа в систему. Чтобы помочь себе, я применил некоторые фильтры, чтобы избавиться от медиа и стилей ответов с сервера. Вот результат, который я добыл: Этой информации нам хватит. ЭТАП III. ПРОАНАЛИЗИРУЙ ТРАФФИК И НАЙДИ УЯЗВИМОСТИ. Теперь, когда у нас есть нужное количество данных, мы должны проанализировать его, чтобы увидеть, наткнулись ли мы на что-то интересное. Сразу можно игнорировать все файлы jQuery, а также языковые файлы или, по крайней мере, не начинать поиск оттуда. Поскольку я работаю в Chrome, я не могу анализировать ответы прямо из HTTPView, поэтому мне нужно реплицировать запрос в Rest и выполнять там анализ. Есть этот интересная штука, которую я нашел в /menu.html Присмотрись хорошенько. Хотя определение функции readCookie отсутствует, можно с уверенностью предположить, что она считывает файл cookie, а userData-это имя этого файла cookie. Из строки 247 мы можем сделать вывод, что значение этого файла cookie должно быть root. Чтобы изменить куки, я использовал расширение EditThisCookie и добавил файл куки с уже упомянутым именем и значением и вуаля, мы внутри.. Всё так просто? ЭТАП IV. ПРОСКАНИРУЙ РОУТЕР НА НАЛИЧИЕ ДРУГИХ ROOT'ОВ. Если мы попытаемся перемещаться в любом месте, мы встретим тот же экран входа в систему. Есть что-то еще, необходимое для изменения настроек роутера. Однако, у нас есть доступ к гораздо большему количеству страниц, поэтому я думаю, что стоит сделать сканирование на маршрутизаторе. Для этого я буду использовать сканер с уже установленным файлом cookie userData=root. В addiotion я включу опцию "направленное сканирование" на вкладке второго пилота, чтобы сканер полагался на мои действия в качестве ввода. После запуска сканера перейдите к 5-10 страницам на маршрутизаторе, которые требуют входа в систему, например /basicSetup.html и / или basicDHCP.html и пусть инструмент делает свою работу. После того, как траффик перестал поступать, мы можем проанализировать результаты для интересных выводов. Для этого я предпочитаю сортировать результаты по пути, чтобы убедиться, что я не пропустил ни одного важного файла или каталога. И через некоторое время я столкнулся с этим: ЭТАП V. ПОЛУЧИ ПОЛНЫЙ КОНТРОЛЬ. DocsisConfigFile.xml - это обычно файл, который содержит кучу полезной информации о конфигурации маршрутизатора, посмотрим, что внутри: Да, всё так просто. Это определенно работает - файд содержит много интересной информации, включая имя пользователя и пароль в обычном тексте, благодаря которым мы и получили полный доступ. Вся информация предоставлена лишь для ознакомления и не призывает к действиям. Автор не несет ответственности за использование этой информации.