Что такое Google Dorks? Используем малоизвестные функции Google, чтобы найти сокрытое King intitle все публикации пользователя.

о возможностях поиска критической информации с помощью google мы коснулись основных поисковых операторов и стандартных стратегий поиска. Но тема оказалась на столько емкой и интересной, что мы не могли просто взять и остановится. Мы продолжаем изучучать гуглохакинг и в следующем цикле статей, познакомим вас с многими интересными способами добыть интересную информацию, просто используя google.

Обзор некоторых веб-сервисов Google.

Web res ults page.

Каждый элемент результата включает в себя: ссылку на целевую страницу, ссылку на кэшированную версию страницы (ниже основной), часть описания, где жирным выделены ключевые слова поиска.

Google groups.

Поиск по старым площадкам, форумам и группам USENET’а.

Google image search.

Поиск изображений и не только по текстовым входным данным (название, цвет, разрешение и пр.), но и по загруженным изображениям разного формата (искать похожие изображения и тд).

Настройки Google.

Можно установить вид отображения основной страницы поиска;
Язык для сужения результатов поиска (по умолчанию ищет по информацию на всех языках);
SafeSearch — опция фильтрации, которая блокирует запрещенный определенными критериями контент;

Day-to-day web searching — опция, которая должна быть выключена при поиски на предмет уязвимостей или важной информации (чтобы не сужать круг результатов);

Language Tools.

Предоставляют возможность искать документы, файлы с содержанием на определенных языках, или документы, местоположение которых связано с конкретной страной (языковой группой). Также есть средства переводчика между различными языками.

Основны поиска.

  • Запросы нечувствительны к регистру (запрос заглавными, строчными или их комбинацией даст одинаковый результат);
  • Синтаксис поиска по маске (wildcards) не похож на стандарты в программировании (по сути, есть только «*» для указания наличия любого слова на ее месте и «.» для любого символа вместо нее);
  • Иногда гугл игнорирует некоторые слова в поиске, которые считает нерелевантными (иногда об этом уведомляет). Публично правила, по которым движок определяет, что надо опустить, не публикуются;
  • Лимит запроса — 32 слова (если некоторые заменить на «*», то можно добавить еще слов, так как этот спецсимвол за слово не считается, хоть и будет учитываться в запросе);

Логические операторы и специальные символы запросов: https://support.google.com/vault/answer/2474474?hl=ru и https://support.google.com/websearch/answer…f_topic=3081620 .

Синтаксис URL адресов запросов.

