Google — это не просто поисковик для рецептов и мемов. Он также может быть отличным инструментом разведки, если знать, как им пользоваться. Именно этим занимается Google Hacking Database (GHDB) — огромная коллекция поисковых запросов (дорков), которые помогают находить уязвимости, чувствительные данные и конфиденциальную информацию, случайно попавшую в индекс поисковика.
Дорки (dorks) — это специальные комбинации операторов поиска Google, которые позволяют сужать результаты и находить очень специфические вещи: от открытых веб-камер до конфигурационных файлов с паролями.
Зачем это нужно?
Примеры использования:
- Пентестеры используют дорки для разведки целей перед тестированием на проникновение.
- Специалисты по безопасности проверяют, не утекли ли данные их компаний в индекс.
- CTF-игроки решают задания на основе публично доступной информации.
- Исследователи изучают поверхность атаки веб-приложений.
Важно о легальности
Использование Google Dorks для поиска уязвимостей на чужих ресурсах может нарушать законы. Все нижеописанные примеры предоставлены только в образовательных целях. Никогда не атакуйте или не анализируйте ресурсы, которые вам не принадлежат или не разрешены к исследованию.
Базовые операторы Google
Прежде чем копаться в дорках, полезно понимать, из чего они состоят. В Google существует ряд поисковых операторов — специальных команд, которые позволяют фильтровать и структурировать результаты. Именно благодаря этим операторам дорки и работают. Вот основные из них:
-
site: — ограничивает поиск результатами только с определённого сайта или домена.
Пример:site:example.com
— найдёт только страницы с домена example.com. -
inurl: — ищет указанный текст в URL страницы.
Пример:inurl:admin
— найдёт страницы, в адресе которых есть слово "admin". -
intitle: — ищет указанный текст в заголовке HTML-страницы (теге <title>).
Пример:intitle:"login page"
— найдёт страницы, заголовки которых содержат "login page". -
intext: — ищет указанный текст в теле страницы, то есть в основном контенте.
Пример:intext:"username=admin"
— найдёт страницы, где в тексте встречается "username=admin". -
filetype: — ищет документы определённого формата.
Пример:filetype:pdf budget
— найдёт PDF-файлы, содержащие слово "budget".
Эти операторы можно комбинировать для создания сложных дорков. Например:
site:gov.uk filetype:xls intext:"password"
Этот запрос найдёт Excel-файлы на домене .gov.uk, содержащие слово "password" в тексте. Кто знает, может быть, и с настоящими паролями (но лучше не проверять).
30+ примеров из Google Hacking Database
Поехали. Вот подборка наиболее интересных и полезных дорков, сгруппированных по типам находок:
Конфигурационные файлы и логи
intitle:"index of" "config.php"
— находит открытые директории с конфигурацией PHP-приложений (можно наткнуться на пароли к БД).filetype:log inurl:"/logs/"
— ищет лог-файлы, часто содержащие внутренние ошибки и адреса.ext:env intext:"APP_KEY="
— ищет `.env`-файлы Laravel с API-ключами и паролями.
Базы данных и дампы
filetype:sql intext:"-- phpMyAdmin SQL Dump"
— ищет дампы баз данных, выгруженные через phpMyAdmin.ext:sql intext:"password"
— общая попытка найти SQL-файлы, содержащие пароли.filetype:db inurl:/backup/
— ищет SQLite и другие базы данных в публичных бэкапах.
Пароли и учетные данные
filetype:txt intext:"password="
— часто обнаруживает текстовые файлы с логинами и паролями.intitle:"index of" passwd
— классика: директории, содержащие файлы Unix-подобных систем.inurl:"wp-config.php.bak"
— резервные копии конфигов WordPress с паролями к MySQL.
Камеры и потоковое видео
inurl:"view/view.shtml"
— доступ к камерам AXIS.intitle:"Live View / - AXIS"
— интерфейсы живого видеопотока.inurl:"/cgi-bin/guestimage.html"
— доступ к камерам без авторизации.
Панели администрирования
intitle:"Admin Login" inurl:admin
— страницы входа в админку.inurl:adminlogin.aspx
— админки на ASP.NET.intitle:"phpMyAdmin" "Welcome to phpMyAdmin"
— открытые интерфейсы phpMyAdmin (иногда даже без пароля).
Внутренние документы и приватные файлы
filetype:xls intext:"username"
— Excel-файлы с логинами.filetype:pdf confidential
— PDF-документы, содержащие пометку "конфиденциально".filetype:doc site:docs.google.com
— документы Google Docs, попавшие в индекс (по ошибке или намеренно).
Ошибки и отладочная информация
intext:"Notice: Undefined variable"
— PHP-приложения с ошибками, выдающими внутреннюю информацию.intitle:"Apache2 Ubuntu Default Page"
— свежие и необжитые сервера.intitle:"Index of /" +passwd
— открытые директории, содержащие чувствительные данные.
Файлы резервных копий
ext:bak | ext:old | ext:backup
— общая категория расширений для бэкапов.inurl:backup intext:sql
— директории с резервными копиями баз.inurl:backup filetype:zip
— zip-архивы, часто содержащие полные копии сайтов.
Интересные специфические цели
inurl:".git" intitle:"Index of"
— публичные репозитории Git с возможностью скачать `.git/config`.intitle:"index of" "secrets.json"
— конфиги Node.js-приложений с API-ключами.intitle:"index of" +".ssh"
— директории, содержащие SSH-ключи.
Поиск по типу оборудования или CMS
inurl:"wp-content/plugins/"
— WordPress-плагины, уязвимые версии которых можно искать через CVE.intitle:"webcamXP 5"
— публичные интерфейсы системы видеонаблюдения webcamXP.inurl:"/shell?cat="
— уязвимые CGI-скрипты, иногда открывающие доступ к системной информации.
Что дальше?
GHDB постоянно обновляется и доступна на Exploit-DB . Если хочешь больше — загляни туда. Также рекомендую использовать плагин Search Dorks или расширение для Firefox, чтобы не вводить вручную.
И напоследок — осторожность
Google может временно заблокировать доступ к поиску при активном использовании дорков. Используй VPN, прокси или меняй User-Agent, если экспериментируешь много и часто.
А ещё лучше — проверь свои собственные сайты на наличие таких открытых файлов. Потому что если ты их не найдешь, кто-то другой — обязательно найдет.