В мире информационной безопасности существует заблуждение, что для хакинга или глубокой разведки (OSINT) всегда требуются сложные проприетарные инструменты, сканеры уязвимостей и 0-day эксплойты. Однако одним из самых мощных инструментов в арсенале пентестера и OSINT-аналитика остается обычная поисковая строка Google.
Google Hacking, или Google Dorking — это искусство использования расширенных поисковых операторов для нахождения информации, которую владельцы сайтов и системные администраторы непреднамеренно оставили в открытом доступе. Поисковые роботы (краулеры) нейтральны: они индексируют всё, до чего могут дотянуться, будь то маркетинговая статья или файл с паролями администратора, забытый в корневой директории.
В этой статье мы разберем 30+ проверенных "дорков" (dorks), разделенных по категориям, проанализируем анатомию каждого запроса и обсудим, как эти данные используются в Red Teaming и как от этого защититься (Blue Teaming).
Вся информация представлена исключительно в образовательных целях. Использование данных запросов для анализа ресурсов, не принадлежащих вам, без письменного разрешения владельца может нарушать законодательство. Используйте эти знания для защиты собственной инфраструктуры и в рамках Bug Bounty программ.
Часть 1. Анатомия поиска: Логины и Учётные данные
Поиск скомпрометированных учетных данных — первый этап любой атаки. Часто разработчики или пользователи оставляют следы своих логинов в публичных обсуждениях, на страницах профилей или в забытых текстовых файлах.
Поиск пользовательских сущностей
Один из классических векторов — перечисление пользователей (User Enumeration). Если мы знаем логин, мы прошли половину пути к брутфорсу.
Запрос 1:
intext:"username123" intitle:"forum" OR intitle:"comment" OR intitle:"discussion" OR inurl:"/profile/" OR inurl:"/user/" -intitle:"documentation" -filetype:pdf -filetype:docxРазбор вектора:
Этот запрос направлен на поиск упоминаний конкретных паттернов имен пользователей на форумах и в профилях.
- intext:"username123" — здесь "username123" выступает как плейсхолдер. В реальной разведке вы заменяете его на целевой никнейм или паттерн корпоративной почты.
- intitle:"forum" ... — фильтрует страницы, оставляя только места общения, где пользователи часто раскрывают личную информацию.
- -filetype:pdf — исключает документы, чтобы сосредоточиться на живых веб-страницах.
Прямой поиск файлов с паролями
Самая критическая ошибка администраторов — оставление файлов с дампами паролей в доступных для индексации папках. Часто это забытые бэкапы или списки для брутфорса, которые сами админы загружали на сервер.
Запрос 2:
intitle:"index of" ("passwords.txt" OR "leaked-passwords.csv" OR "passwords.bak" OR "secrets.txt") -git -github -gitlab -bitbucket -intitle:"documentation"Аналитика:
Оператор intitle:"index of" — это "король" дорков. Он ищет серверы (обычно Apache или Nginx) с включенной опцией Directory Listing, где нет index.html, и сервер просто показывает список файлов. Мы ищем файлы .txt, .csv или .bak, содержащие маркеры "passwords" или "secrets". Исключение git-сервисов (-git -github...) помогает убрать легальные репозитории кода и найти именно "случайные" утечки на живых сайтах.
Утечки на текстовых хостингах
Pastebin и его аналоги — это кладбище временных данных, где хакеры публикуют слитые базы, а разработчики — куски кода с хардкодом паролей.
Запрос 3:
site:pastebin.com intext:"email" AND intext:"password" OR intext:"credentials" OR intext:"login" OR intext:"user:pass" -api -key -intitle:"documentation"Технический нюанс:
Мы используем site:pastebin.com, чтобы ограничить поиск конкретным ресурсом. Комбинация intext:"email" AND intext:"password" ищет классический формат дампов "mail:pass". Операторы -api -key отсеивают документацию разработчиков, где эти слова встречаются в контексте инструкций, а не реальных данных.
Часть 2. Инфраструктура: Конфигурации и Базы данных
Если учетные данные — это ключи от двери, то конфигурационные файлы — это карта всего здания с указанием, где лежат деньги. Поисковики отлично индексируют текстовые файлы конфигов, если сервер отдает их с неправильным MIME-типом или они лежат в открытом виде.
Конфигурации веб-приложений
Запрос 4:
intitle:"index of" ("config.php" OR "wp-config.php" OR "database-config.php" OR "settings.conf" OR "appsettings.json") AND ("database" OR "credentials") -intitle:"documentation" -filetype:pdfПочему это работает:
Файлы вроде wp-config.php (WordPress) должны исполняться сервером, а не отдаваться как текст. Однако, если PHP упал, не настроен, или файл имеет расширение .php.bak / .php.old, сервер отдаст его исходный код. А внутри — логин и пароль к базе данных, соль (salts) и ключи API. appsettings.json — аналог для ASP.NET Core приложений, часто содержащий строки подключения.
Дампы баз данных (SQL)
Запрос 5:
intitle:"index of" ("backup.sql" OR "dump.sql" OR "database_backup.sql" OR "data_dump.sql" OR "db_backup.zip") AND ("database" OR "backup") -intitle:"documentation" -filetype:pdfАналитика:
Системные администраторы часто делают бэкапы БД перед обновлением и оставляют их в корне сайта ("чтобы быстро скачать"). Имя файла dump.sql — это подарок для пентестера. Запрос ищет открытые директории с такими файлами. Скачав такой файл, злоумышленник получает полную копию базы данных проекта.
Сетевое оборудование
Запрос 6:
intitle:"index of" ("router.conf" OR "switch.conf" OR "firewall.conf" OR "network_settings" OR "device-config") AND ("network" OR "configuration") -intitle:"documentation" -filetype:pdfУровень угрозы:
Конфиги роутеров и свитчей (Cisco, Juniper, MikroTik) часто выгружаются по TFTP или FTP. Если эти папки проиндексированы, атакующий видит внутреннюю адресацию сети, правила фаервола, VPN-ключи и хеши паролей администраторов оборудования.
Часть 3. Физический уровень: Устройства и Камеры
IoT (Internet of Things) — одна из самых уязвимых сфер. Многие устройства "смотрят" в интернет с дефолтными настройками и индексируются поисковиками.
Видеонаблюдение
Запрос 7:
intitle:"webcamXP 5" OR intitle:"axis camera" OR intitle:"network camera" OR intitle:"IP camera" OR intitle:"live feed" inurl:"/view/" OR inurl:"/stream/" -intitle:"documentation" -filetype:pdfСценарий:
Этот запрос находит веб-интерфейсы камер видеонаблюдения, которые не требуют авторизации или используют простейшие скрипты трансляции (/view/, /stream/). Часто это системы безопасности офисов, складов или частных домов. Для OSINT это возможность визуально подтвердить физическое расположение объекта или распорядок дня сотрудников.
Панели управления IoT
Запрос 8:
inurl:"/device.rsp" OR inurl:"/config.xml" OR inurl:"/status.xml" OR inurl:"/device_config" OR inurl:"/admin/config" intitle:"IoT" OR intitle:"device" OR intitle:"configuration" -intitle:"documentation"Детали:
Умные дома, промышленные контроллеры и серверные датчики часто имеют веб-интерфейсы, оканчивающиеся на .xml или .rsp. Через эти файлы можно не только узнать модель устройства и версию прошивки (для поиска CVE), но иногда и извлечь Wi-Fi пароли.
Часть 4. Криптография и Облачные хранилища
В эпоху облаков и CI/CD утечка ключей доступа означает полную компрометацию инфраструктуры.
SSH ключи
Запрос 9:
intitle:"index of" ("id_rsa.pub" OR "id_dsa.pub" OR "authorized_keys" OR "ssh_public_key" OR "ssh_keys") AND ("key" OR "pub") -intitle:"documentation" -filetype:pdfКритичность:
Поиск направлен на директории .ssh. Хотя id_rsa.pub — это публичный ключ (не так страшно), его наличие говорит о том, что папка доступна. Если рядом лежит файл id_rsa (без расширения) — это приватный ключ. Владея им, атакующий может подключиться к серверам компании без пароля. Файл authorized_keys позволяет узнать, какие пользователи (и с каких машин) имеют доступ к серверу.
AWS S3 Buckets
Запрос 10:
site:s3.amazonaws.com intitle:"index of" ("bucket" OR "files" OR "public" OR "documents" OR "images") AND ("access" OR "public") -intitle:"documentation" -filetype:pdfКонтекст:
Amazon S3 — популярнейшее облачное хранилище. Неправильная настройка прав (public read) позволяет любому скачивать содержимое бакетов. Google отлично индексирует такие открытые хранилища. Здесь часто находят сканы паспортов, бэкапы баз данных и внутренние документы.
Облачные диски (Dorks for Personal Clouds)
Запрос 11:
intext:"drive.google.com" OR intext:"dropbox.com" OR intext:"onedrive.com" OR intext:"icloud.com" OR intext:"mega.nz" filetype:pdf OR filetype:txt OR filetype:doc OR filetype:xlsx -intitle:"documentation"Применение:
Люди часто делятся ссылками на облачные файлы в публичных местах, забывая закрыть доступ. Запрос ищет проиндексированные документы, размещенные на популярных файлообменниках, ссылки на которые "утекли" в сеть.
Часть 5. Документы: Утечки конфиденциальной информации
Google умеет читать содержимое PDF, DOCX и XLSX файлов так же хорошо, как и HTML. Это делает его мощным инструментом для корпоративного шпионажа.
Правительственные и корпоративные секреты
Запрос 12:
site:.gov filetype:pdf OR filetype:xls OR filetype:doc intitle:"confidential" OR intitle:"sensitive" OR intitle:"restricted" OR intitle:"classified" -intitle:"documentation" -filetype:docxАналитика:
Использование домена верхнего уровня site:.gov (или .ru, .ua, .kz для локального поиска) в сочетании с грифами секретности ("confidential", "restricted") позволяет найти документы, которые не должны были попасть в паблик. Это могут быть отчеты, внутренние распоряжения или тендерная документация.
Персональные данные (PII)
Запрос 13:
intext:"SSN" OR intext:"Social Security Number" OR intext:"personal ID" OR intext:"national ID" OR intext:"identification number" filetype:pdf OR filetype:xls OR filetype:docx -intitle:"documentation"Опасность:
Поиск номеров социального страхования, паспортных данных и ID. Чаще всего утекают списки участников конференций, ведомости на зарплату или списки студентов, выложенные в формате Excel.
HR и данные сотрудников
Запрос 14:
intext:"employee credentials" OR intext:"staff passwords" OR intext:"HR records" OR intext:"login details" filetype:pdf OR filetype:doc OR filetype:xls OR filetype:docx -intitle:"documentation"Вектор атаки:
HR-департаменты часто являются слабым звеном. Они работают с большим количеством файлов, содержащих личные данные сотрудников. Найденные файлы адаптации (onboarding) часто содержат стартовые пароли к почте и CRM-системам.
Дополнительный запрос 15 (Политики):
intext:"employee handbook" OR intext:"HR policies" OR intitle:"company policies" OR intitle:"employee guide" OR intext:"staff manual" filetype:pdf OR filetype:docx -intitle:"documentation"Справочники сотрудников раскрывают внутреннюю кухню: используемое ПО, иерархию, правила парольной политики (например, "пароль должен быть 8 символов" — это упрощает брутфорс), и контакты техподдержки.
Часть 6. Разведка инфраструктуры и Кода
Понимание того, как устроена сеть жертвы, критично для планирования атаки.
Карты сети
Запрос 16:
intext:"network diagram" OR intext:"network topology" OR intext:"infrastructure map" OR intext:"system architecture" filetype:pdf OR filetype:png OR filetype:jpg OR filetype:svgЦенность:
Системные администраторы рисуют диаграммы в Visio и экспортируют их в PDF или PNG для отчетов. Если такой файл найден, атакующий узнает IP-адресацию серверов, расположение фаерволов, DMZ зон и связи между филиалами.
Исходный код
Запрос 17:
intitle:"index of" ("source code" OR "src.zip" OR "codebase" OR "repository.zip" OR "source_files") AND ("code" OR "repository") -intitle:"documentation" -filetype:pdfАнализ:
Поиск архивов с полным исходным кодом проекта. Это позволяет провести White Box аудит уязвимостей локально, без взаимодействия с сервером жертвы, найти скрытые бэкдоры или логику генерации токенов.
Утечки API ключей на GitHub
Хотя GitHub имеет свои механизмы поиска, Google индексирует репозитории глобально.
Запрос 18:
site:github.com intext:"API_KEY" OR intext:"SECRET_KEY" OR intext:"access_token" OR intext:"client_secret" OR intext:"auth_token" -README -intitle:"documentation"Цель:
Поиск хардкода секретов в коде. Разработчики часто забывают вынести ключи в переменные окружения (.env) и коммитят их в репозиторий. Оператор -README помогает отфильтровать примеры использования библиотек, оставляя реальные файлы кода (.py, .js, .php).
Часть 7. Административные интерфейсы и SSL
Финальная стадия разведки — поиск точек входа и криптографических сертификатов.
Админки и порталы входа
Запрос 19:
inurl:"/login.php" OR inurl:"/admin.php" OR inurl:"/signin.php" OR inurl:"/user/login" intitle:"login" OR intitle:"admin" OR intitle:"portal" OR intext:"username" AND intext:"password" -intitle:"documentation"Применение:
Стандартный, но эффективный способ найти админ-панели. Зная URL админки, можно пробовать брутфорс или SQL-инъекции в форме входа. Комбинация inurl и intitle минимизирует ложные срабатывания.
SSL сертификаты и приватные ключи
Запрос 20:
intitle:"index of" ("ssl.crt" OR "ssl.key" OR "certificate.pem" OR "private.key" OR "tls_certificate" OR "certificates") -intitle:"documentation" -filetype:pdfКритическая уязвимость:
Сертификаты (.crt) публичны, но файлы .key или .pem часто содержат приватную часть ключа. Если злоумышленник получает приватный ключ SSL, он может расшифровывать HTTPS трафик пользователей (Man-in-the-Middle) или подделывать сайт компании, и браузеры будут помечать его как "Надежный".
Blue Team: Как защититься от Google Hacking?
Понимание того, как работают эти запросы, необходимо для построения защиты. Если Google может найти эти данные, значит, они уже скомпрометированы.
Вот чек-лист для защиты вашей инфраструктуры:
- Отключите Directory Listing:
Настройте веб-сервер (Nginx/Apache), чтобы запретить просмотр содержимого папок.- Nginx: autoindex off;
- Apache: Options -Indexes в файле .htaccess или конфигурации виртуалхоста.
- Настройте robots.txt и Security Headers:
Используйте robots.txt, чтобы запретить индексацию чувствительных путей (/admin, /backup, /includes). Добавьте заголовок X-Robots-Tag: noindex для файлов, которые не должны попадать в поиск. - Google Search Console:
Регулярно проверяйте свой домен через Google Search Console. Используйте инструмент "Removals" для срочного удаления чувствительных URL из выдачи Google. - Аудит утечек:
Регулярно проводите "само-доркинг" (Self-Dorking). Используйте оператор site:yourcompany.com в сочетании с приведенными выше запросами, чтобы видеть, что о вас знает мир. - Gitignore и CI/CD:
Убедитесь, что файлы .env, бэкапы .sql и ключи добавлены в .gitignore и никогда не попадают на продакшн-сервер в public_html.д
Google Dorking — это напоминание о том, что безопасность — это процесс, а не состояние. Огромное количество утечек происходит не из-за гениальности хакеров, а из-за банальной невнимательности администраторов, оставляющих бэкапы в корне сайта.
Используйте эти 30+ запросов ответственно. Проводите аудит своих ресурсов, находите уязвимости раньше злоумышленников и закрывайте их. В мире OSINT информация лежит на поверхности, нужно лишь уметь задать правильный вопрос.