После www.google.com/search может идти ряд параметров, которые можно менять вручную, управляя результатами запроса. Пример структуры адреса: www.google.com/search?variable1=value&variable2=value, а специальные символы (кавычки, пробел и пр.) заменяются на знак процента (%) и их шестнадцатиричный (hex) код в таблице ascii (http://www.asciitable.com/).
Чтобы узнать, какие переменные с какими параметрами можно использовать в URL адресе, достаточно зайти на www.google.com/advanced_search и ввести в поля нужные значения, затем смотреть результат в адресной строке.

Продвинутые операторы поиска.

Синтаксист крайне прост — operator:search_term.
При использовании продвинутых операторов надо помнить следующее:

  • Между оператором и его значением нет пробелов;
  • Если значение состоит более, чем из 1 слова, то надо брать его в кавычки;
  • Логические операторы могут использоваться вместе с продвинутыми (но они не должны мешать разделяющему двоеточию);
  • Все операторы, начинающиеся с ALL не могут использоваться с другими операторами;

Примеры правильного использования:

intitle:Google — ищет страницы со словом Google в названии;
intitle:»index of» — должна быть вся фраза «index of» в названии страницы;
intitle:index.of private — фраза «index of» в названии страницы (точка была маской для любого символа) и слово «private» в любом места на страницы;

Про сами продвинутые операторы можно найти информацию в статьях: https://habrahabr.ru/sandbox/46956/ и http://aiwaspb.ru/prodvizhenie/operatory-p…ykh-sistem.html.

В тех статьях, однако, не указаны следующие операторы:

numrange — позволяет искать числа в заданном диопазоне (разделенном дефисом или горизонтальным двоеточием). Пример: numrange:12344..12346 (хорошо подойдет для поиска числа 12345);
stocks — позволяет делать поиск по информации об акциях (главное знать аббревиатуру интересующей компании); Пример: stocks:CSC. Не может быть использован в комбинации с другими операторами.

Основы Google Hacking.

Ниже будет предоставлены примеры простых запросов, которые могут помочь получить информацию о сервисах, серверах или найти определенные сервисы, серверы с нужной информацией или уязвимостью. Если из всех ниже перечисленных запросов убрать site:target.com, то они будут нацелены на глобальный поиск сайтов с данными, а не данных по одному сайту.

Поиск листингов директорий: intitle:index.of name size site:target.com
Поиск специальных директорий: intitle:index.of.admin site:target.com или intitle:index.of inurl:admin site:target.com (поиск директории admin)
Поиск специальных файлов: intitle:index.of ws_ftp.log site:target.com или filetype:log inurl:ws_ftp.log site:target.com (поиск файла ws_ftp.log)
Определение версии веб-сервера: intitle:index.of «server at» site:target.com
Поиск сайтов с нужной версией веб-сервера: intitle:index.of «Apache/1.3.27 Server at»
Поиск сайтов с возможной уязвимостью Directory Traversal: intitle:index.of inurl:»admin»

Данные примеры показывают, что для использования операторов гугла в своих (часто нестандартных) целях достаточно просто выявить закономерность, паттерн у целевых информационных структур и представить его в виде комбинации (или одного) операторов. То есть все возможности ограничиваются лишь наличием идей поиска, нетривиальностью мышления и знанием нужных операторов (хотя еще можно добавить опыт — какие операторы, когда лучше использовать, какие лучше комбинируются и пр.).

Более узкозаточенные примеры запросов, которые хорошо подойдут под конкретные цели или просто будут полезны в образовательных целях, можно найти на проекте Google Hacking DataBase .

Другие объекты поиска.

Конфигурационные и log файлы.

Конкретный запрос зависит от некоторых факторов.
Известно имя файла и его расширение, тогда можно использовать операторы filetype и inurl для расширения и имени соответственно;
Неизвестно имя, тогда надо искать через ключевые слова и фразы в самом файле;
Неизвестно расширение, можно попробовать серию: inurl:conf OR inurl:config OR inurl:cfg и тд.

Отдельным моментом является дополнение запроса для сужения не релевантных результатов (дефолтные конфиги или логи, старые, от другого софта и пр). Для этого надо подобрать базу слов (фраз), которые через оператор минуса исключить из результатов. Эти слова не всегда могут быть в содержании файла, иногда в названии страницы, в ее адресе.

Пример: filtetype:cfg OR filetype:conf mrtg «target[*]» -sample -cvs -example

Данный запрос ищет файлы с расширениями cfg или conf в которых должно содержаться слово mrtg (ищем конфиг софта Multi Router Traffic Grapher), а такеж фраза «target[*]» (содержится в конфигах этой программы), и не должно быть слов sample, cvs, example (чтобы исклюать дефолтные конфигурации или файлы-болванки).

Отдельный интерес могут предоставлять включаемые или support файлы, которые обычно имеют расшение inc (можно получить возможность читать исходные коды сервиса более менее хорошей точности).

Офисные документы.

Это обычные файлы, которые ищутся также, как и вышеописанные, только ключевые слова и некоторые операторы можно подобрать поэффективней: через filetype указывать нужные расширения, через inurl можно искать имена (password, private, finance и пр.), а также указывать ключевые слова для поиска в самих документах (для расширения количества реузльтатов).

Процесс поиска файлов.

Не нужно ограничиваться одним составленным запросом, часто бывает, что два разных запроса под одну и ту же цель дают результаты разные по объему и иногда даже по содержанию. То есть запрос intitle:index.of ws_ftp.ini поидее вернет примерно то же, что и filetype:ini inurl:ws_ftp.ini.

Однако inurl для этой цели часто бывает более эффективным оператором (filetype позволяет получить правильную версию файла, а также index.of позволит найти листинги, где будет нужный файл, но это не значит, что он будет доступен для чтения, чего избегает второй запрос). Это можно попытаться понять и самим, но порой легче дойти до этого экспериментально (особенно если первый вариант запроса не принес нужного результата).

Поиск в базах данных.

Точнее поиск происходит по индексированным частям информации из БД при ее «утечках».
Для получения информации о самой БД или потенциального места проведения атаки SQLinj можно поискать проиндексированные страницы ошибок по конкретным фразам типа «SQL command not properly ended» или отедльным ключевым словам.

А сегодня я расскажу еще про один поисковик, который используется пентестерами / хакерами — Google, точнее о скрытых возможностях Google.

Что такое гугл дорки?

Google Dork или Google Dork Queries (GDQ) — это набор запросов для выявления грубейших дыр в безопасности. Всего, что должным образом не спрятано от поисковых роботов.

Для краткости такие запросы называют гугл дорки или просто дорками, как и тех админов, чьи ресурсы удалось взломать с помощью GDQ.

Операторы Google

Для начала я хотел бы привести небольшой список полезных команд Google. Среди всех команд расширенного поиска Гугл нас интересуют главным образом вот эти четыре:

  • site - искать по конкретному сайту;
  • inurl - указать на то, что искомые слова должны быть частью адреса страницы / сайта;
  • intitle - оператор поиска в заголовке самой страниц;
  • ext или filetype - поиск файлов конкретного типа по расширению.

Также при создании Дорка надо знать несколько важных операторов, которые задаются спецсимволами.

  • | - оператор OR он же вертикальный слеш (логическое или) указывает, что нужно отобразить результаты, содержащие хотя бы одно из слов, перечисленных в запросе.
  • «» - оператор кавычки указывает на поиск точного соответствия.
  • — - оператор минус используется для исключения из выдачи результатов с указанными после минуса словами.
  • * - оператор звездочка, или астериск используют в качестве маски и означает «что угодно».

Где найти Гугл Дорки

Самые интересные дорки — свежие, а самые свежие — те, которые пентестер нашел сам. Правда, если слишком увлечетесь экспериментами, вас забанят в Google… до ввода капчи.

Если не хватает фантазии, можно попробовать найти свежие дорки в сети. Лучший сайт для поиска дорков — это Exploit-DB.

Онлайн-сервис Exploit-DB — это некоммерческий проект Offensive Security. Если кто не в курсе, данная компания занимается обучением в области информационной безопасности, а также предоставляет услуги пентеста (тестирования на проникновение).

База данных Exploit-DB насчитывает огромное количество дорков и уязвимостей. Для поиска дорков зайдите на сайт exploit-db.com и перейдите на вкладку «Google Hacking Database».

База обновляется ежедневно. На верху вы можете найти последние добавления. С левой стороны дата добавления дорка, название и категория.


Сайт Exploit-DB

В нижней части вы найдете дорки отсортированные по категориям.


Сайт Exploit-DB
Сайт Exploit-DB

Еще один неплохой сайт — это google-dorking.com . Там зачастую можно найти интересные, новые дорки, которые не всегда попадают на Exploit-DB.

Примеры использования Google Dorks

Вот примеры дорков. Экспериментируя с дорками, не забудьте про дисклеймер!

Данный материал носит информационный характер. Он адресован специалистам в области информационной безопасности и тем, кто собирается ими стать. Изложенная в статье информация предоставлена исключительно в ознакомительных целях. Ни редакция сайта www.сайт ни автор публикации не несут никакой ответственности за любой вред нанесенный материалом этой статьи.

Дорки для поиска проблем сайтов

Иногда бывает полезно изучить структуру сайта, получив список файлов на нем. Если сайт сделан на движке WordPress, то файл repair.php хранит названия других PHP-скриптов.

Тег inurl сообщает Google, что искать надо по первому слову в теле ссылки. Если бы мы написали allinurl, то поиск происходил бы по всему телу ссылки, а поисковая выдача была бы более замусоренной. Поэтому достаточно сделать запрос такого вида:

inurl:/maint/repair.php?repair=1

В результате вы получите список сайтов на WP, у которых можно посмотреть структуру через repair.php.


Изучаем структуру сайта на WP

Массу проблем администраторам доставляет WordPress с незамеченными ошибками в конфигурации. Из открытого лога можно узнать как минимум названия скриптов и загруженных файлов.

inurl:"wp-content/uploads/file-manager/log.txt"

В нашем эксперименте простейший запрос позволил найти в логе прямую ссылку на бэкап и скачать его.


Находим ценную инфу в логах WP

Много ценной информации можно выудить из логов. Достаточно знать, как они выглядят и чем отличаются от массы других файлов. Например, опенсорсный интерфейс для БД под названием pgAdmin создает служебный файл pgadmin.log. В нем часто содержатся имена пользователей, названия колонок базы данных, внутренние адреса и подобное.

Находится лог элементарным запросом:

ext:log inurl:"/pgadmin"

Бытует мнение, что открытый код - это безопасный код. Однако сама по себе открытость исходников означает лишь возможность исследовать их, и цели таких изысканий далеко не всегда благие.

К примеру, среди фреймворков для разработки веб-приложений популярен Symfony Standard Edition. При развертывании он автоматически создает в каталоге /app/config/ файл parameters.yml, где сохраняет название базы данных, а также логин и пароль.

Найти этот файл можно следующим запросом:

inurl:app/config/ intext:parameters.yml intitle:index.of


ф Еще один файл с паролями

Конечно, затем пароль могли сменить, но чаще всего он остается таким, каким был задан еще на этапе развертывания.

Опенсорсная утилита UniFi API browser tool все чаще используется в корпоративной среде. Она применяется для управления сегментами беспроводных сетей, созданных по принципу «бесшовного Wi-Fi». То есть в схеме развертывания сети предприятия, в которой множество точек доступа управляются с единого контроллера.

Утилита предназначена для отображения данных, запрашиваемых через Ubiquiti’s UniFi Controller API. С ее помощью легко просматривать статистику, информацию о подключенных клиентах и прочие сведения о работе сервера через API UniFi.

Разработчик честно предупреждает: «Please do keep in mind this tool exposes A LOT OF the information available in your controller, so you should somehow restrict access to it! There are no security controls built into the tool…». Но кажется, многие не воспринимают эти предупреждения всерьез.

Зная об этой особенности и задав еще один специфический запрос, вы увидите массу служебных данных, в том числе ключи приложений и парольные фразы.

inurl:"/api/index.php" intitle:UniFi

Общее правило поиска: сначала определяем наиболее специфические слова, характеризующие выбранную цель. Если это лог-файл, то что его отличает от прочих логов? Если это файл с паролями, то где и в каком виде они могут храниться? Слова-маркеры всегда находятся в каком-то определенном месте - например, в заголовке веб-страницы или ее адресе. Ограничивая область поиска и задавая точные маркеры, вы получите сырую поисковую выдачу. Затем чистите ее от мусора, уточняя запрос.

Дорки для поиска открытых NAS

Домашние и офисные сетевые хранилища нынче популярны. Функцию NAS поддерживают многие внешние диски и роутеры. Большинство их владельцев не заморачиваются с защитой и даже не меняют дефолтные пароли вроде admin/admin. Найти популярные NAS можно по типовым заголовкам их веб-страниц. Например, запрос:

intitle:"Welcome to QNAP Turbo NAS"

выдаст список айпишников NAS производства QNAP. Останется лишь найти среди них слабозащищенный.

Облачный сервис QNAP (как и многие другие) имеет функцию предоставления общего доступа к файлам по закрытой ссылке. Проблема в том, что она не такая уж закрытая.

inurl:share.cgi?ssid=


Находим расшаренные файлы

Этот нехитрый запрос показывает файлы, расшаренные через облако QNAP. Их можно просмотреть прямо из браузера или скачать для более детального ознакомления.

Дорки для поиска IP-камер, медиасерверов и веб-админкок

Помимо NAS, с помощью продвинутых запросов к Google можно найти массу других сетевых устройств с управлением через веб-интерфейс.

Наиболее часто для этого используются сценарии CGI, поэтому файл main.cgi - перспективная цель. Однако встретиться он может где угодно, поэтому запрос лучше уточнить.

Например, добавив к нему типовой вызов?next_file. В итоге получим дорк вида:

inurl:"img/main.cgi?next_file"

Помимо камер, подобным образом находятся медиасерверы, открытые для всех и каждого. Особенно это касается серверов Twonky производства Lynx Technology. У них весьма узнаваемое имя и дефолтный порт 9000.

Для более чистой поисковой выдачи номер порта лучше указать в URL и исключить его из текстовой части веб-страниц. Запрос приобретает вид

intitle:"twonky server" inurl:"9000" -intext:"9000"


Видеотека по годам

Обычно Twonky-сервер - это огромная медиатека, расшаривающая контент через UPnP. Авторизация на них часто отключена «для удобства».

Дорки для поиска уязвимостей

Большие данные сейчас на слуху: считается, что, если к чему угодно добавить Big Data, оно волшебным образом станет работать лучше. В реальности настоящих специалистов по этой теме очень мало, а при дефолтной конфигурации большие данные приводят к большим уязвимостям.

Hadoop - один из простейших способов скомпрометировать тера- и даже петабайты данных. Эта платформа с открытым исходным кодом содержит известные заголовки, номера портов и служебных страниц, по которым просто отыскать управляемые ей ноды.

intitle:"Namenode information" AND inurl:":50070/dfshealth.html"


Big Data? Big vulnerabilities!

Таким запросом с конкатенацией мы получаем поисковую выдачу со списком уязвимых систем на базе Hadoop. Можно прямо из браузера погулять по файловой системе HDFS и скачать любой файл.

Гугл Дорки — это мощный инструмент любого пентестера, о котором должен знать не только специалист в области информационной безопасности, но и обычный пользователь сети.

Дополнительные команды поисковой машине Google позволяют вам добиться гораздо лучших результатов. С их помощью вы можете ограничить область поиска, а также указать поисковой машине, что не нужно просматривать все страницы.

Оператор «Плюс» (+):
Для ситуации, когда надо принудительно включить в текст какое-либо обязательное слово. Для этого используется оператор «+» перед обязательным словом. Предположим, если у нас запрос Терминатор 2, в результате запроса у нас появится информация и о фильме Терминатор, Терминатор 2, Терминатор 3. Чтобы оставить только информацию о фильме Терминатор 2, мы ставим «плюсик» перед двойкой: совсем немного про «Один дома I». Если же у нас запрос вида Терминатор +2.

Например:
Журнал +Мурзилка
Уравнение +Бернулли

Оператор site:

Например:
Музыка site:www.сайт
Книги site:ru

Оператор link:

Например:
link:www.сайт
Друзья link:www.сайт

Оператор диапозона (..):
Для тех, кому приходится работать с цифрами, Google дал возможность искать диапазоны между числами. Для того, чтобы найти все страницы, содержащие числа в неком диапазоне «от — до», надо между этими крайними значениями поставить две точки (..), то есть, оператор диапозона.

Например:
Купить книгу $100..$150

Исключение слов из запроса. Логическое «НЕ» (-):
Чтобы исключать какие-либо слова используются операторы исключения «минус» (-). То есть логическое «НЕ». Полезно в случаях, когда результаты прямого поиска слишком замусорены

Например:
Аквариум -группа — ищем все про аквариум исключая группу «Аквариум»

Поиск точной фразы («»):
Полезно для поиска конкретного текста (целой статьи по цитате). Для этого надо заключить запрос в кавычки (двойные кавычки).

Например:
«И темница тесна, и свобода одна И всегда на нее уповаем» — ищем балладу Высоцкого по одной строке

Примечание: Google позволяет вводить в строку запроса не более 32 слов.

Усечение слова (*):
Иногда требуется искать информацию о словосочетании слов, в котором неизвестно одно или несколько слов. Для этих целей вместо неизвестных слов используется оператор «*». Т.е. «*» — любое слово или группа слов.

Например:
Мастер и *
Леонардо * Винчи

Оператор cache:
Поисковая машина хранит версию текста, которая проиндексирована поисковым пауком, в специальном хранилище в формате, называемом кэшем. Кэшированную версию страницы можно извлечь, если оригинальная страница недоступна (например, не работает сервер, на котором она хранится). Кэшированная страница показывается в том виде, в котором она хранится в базе данных поисковой машины и сопровождается надписью наверху страницы о том, что это страница из кэша. Там же содержится информация о времени создания кэшированной версии. На странице из кэша ключевые слова запроса подсвечены, причем каждое слово для удобства пользователя подсвечено своим цветом. Можно создать запрос, который сразу будет выдавать кэшированную версию страницы с определенным адресом: cache:адрес_страницы, где вместо «адрес_страницы» — адрес сохраненной в кэше страницы. Если требуется найти в кэшированной странице какую либо информацию, надо после адреса страницы через пробел написать запрос этой информации.

Например:
cache:www.сайт
cache:www.сайт турниры

Надо помнить, что пробела между «:» и адресом страницы быть не должно!

Оператор filetype:
Как известно, Google индексирует не только html страницы. Если, к примеру, понадобилось найти какую-нибудь информацию в отличном от html типе файла, можно воспользоваться оператором filetype, который позволяет искать информацию в определенном типе файлов (html, pdf, doc, rtf…).

Например:
Спецификация html filetype:pdf
Сочинения filetype:rtf

Оператор info:
Оператор info позволяет увидеть информацию, которая известна Google об этой странице.

Например:
info:www.сайт
info:www.сайт

Оператор site:
Этот оператор ограничивает поиск конкретным доменом или сайтом. То есть, если сделать запрос: маркетинг разведка site:www.сайт, то результаты будут получены со страниц, содержащих слова «маркетинг» и «разведка» именно на сайте «www..

Например:
Музыка site:www.сайт
Книги site:ru

Оператор link:
Этот оператор позволяет увидеть все страницы, которые ссылаются на страницу, по которой сделан запрос. Так, запрос link:www.google.com выдаст страницы, в которых есть ссылки на google.com.

Например:
link:www.сайт
Друзья link:www.сайт

Оператор allintitle:
Если запрос начать с оператора allintitle, что переводится как «все в заголовке», то Google выдаст тексты, в которых все слова запроса содержатся в заголовках (внутри тега TITLE в HTML).

Например:
allintitle:Бесплатный софт
allintitle:Скачать музыкальные альбомы

Оператор intitle:
Показывает страницы, в которых только то слово, которое стоит непосредственно после оператора intitle, содержится в заголовке, а все остальные слова запроса могут быть в любом месте текста. Если поставить оператор intitle перед каждым словом запроса, это будет эквивалентно использованию оператора allintitle.

Например:
Программы intitle:Скачать
intitle:Бесплатно intitle:скачать софт

Оператор allinurl:
Если запрос начинается с оператора allinurl, то поиск ограничен теми документами, в которых все слова запроса содержатся только в адресе страницы, то есть в url.

Например:
allinurl:rus games
allinurl:books fantasy

Оператор inurl:
Слово, которые расположено непосредственно слитно с оператором inurl, будет найдено только в адресе страницы Интернета, а остальные слова – в любом месте такой страницы.

Например:
inurl:books скачать
inurl:games кряк

Оператор related:
Этот оператор описывает страницы, которые «похожи» на какую-то конкретную страницу. Так, запрос related:www.google.com выдаст страницы со схожей с Google тематикой.

Например:
related:www.сайт
related:www.сайт

Оператор define:
Этот оператор выполняет роль своего рода толкового словаря, позволяющего быстро получить определение того слова, которое введено после оператора.

Например:
define:Кенгуру
define:Материнская плата

Оператор поиска синонимов (~):
Если вы хотите найти тексты, содержащие не только ваши ключевые слова, но и их синонимы, то можно воспользоваться оператором «~» перед словом, к которому необходимо найти синонимы.

Например:
Виды ~метаморфоз
~Объектное ориентирование

Оператор диапазона (..):
Для тех, кому приходится работать с цифрами, Google дал возможность искать диапазоны между числами. Для того, чтобы найти все страницы, содержащие числа в неком диапазоне «от — до», надо между этими крайними значениями поставить две точки (..), то есть, оператор диапазона.

Например:
Купить книгу $100..$150
Численность населения 1913..1935

The following is an alphabetical list of the search operators. This list includes operators that are not officially supported by Google and not listed in Google’s online help .

Note: Google may change how undocumented operators work or may eliminate them completely.

Each entry typically includes the syntax, the capabilities, and an example. Some of the search operators won’t work as intended if you put a space between the colon (:) and the subsequent query word. If you don’t care to check which search operators require no space after the colon, always place the keyword immediately next to the colon. Many search operators can appear anywhere in your query. In our examples, we place the search operator as far to the right as possible. We do this because the Advanced Search form writes queries in this way. Also, such a convention makes it clearer as to which operators are associated with which terms.

Allinanchor:

If you start your query with allinanchor: , Google restricts results to pages containing all query terms you specify in the on links to the page. For example, [ allinanchor: best museums sydney ] will return only pages in which the anchor text on links to the pages contain the words “best,” “museums,” and “sydney.”

Group:

If you include group: in your query, Google will restrict your Google Groups results to newsgroup articles from certain groups or subareas. For example, [ sleep group:misc.kids.moderated ] will return articles in the group misc.kids.moderated that contain the word “sleep” and [ sleep group:misc.kids ] will return articles in the subarea misc.kids that contain the word “sleep.”

Id: intitle:

The query intitle:term restricts results to documents containing term in the . For instance, [ flu shot intitle:help ] will return documents that mention the word “help” in their titles, and mention the words “flu” and “shot” anywhere in the document (title or not).

Note: There must be no space between the intitle: and the following word.

Putting intitle: in front of every word in your query is equivalent to putting allintitle: at the front of your query, e.g., [ intitle:google intitle:search ] is the same as [ allintitle: google search ].

If you include inurl: in your query, Google will restrict the results to documents containing that word in the . For instance, searches for pages on Google Guide in which the URL contains the word “print.” It finds pdf files that are in the directory or folder named “print” on the Google Guide website. The query [ inurl:healthy eating ] will return documents that mention the words “healthy” in their URL, and mention the word “eating” anywhere in the document.

Note: There must be no space between the inurl: and the following word.

Putting inurl: in front of every word in your query is equivalent to putting allinurl: at the front of your query, e.g., [ inurl:healthy inurl:eating ] is the same as [ allinurl: healthy eating ].

In URLs, words are often run together. They need not be run together when you’re using inurl:.

The query link:URL shows pages that point to that . For example, to find pages that point to Google Guide’s home page, enter:

Find links to the UK Owners Direct home page not on its own site.

Location: related:

You can also restrict your results to a site or domain through the domains selector on the Advanced Search page.

Получение частных данных не всегда означает взлом - иногда они опубликованы в общем доступе. Знание настроек Google и немного смекалки позволят найти массу интересного - от номеров кредиток до документов ФБР.

WARNING

Вся информация предоставлена исключительно в ознакомительных целях. Ни редакция, ни автор не несут ответственности за любой возможный вред, причиненный материалами данной статьи.

К интернету сегодня подключают всё подряд, мало заботясь об ограничении доступа. Поэтому многие приватные данные становятся добычей поисковиков. Роботы-«пауки» уже не ограничиваются веб-страницами, а индексируют весь доступный в Сети контент и постоянно добавляют в свои базы не предназначенную для разглашения информацию. Узнать эти секреты просто - нужно лишь знать, как именно спросить о них.

Ищем файлы

В умелых руках Google быстро найдет все, что плохо лежит в Сети, - например, личную информацию и файлы для служебного использования. Их частенько прячут, как ключ под половиком: настоящих ограничений доступа нет, данные просто лежат на задворках сайта, куда не ведут ссылки. Стандартный веб-интерфейс Google предоставляет лишь базовые настройки расширенного поиска, но даже их будет достаточно.

Ограничить поиск по файлам определенного вида в Google можно с помощью двух операторов: filetype и ext . Первый задает формат, который поисковик определил по заголовку файла, второй - расширение файла, независимо от его внутреннего содержимого. При поиске в обоих случаях нужно указывать лишь расширение. Изначально оператор ext было удобно использовать в тех случаях, когда специфические признаки формата у файла отсутствовали (например, для поиска конфигурационных файлов ini и cfg, внутри которых может быть все что угодно). Сейчас алгоритмы Google изменились, и видимой разницы между операторами нет - результаты в большинстве случаев выходят одинаковые.


Фильтруем выдачу

По умолчанию слова и вообще любые введенные символы Google ищет по всем файлам на проиндексированных страницах. Ограничить область поиска можно по домену верхнего уровня, конкретному сайту или по месту расположения искомой последовательности в самих файлах. Для первых двух вариантов используется оператор site, после которого вводится имя домена или выбранного сайта. В третьем случае целый набор операторов позволяет искать информацию в служебных полях и метаданных. Например, allinurl отыщет заданное в теле самих ссылок, allinanchor - в тексте, снабженном тегом , allintitle - в заголовках страниц, allintext - в теле страниц.

Для каждого оператора есть облегченная версия с более коротким названием (без приставки all). Разница в том, что allinurl отыщет ссылки со всеми словами, а inurl - только с первым из них. Второе и последующие слова из запроса могут встречаться на веб-страницах где угодно. Оператор inurl тоже имеет отличия от другого схожего по смыслу - site . Первый также позволяет находить любую последовательность символов в ссылке на искомый документ (например, /cgi-bin/), что широко используется для поиска компонентов с известными уязвимостями.

Попробуем на практике. Берем фильтр allintext и делаем так, чтобы запрос выдал список номеров и проверочных кодов кредиток, срок действия которых истечет только через два года (или когда их владельцам надоест кормить всех подряд).

Allintext: card number expiration date /2017 cvv

Когда читаешь в новостях, что юный хакер «взломал серверы» Пентагона или NASA, украв секретные сведения, то в большинстве случаев речь идет именно о такой элементарной технике использования Google. Предположим, нас интересует список сотрудников NASA и их контактные данные. Наверняка такой перечень есть в электронном виде. Для удобства или по недосмотру он может лежать и на самом сайте организации. Логично, что в этом случае на него не будет ссылок, поскольку предназначен он для внутреннего использования. Какие слова могут быть в таком файле? Как минимум - поле «адрес». Проверить все эти предположения проще простого.


Inurl:nasa.gov filetype:xlsx "address"


Пользуемся бюрократией

Подобные находки - приятная мелочь. По-настоящему же солидный улов обеспечивает более детальное знание операторов Google для веб-мастеров, самой Сети и особенностей структуры искомого. Зная детали, можно легко отфильтровать выдачу и уточнить свойства нужных файлов, чтобы в остатке получить действительно ценные данные. Забавно, что здесь на помощь приходит бюрократия. Она плодит типовые формулировки, по которым удобно искать случайно просочившиеся в Сеть секретные сведения.

Например, обязательный в канцелярии министерства обороны США штамп Distribution statement означает стандартизированные ограничения на распространение документа. Литерой A отмечаются публичные релизы, в которых нет ничего секретного; B - предназначенные только для внутреннего использования, C - строго конфиденциальные и так далее до F. Отдельно стоит литера X, которой отмечены особо ценные сведения, представляющие государственную тайну высшего уровня. Пускай такие документы ищут те, кому это положено делать по долгу службы, а мы ограничимся файлами с литерой С. Согласно директиве DoDI 5230.24, такая маркировка присваивается документам, содержащим описание критически важных технологий, попадающих под экспортный контроль. Обнаружить столь тщательно охраняемые сведения можно на сайтах в домене верхнего уровня.mil, выделенного для армии США.

"DISTRIBUTION STATEMENT C" inurl:navy.mil

Очень удобно, что в домене.mil собраны только сайты из ведомства МО США и его контрактных организаций. Поисковая выдача с ограничением по домену получается исключительно чистой, а заголовки - говорящими сами за себя. Искать подобным образом российские секреты практически бесполезно: в доменах.ru и.рф царит хаос, да и названия многих систем вооружения звучат как ботанические (ПП «Кипарис», САУ «Акация») или вовсе сказочные (ТОС «Буратино»).


Внимательно изучив любой документ с сайта в домене.mil, можно увидеть и другие маркеры для уточнения поиска. Например, отсылку к экспортным ограничениям «Sec 2751», по которой также удобно искать интересную техническую информацию. Время от времени ее изымают с официальных сайтов, где она однажды засветилась, поэтому, если в поисковой выдаче не удается перейти по интересной ссылке, воспользуйся кешем Гугла (оператор cache) или сайтом Internet Archive.

Забираемся в облака

Помимо случайно рассекреченных документов правительственных ведомств, в кеше Гугла временами всплывают ссылки на личные файлы из Dropbox и других сервисов хранения данных, которые создают «приватные» ссылки на публично опубликованные данные. С альтернативными и самодельными сервисами еще хуже. Например, следующий запрос находит данные всех клиентов Verizon, у которых на роутере установлен и активно используется FTP-сервер.

Allinurl:ftp:// verizon.net

Таких умников сейчас нашлось больше сорока тысяч, а весной 2015-го их было на порядок больше. Вместо Verizon.net можно подставить имя любого известного провайдера, и чем он будет известнее, тем крупнее может быть улов. Через встроенный FTP-сервер видно файлы на подключенном к маршрутизатору внешнем накопителе. Обычно это NAS для удаленной работы, персональное облако или какая-нибудь пиринговая качалка файлов. Все содержимое таких носителей оказывается проиндексировано Google и другими поисковиками, поэтому получить доступ к хранящимся на внешних дисках файлам можно по прямой ссылке.

Подсматриваем конфиги

До повальной миграции в облака в качестве удаленных хранилищ рулили простые FTP-серверы, в которых тоже хватало уязвимостей. Многие из них актуальны до сих пор. Например, у популярной программы WS_FTP Professional данные о конфигурации, пользовательских аккаунтах и паролях хранятся в файле ws_ftp.ini . Его просто найти и прочитать, поскольку все записи сохраняются в текстовом формате, а пароли шифруются алгоритмом Triple DES после минимальной обфускации. В большинстве версий достаточно просто отбросить первый байт.

Расшифровать такие пароли легко с помощью утилиты WS_FTP Password Decryptor или бесплатного веб-сервиса .

Говоря о взломе произвольного сайта, обычно подразумевают получение пароля из логов и бэкапов конфигурационных файлов CMS или приложений для электронной коммерции. Если знаешь их типовую структуру, то легко сможешь указать ключевые слова. Строки, подобные встречающимся в ws_ftp.ini , крайне распространены. Например, в Drupal и PrestaShop обязательно есть идентификатор пользователя (UID) и соответствующий ему пароль (pwd), а хранится вся информация в файлах с расширением.inc. Искать их можно следующим образом:

"pwd=" "UID=" ext:inc

Раскрываем пароли от СУБД

В конфигурационных файлах SQL-серверов имена и адреса электронной почты пользователей хранятся в открытом виде, а вместо паролей записаны их хеши MD5. Расшифровать их, строго говоря, невозможно, однако можно найти соответствие среди известных пар хеш - пароль.

До сих пор встречаются СУБД, в которых не используется даже хеширование паролей. Конфигурационные файлы любой из них можно просто посмотреть в браузере.

Intext:DB_PASSWORD filetype:env

С появлением на серверах Windows место конфигурационных файлов отчасти занял реестр. Искать по его веткам можно точно таким же образом, используя reg в качестве типа файла. Например, вот так:

Filetype:reg HKEY_CURRENT_USER "Password"=

Не забываем про очевидное

Иногда добраться до закрытой информации удается с помощью случайно открытых и попавших в поле зрения Google данных. Идеальный вариант - найти список паролей в каком-нибудь распространенном формате. Хранить сведения аккаунтов в текстовом файле, документе Word или электронной таблице Excel могут только отчаянные люди, но как раз их всегда хватает.

Filetype:xls inurl:password

С одной стороны, есть масса средств для предотвращения подобных инцидентов. Необходимо указывать адекватные права доступа в htaccess, патчить CMS, не использовать левые скрипты и закрывать прочие дыры. Существует также файл со списком исключений robots.txt, запрещающий поисковикам индексировать указанные в нем файлы и каталоги. С другой стороны, если структура robots.txt на каком-то сервере отличается от стандартной, то сразу становится видно, что на нем пытаются скрыть.

Список каталогов и файлов на любом сайте предваряется стандартной надписью index of. Поскольку для служебных целей она должна встречаться в заголовке, то имеет смысл ограничить ее поиск оператором intitle . Интересные вещи находятся в каталогах /admin/, /personal/, /etc/ и даже /secret/.

Следим за обновлениями

Актуальность тут крайне важна: старые уязвимости закрывают очень медленно, но Google и его поисковая выдача меняются постоянно. Есть разница даже между фильтром «за последнюю секунду» (&tbs=qdr:s в конце урла запроса) и «в реальном времени» (&tbs=qdr:1).

Временной интервал даты последнего обновления файла у Google тоже указывается неявно. Через графический веб-интерфейс можно выбрать один из типовых периодов (час, день, неделя и так далее) либо задать диапазон дат, но такой способ не годится для автоматизации.

По виду адресной строки можно догадаться только о способе ограничить вывод результатов с помощью конструкции &tbs=qdr: . Буква y после нее задает лимит в один год (&tbs=qdr:y), m показывает результаты за последний месяц, w - за неделю, d - за прошедший день, h - за последний час, n - за минуту, а s - за секунду. Самые свежие результаты, только что ставшие известными Google, находится при помощи фильтра &tbs=qdr:1 .

Если требуется написать хитрый скрипт, то будет полезно знать, что диапазон дат задается в Google в юлианском формате через оператор daterange . Например, вот так можно найти список документов PDF со словом confidential, загруженных c 1 января по 1 июля 2015 года.

Confidential filetype:pdf daterange:2457024-2457205

Диапазон указывается в формате юлианских дат без учета дробной части. Переводить их вручную с григорианского календаря неудобно. Проще воспользоваться конвертером дат .

Таргетируемся и снова фильтруем

Помимо указания дополнительных операторов в поисковом запросе их можно отправлять прямо в теле ссылки. Например, уточнению filetype:pdf соответствует конструкция as_filetype=pdf . Таким образом удобно задавать любые уточнения. Допустим, выдача результатов только из Республики Гондурас задается добавлением в поисковый URL конструкции cr=countryHN , а только из города Бобруйск - gcs=Bobruisk . В разделе для разработчиков можно найти полный список .

Средства автоматизации Google призваны облегчить жизнь, но часто добавляют проблем. Например, по IP пользователя через WHOIS определяется его город. На основании этой информации в Google не только балансируется нагрузка между серверами, но и меняются результаты поисковой выдачи. В зависимости от региона при одном и том же запросе на первую страницу попадут разные результаты, а часть из них может вовсе оказаться скрытой. Почувствовать себя космополитом и искать информацию из любой страны поможет ее двухбуквенный код после директивы gl=country . Например, код Нидерландов - NL, а Ватикану и Северной Корее в Google свой код не положен.

Часто поисковая выдача оказывается замусоренной даже после использования нескольких продвинутых фильтров. В таком случае легко уточнить запрос, добавив к нему несколько слов-исключений (перед каждым из них ставится знак минус). Например, со словом Personal часто употребляются banking , names и tutorial . Поэтому более чистые поисковые результаты покажет не хрестоматийный пример запроса, а уточненный:

Intitle:"Index of /Personal/" -names -tutorial -banking

Пример напоследок

Искушенный хакер отличается тем, что обеспечивает себя всем необходимым самостоятельно. Например, VPN - штука удобная, но либо дорогая, либо временная и с ограничениями. Оформлять подписку для себя одного слишком накладно. Хорошо, что есть групповые подписки, а с помощью Google легко стать частью какой-нибудь группы. Для этого достаточно найти файл конфигурации Cisco VPN, у которого довольно нестандартное расширение PCF и узнаваемый путь: Program Files\Cisco Systems\VPN Client\Profiles . Один запрос, и ты вливаешься, к примеру, в дружный коллектив Боннского университета.

Filetype:pcf vpn OR Group

INFO

Google находит конфигурационные файлы с паролями, но многие из них записаны в зашифрованном виде или заменены хешами. Если видишь строки фиксированной длины, то сразу ищи сервис расшифровки.

Пароли хранятся в зашифрованном виде, но Морис Массар уже написал программу для их расшифровки и предоставляет ее бесплатно через thecampusgeeks.com .

При помощи Google выполняются сотни разных типов атак и тестов на проникновение. Есть множество вариантов, затрагивающих популярные программы, основные форматы баз данных, многочисленные уязвимости PHP, облаков и так далее. Если точно представлять то, что ищешь, это сильно упростит получение нужной информации (особенно той, которую не планировали делать всеобщим достоянием). Не Shodan единый питает интересными идеями, но всякая база проиндексированных сетевых ресурсов!