4.1.3 Исследование метафайлов веб-сервера на предмет утечки информации
В данном разделе описывается как с помощью файла robots.txt получить перечень директорий и файлов веб-приложения.
Цели тестирования
- Поиск утечек информации о путях к каталогу или папке веб-приложения.
- Создание списка каталогов , который стоит избегать при анализе пауками, краулера
Как тестировать?
robots.txt
Различные поисковые роботы получая веб-страницу рекурсивно извлекают из нее ссылки, которые затем будут использованы. Их поведение регулируется файлом robots.txt, расположенном в корне веб-приложения.
Ниже приведено содержимое файла robots.txt сайта google.com, датируемый 11 августа 2013 года:
User-agent: * Disallow: /search Disallow: /sdch Disallow: /groups Disallow: /images Disallow: /catalogs ...
Директива User-Agent относится к определенному роботу. Например, User-Agent: Googlebot относится к роботу от Google, в то время как User-Agent: bingbot относится к роботу от Microsoft/Yahoo. В рассмотренном нами примере директива User-Agent: * относится ко всем роботам.
Директива Disallow указывает ресурсы, запрещенные к индексированию роботами.
Роботы могут намеренно игнорировать директивы Disallow, указанные в файле robots.txt, таким могут заниматься роботы социальных сетей, проверяя доступность ссылок. Потому не стоит рассматривать robots.txt в качестве механизма ограничения доступа к какой-либо информации.
... Disallow: /search Disallow: /sdch Disallow: /groups Disallow: /images Disallow: /catalogs ...
Получение robots.txt с помощью wgetили curl
Файл robots.txt можно получить с помощью wget или curl:
$ wget http://www.google.com/robots.txt
--2013-08-11 14:40:36-- http://www.google.com/robots.txt
Resolving www.google.com... 74.125.237.17, 74.125.237.18, 74.125.237.19, ...
Connecting to www.google.com|74.125.237.17|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/plain]
Saving to: ‘robots.txt.1’
[ <=> ] 7,074 --.-K/s in 0s
2013-08-11 14:40:37 (59.7 MB/s) - ‘robots.txt’ saved [7074]
$ head -n5 robots.txt
User-agent: *
Disallow: /search
Disallow: /sdch
Disallow: /groups
Disallow: /images
$
$ curl -O http://www.google.com/robots.txt
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
101 7074 0 7074 0 0 9410 0 --:--:-- --:--:-- --:--:-- 27312
$ head -n5 robots.txt
User-agent: *
Disallow: /search
Disallow: /sdch
Disallow: /groups
Disallow: /images
$
Получение robots.txt с помощью rockspider
rockspider автоматически создает первоначальный список файлов и директорий веб-приложения для различных роботов, например, можно создать первоначальный список используя директиву Allowed:
$ ./rockspider.pl -www www.google.com
"Rockspider" Alpha v0.1_2
Copyright 2013 Christian Heinrich
Licensed under the Apache License, Version 2.0
1. Downloading http://www.google.com/robots.txt
2. "robots.txt" saved as "www.google.com-robots.txt"
3. Sending Allow: URIs of www.google.com to web proxy i.e. 127.0.0.1:8080
/catalogs/about sent
/catalogs/p? sent
/news/directory sent
...
4. Done.
$
Анализ robots.txt с помощью Google Webmaster Tools
Владельцы веб-приложений могут воспользоваться функцией Анализировать robots.txt, которая входит в состав Google Webmaster Tools (https://www.google.com/webmasters/tools), правда перед тем как использовать данные инструменты нужно подтвердить то, что вы являетесь владельцем тестируемого веб-приложения.
META Тег
META-тег «Robots» позволяет указывать роботам, можно ли индексировать данную страницу и можно ли использовать ссылки, приведенные на странице. Этот тег указывается на каждой конкретной странице, доступ к которой требуется ограничить. В этом простом примере: META NAME=»ROBOTS» CONTENT=»NOINDEX, NOFOLLOW» — робот не должен ни индексировать документ, ни анализировать стоящие на нем ссылки.
Для поиска тегов META на всех страницах стоит воспользоваться OWASP ZAP и дополнить полученными результатами список директорий и файлов, полученный из robots.txt.
Инструменты
- Браузер (Средство просмотра исходного кода)
- curl
- wget
- rockspider
Перевод подготовлен cпециально для канала t.me/FreedomF0x
Contact: t.me/freedomf0x t.me/Slippery_Fox twitter.com/FlatL1ne xmpp(жаба_ёпт):flatl1ne@freedomfox.im
При поддержке друзей: t.me/in51d3 t.me/NeuroAliceMusic t.me/vulnersBot t.me/darknet_prison
Our private (no logs) xmpp server: FreedomFox.im (for add, write to admin@freedomfox.im)
Хорошо там где нас нет (с) Русские хакеры
Добре там де нас немає (с) Російські хакери