Гуглохакинг, поиск критической информации с помощью google.

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

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

Web results page.

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

Google groups.

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

Google image search.

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

Настройки Google.

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

[ad name=»Responbl»]

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 и тд.

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

[ad name=»Responbl»]

Пример: 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» или отедльным ключевым словам.

Еще стоит обратить внимение на индексированные дампы БД, которые делают многие администраторы, часто бывает, что эти дампы отображаются через веб-интерфейс и индексируются поисковым ботом, тогда можно попробовать поискать их по содержанию ключевых фраз (и добавить некоторые слова, чтобы отсеить лишнее): «# Dumping data for table» (user | username | pass | password).

Можно также попробовать поискать дампы по расширению: filetype:sql sql.

Click to rate this post!
[Total: 14 Average: 3.3]

Специалист в области кибер-безопасности. Работал в ведущих компаниях занимающихся защитой и аналитикой компьютерных угроз. Цель данного блога - простым языком рассказать о сложных моментах защиты IT инфраструктур и сетей.

Leave a reply:

Your email address will not be published.