Дорки. Инструмент пентестера.
Дорки (dorks) - термин появивщийся в середине нулевых, дословно переводящееся как "дурак" или "идиот". Так не лестно звали веб-мастеров которые не могли спрятать конфиденциальную информацию от индексации поисковыми системами.
Конечно это (дорки) нельзя назвать мощным и незаменимым оружием хакера, но полезной отмычкой в некоторых ситуациях вполне. Чем полезны дорки? С их помощью можно найти почти любую информацию: потенциально уязвимые страницы сайтов, вышеназванную конфиденциальную информацию (файлы с паролями, данные от MySQL базы, контактные данные и пр.) и много всего остального.
B Google, есть конкретные поисковые операторы, которые отвечают за поиск конкретного параметра. Например:
site: - после указания URL ищет всё касаемо данного сайта.
intext: - ищет сходства в тексте статей.
inurl: - ищет схожие URL (используется зачастую для поисков уязвимостей)
*: - подставляет вместо этого символа другие параметры (например запрос типа "site:*.google.com" будет искать поддомены Гугла, а запрос "site:google.*" будет искать сайты у которых в url написано google со всеми имеющимимися доменными зонами (ru, net, com, ua и т.д.)
filetype: - ищет файлы указанного расширения (txt, back, php, pdf и т.д.)
Более подробно о операторах поиска можете ознакомится самостоятельно.
Давайте на примере разберем, то о чем я говорил выше.
Поищем поддомены сайта Lego.
site:*.lego.com
Теперь поищем на его сайте файлы XML формата.
site:*.lego.com filetype:xml
А что если например вообще поискать все возможные (индексируемые) конфигурации MySQL? Думаете разработчики не до такой степени могут облажаться?
"database_password" filetype:yml "config/parameters.yml"
И откроем первые же два файла
Можно еще забежать в phpMyAdmin.
"phpMyAdmin" "running on" inurl:"main.php"
Откроем первые две ссылки
Если у кого-то возникла мысль, что дорки это всего лишь игрушки для несерьезных развлечений и практики на заведомо уязвимых-слабо защищенных целях, то вот два отчета (баг репорты) из HackerOne, где хакеры обнаружили файлы которые не должны быть публично досягаемы, при чем один из отчетов имеет статус critical (9 из 10). Вот он.
Этот репорт довольно свежий (2019 года). А второй тоже имеет высокую критичность (7-8) уже 2017 года.
Не удивительно, что пентестеры не могли обойти вниманием такой инструмент и не автоматизировать процесс, написав десятки программ по работе с дорками, не только гугловскими - Bing, DuckDuckGo, Google, Shodan и с десяток других поисковиков адаптированы под поиск уязвимостей либо конфиденциальной информации. Например созданы такие программы: SQLiv, ATSCAN, Bingoo, Zeus-Scanner, Photon, Goohak и много-много другого софта. Тот же SQLMAP умеет проверять сайты по очереди по введенному дорку на наличие SQL инъекции.
Кстати говоря о нахождении уязвимостей, для нахождения sql injection (sql инъекции в базу данных) пишем
view_item.php?id=
Переходим по первому же сайту и в конце URL ставим кавычку.
И как видим, база данных действительно уязвима к инъекции.