Вступление
Google Dorks (или «гугл дорки», как говорят по-русски) это не хакерская утилита и не тёмная магия. Это встроенный синтаксис самого Google, официально задокументированный, который знают, может, полтора процента людей, регулярно пользующихся поиском.
Разница между обычным юзером и человеком, освоившим дорки, примерно такая же, как между тем, кто ищет фильм, вводя «фильм про хакеров», и тем, кто помнит название и год. За пять минут с правильным запросом можно найти то, на что при обычном поиске уйдёт час, а иногда и вовсе не найдётся.
Я использую Google Dorks почти каждый день. В OSINT-расследованиях без них никак: половина работы это правильно сформулировать запрос. Но и в бытовых задачах они экономят кучу времени: найти нужный PDF, откопать старый форумный тред, проверить, где твой email всплывал в открытом доступе.
В этой статье разберём десять базовых операторов, которые нужны каждому, как их комбинировать в мощные запросы, готовые рецепты для OSINT-задач, Google Hacking Database и как ей пользоваться, юридические границы в РФ и как защитить свой сайт от того, чтобы его нашли теми же дорками.
Зачем нужны Google Dorks
Прежде чем перейти к синтаксису, посмотрим, кому и в каких сценариях это реально пригодится.
OSINT-расследование. Классический случай. Нужно найти всё, что человек публиковал под своим именем. Обычный поиск даст миллион нерелевантных результатов. Правильный дорк типа «Иван Иванов» site:linkedin.com OR site:facebook.com OR site:vk.com сразу отфильтровывает шум.
Проверка контрагента. Компания указала в договоре сайт. Ты хочешь узнать, что там ещё есть, кроме витрины. Запрос site:company.ru filetype:pdf покажет все PDF-файлы, которые Google проиндексировал на этом домене. Иногда там всплывают старые прайсы, презентации, юридические документы, о которых компания и забыла.
Работа программиста. Ищешь конкретную функцию, которую кто-то использовал в открытом коде? Запрос «function_name(» site:github.com filetype:py найдёт все Python-файлы с этой функцией. Быстрее, чем через поиск GitHub.
Безопасник. Проверить, не утекли ли конфигурационные файлы твоей компании в открытый доступ. Запрос site:company.com ext:sql OR ext:log OR ext:env покажет то, что не должно быть в индексе. Если что-то нашлось, срочно закрывать.
Обычный пользователь. Например, найти рецепт борща именно в русскоязычных блогах, а не на маркетплейсах рецептов: борщ site:.ru -site:eda.ru -site:povar.ru. Или найти научную статью по теме: «machine learning» filetype:pdf site:.edu.
База: десять операторов, которые нужны каждому
Начнём с фундамента. Эти десять операторов покрывают 90% реальных задач.
Оператор 1: кавычки для точной фразы
«поиск по нику»
Кавычки заставляют Google искать точное совпадение фразы, а не набор слов в любом порядке. Без кавычек Google может показать страницы, где эти слова встречаются в разных абзацах и не связаны между собой.
Реальный пример: ты ищешь конкретную цитату. Без кавычек Google покажет всё, где эти слова хоть как-то мелькнули. С кавычками только страницы с точной фразой.
Оператор 2: site: для конкретного сайта
site:habr.com google dorks
Ищет только внутри указанного домена. Мощнее внутреннего поиска большинства сайтов, потому что Google индексирует то, что сам сайт может уже не показывать в своей выдаче.
Хитрость: можно указать не весь сайт, а поддомен или уровень. site:.gov.ru найдёт всё в зоне государственных сайтов. site:mail.ru только в почте mail.ru.
Оператор 3: filetype: для типа файла
filetype:pdf otchet
В google dorks этот оператор ищет только файлы указанного типа. Полезные варианты: pdf, doc, docx, xls, xlsx, ppt, pptx, txt, csv.
Реальный пример: ищешь отчёт компании. Запрос «годовой отчёт» filetype:pdf site:company.ru найдёт только PDF-документы, что почти всегда именно то, что нужно.
Синоним оператора: ext: (расширение). Работает одинаково.
Оператор 4: intitle: для поиска в заголовке
intitle:"вход в личный кабинет"
Ищет страницы, у которых указанная фраза стоит в теге <title> (то есть отображается на вкладке браузера и в выдаче Google).
Зачем нужно: заголовок обычно точно описывает содержимое страницы. Если в тексте слово может быть в любом контексте, то в заголовке оно ключевое.
Есть вариант allintitle: (все слова должны быть в заголовке), но на практике intitle: с кавычками работает предсказуемее.
Оператор 5: inurl: для поиска в адресе
inurl:admin site:.ru
Ищет страницы, у которых указанное слово содержится в URL. Полезен для поиска типовых страниц: логинов, админок, файлов конфигурации.
Реальный пример: нужно найти все статьи на сайте, которые содержат слово security прямо в адресе: site:blog.com inurl:security.
Оператор 6: intext: для поиска в тексте страницы
intext:"мой email адрес" @gmail.com
Ищет фразу именно в теле страницы (а не только в заголовке или URL). Помогает отсеять страницы, где слово встречается только в меню, шапке или футере.
Обычно Google и так ищет в тексте, но intext: даёт полный контроль над тем, что именно должно быть в основном контенте.
Оператор 7: минус для исключения
osint tools -github -pinterest
Минус в google dorks перед словом или конструкцией исключает результаты, где это встречается. Спасение, когда выдача забита однотипными результатами.
Реальный пример: ищешь обзоры инструмента, но выдача забита ссылками на официальный сайт. Добавь -site:officialname.com, и все результаты с этого домена уйдут.
Оператор 8: OR для расширения
"John Smith" (site:linkedin.com OR site:twitter.com OR site:github.com)
По умолчанию Google считает пробел между словами как «И» (все слова должны быть). OR (обязательно заглавными буквами) говорит «или».
Скобки для группировки. Без скобок Google может неправильно понять приоритет.
Оператор 9: звёздочка как подстановочный знак
"лучший * для osint"
Звёздочка заменяет одно любое слово. Полезно, когда помнишь фразу приблизительно.
Реальный пример: помнишь начало и конец цитаты, но забыл середину. «жизнь это * пустая * штука» найдёт варианты с любыми словами вместо звёздочек.
Оператор 10: две точки для диапазона чисел
ноутбук 30000..50000 руб
Ищет числа в указанном диапазоне. Работает для цен, лет, любых числовых значений.
Реальный пример: ищешь статьи именно за определённый год: osint news 2023..2024.
Продвинутое: комбинации операторов
По-настоящему сильные запросы google dorks получаются, когда несколько операторов работают вместе. Дальше несколько готовых «рецептов», которые я использую в работе.
Рецепт 1: найти чьё-то резюме
"CV" OR "резюме" "имя фамилия" filetype:pdf
Или конкретнее по сайту:
"имя фамилия" site:hh.ru OR site:linkedin.com
Если человек когда-то выкладывал CV в открытый доступ, найдётся.
Рецепт 2: документы конкретной компании
site:company.ru filetype:pdf OR filetype:doc OR filetype:xls
Все документы, которые Google проиндексировал на домене. Часто там оказывается больше, чем компания хочет показать.
Рецепт 3: упоминания email в открытом доступе
"user@company.com"
Кавычки обязательны, иначе Google разобьёт email и найдёт нерелевантное. Покажет все места, где этот адрес засветился в открытом интернете: комментарии, форумы, утечки, старые контактные страницы.
Рецепт 4: открытые директории на сервере
intitle:"index of" "parent directory" name
Некоторые серверы показывают содержимое папок при обращении напрямую. Если админ забыл настроить блокировку, содержимое индексируется Google. Может найтись что угодно: бэкапы, логи, документы, служебные файлы.
Важно: такие директории часто содержат чувствительную информацию. Смотреть на своих сайтах чтобы закрыть, на чужих смотреть можно, качать без разрешения нельзя.
Рецепт 5: страницы входа в админки
inurl:admin OR inurl:login OR inurl:cpanel site:target.com
Помогает найти административные интерфейсы на конкретном сайте. Для владельца это способ проверить, что не торчит наружу лишнего. Для пентестера в рамках согласованной работы точка входа для дальнейшего анализа.
Рецепт 6: утечки паролей и конфигов
filetype:env "DB_PASSWORD"
filetype:sql "INSERT INTO users"
filetype:log inurl:error
Классические поисковые запросы, которые находят файлы .env, дампы баз данных и логи, случайно оставленные в открытом доступе.
Юридический предохранитель: сам факт нахождения таких файлов через Google не является нарушением. Google их проиндексировал в открытом доступе. Но скачивание, использование данных из них, попытка авторизоваться найденными логинами это уже статья 272 УК РФ (неправомерный доступ к охраняемой законом компьютерной информации). Инструмент для защиты, а не для атаки.
Рецепт 7: слежка за упоминаниями
"название бренда" -site:mybrand.com
Все упоминания бренда в интернете, кроме собственного сайта. Полезно для маркетологов, специалистов по репутации, безопасников (проверить, не подделывают ли бренд).
Google Hacking Database (GHDB)
GHDB это открытая база готовых Google-запросов, собранная сообществом за много лет. Ведёт её Offensive Security (создатели Kali Linux).
Адрес: exploit-db.com/google-hacking-database
Там сотни готовых запросов, разбитых по категориям: уязвимые серверы, файлы с паролями, страницы с ошибками, открытые устройства (камеры, принтеры), утечки конфиденциальных документов.
Как безопасно пользоваться.
Разрешено: просматривать базу, изучать синтаксис, использовать для проверки собственных сайтов и в рамках согласованных пентестов.
Не разрешено: массово прогонять запросы по чужим сайтам, использовать найденные данные без разрешения владельца, публиковать конкретные утечки.
Если ты только начинаешь, идти сразу в GHDB не стоит. Сначала освой базовый синтаксис (то, что выше), поймёшь, как это работает, потом уже GHDB станет полезным справочником.
Юридический аспект в РФ
Google Dorks сами по себе легальны. Это часть публичного продукта Google. Использовать google dorks для поиска можно совершенно свободно.
Что законно всегда. Использовать любые операторы для поиска в Google. Искать информацию, которая уже в открытом доступе. Сохранять для себя скриншоты найденного. Использовать для проверки собственных сайтов и сервисов.
Где начинаются проблемы.
Статья 272 УК РФ (неправомерный доступ к компьютерной информации) применяется, когда: нашёл через дорк логин-пароль и попробовал войти. Скачал базу данных, к которой доступ подразумевался закрытым. Использовал найденную уязвимость для входа в систему.
152-ФЗ (о персональных данных) применяется, когда: собрал персональные данные людей (даже из открытых источников) и начал их обрабатывать без согласия. Опубликовал где-то найденные ФИО, телефоны, адреса. Продал или передал базу третьим лицам.
Статья 137 УК РФ (неприкосновенность частной жизни): публикация или распространение сведений о частной жизни лица без его согласия. Даже если сведения найдены в открытом доступе, их массовое распространение может подпадать под статью.
Практический вывод: искать можно почти всё. Использовать найденное нужно с осторожностью. Хранить и распространять чужие персональные данные без основания и согласия рискованно.
Если делаешь OSINT в рамках работы (проверка кандидата, аудит безопасности, журналистское расследование), убедись, что твоя цель попадает в разрешённые исключения 152-ФЗ (общественный интерес, трудовые отношения, судебная защита).
Как защитить свой сайт от дорков
Если у тебя есть сайт, регулярно проверяй его самого через Google Dorks. То, что нашёл ты через google dorks, может найти любой другой.
Базовая гигиена
Проверь, что торчит наружу:
site:твойсайт.ру filetype:pdf
site:твойсайт.ру filetype:doc
site:твойсайт.ру filetype:xls
site:твойсайт.ру inurl:admin
site:твойсайт.ру ext:log
site:твойсайт.ру ext:sql
site:твойсайт.ру intitle:"index of"
Если что-то из этого выдаёт результаты, а не должно, есть работа.
robots.txt
Файл robots.txt в корне сайта говорит поисковым роботам, что можно, а что нельзя индексировать. Пример:
User-agent: *
Disallow: /admin/
Disallow: /wp-content/uploads/private/
Disallow: /backups/
Disallow: *.sql
Disallow: *.log
Важное предупреждение: robots.txt это рекомендация, не защита. Хорошие боты (Google, Яндекс, Bing) её соблюдают. Плохие боты и злоумышленники просто читают этот файл, чтобы узнать, что интересного ты прячешь. Так что от индексации спасёт, а от целенаправленной атаки нет.
Meta noindex
Для отдельных страниц, которые не должны попадать в поиск, добавь в HTML:
<meta name="robots" content="noindex, nofollow">
Работает надёжнее, чем robots.txt, потому что бот сначала загрузит страницу, увидит инструкцию и не проиндексирует.
.htaccess и серверные ограничения
Если сайт на Apache, можно закрыть доступ к файлам определённых типов через .htaccess:
<FilesMatch "\.(env|sql|log|bak)$">
Order Allow,Deny
Deny from all
</FilesMatch>
Теперь эти файлы не откроются вообще ни для кого извне, независимо от того, что говорит Google.
Регулярная самопроверка
Раз в месяц-два прогоняй по своему сайту семь базовых дорков из начала раздела. Занимает 15 минут, спасает от многих проблем.
Что дальше
Google Dorks это один из фундаментальных навыков в OSINT. Дальше логично двигаться в сторону специализированных поисковиков: Shodan для интернета вещей, Censys для сертификатов, Wayback Machine для архивов. По каждому будет отдельная статья.
Стоит освоить и поиск по фото: обратный поиск изображений, распознавание лиц, поиск похожих изображений. Про это уже есть частичный разбор в статье о поиске по нику.
Автоматизация тоже помогает: SearchDiggity, GHDB Reborn, Recon-ng и другие инструменты прогоняют десятки дорков за раз.
Если что-то из этой статьи не сработало на практике или есть свои любимые рецепты, которых здесь нет: пиши в комментариях. Разберём.