Всем привет, сегодня я расскажу, почему всегда нужно проверять сайты, на которых отсутствует директория /.
Еще по теме: Взлом правительственного сайта Нидерландов
Взлом сайтов с ошибкой 404 Not Found
Давайте будем честны — охота за багами очень утомительна, особенно если вы занимаетесь тестированием на проникновение в свободные от разработки часы. В связи с этим последнее время я замечаю, что в поисках критических уязвимостей многие багхантеры не проявляют интереса к сайтам с ошибкой 404 Not Found, которые выглядят следующим образом:
Здесь как нельзя лучше подходит поговорка «Мусор одного человека — сокровище другого». Многие охотники быстро отвернутся от таких сайтов (с кажущимся отсутствием контента). Однако если в директории / нет контента, это не значит, что его нет вообще.
Вся информация в данной статье, предназначена для обучения этичных хакеров (пентестеров). Использование представленной в статье информации для взлома сайтов без предварительного согласия является незаконным. Ни редакция spy-soft.net, ни автор не несут ответственности за ваши незаконные действия.
Взлом сайта с ошибкой 404 Not Found: Пример 1
В начале я запускаю свои привычные инструменты для перечисления поддоменов (*.example.com) и через некоторое время натыкаюсь на поддомен, возвращающий 404 Not Found. Будем считать, что это поддомен example1.example.com.
После обнаружения такого сайта я начинаю поиск контента. Для этого использую инструмент DirSearch с собственным списком слов.
Итак, я начинаю поиск контента с помощью следующей команды:
И результаты:
Итак, из 404 Not Found видно, что есть несколько статических страниц.
Далее поочередно перехожу на каждую из статических страниц и в какой-то момент нахожу в исходном коде следующее
С помощью ключа доступа и секретного ключа AWS можно получить доступ к бакетам S3, а также к внутренней инфраструктуре AWS.
Для проверки валидности секретов AWS можно воспользоваться следующим репозиторием.
Используем значения AWS Access Key и Secret Keys и запускаем тулзу.
Как видно из приведенного выше скрина, мы нашли учетные данные для AWS IAM. Пользователь также имеет доступ к API, но я приведу изображение выше только для подтверждения концепции.
Итак, я сообщил об этой уязвимости, выполнив подробные шаги, и получил следующий ответ:
Взлом сайта с ошибкой 404 Not Found: Пример 2
И снова начав с поиска поддоменов нахожу другой сайт (example2.example.com), на котором нет ничего, кроме каталога /.
Запустив DirSearch с моим словарем, я нашел эту веб-страницу:
1 |
https://example2.example.com/sites |
Которая выдает следующее:
html-содержимое показывает, что мы можем использовать параметр ?SiteID для загрузки статического сайта. Однако параметр SiteID уязвим для Reflected Cross-Site-Scripting. Сложность заключается в том, что длина параметра ограничена, поэтому нужно использовать максимально короткую полезную нагрузку XSS, а именно:
1 |
<svg/onload=alert()> |
И снова я сообщаю о находке:
Заключение
Я надеюсь, что эта методика была интересна для вас, и вы теперь не оставите ни один сайт без внимания. Надеюсь, это поможет вам в будущих заданиях и в поиске уязвимостей!
ПОЛЕЗНЫЕ ССЫЛКИ: