Google Dorks: Pokročilé vyhledávání

Google Dorks: Pokročilé vyhledávání pro vývojáře a bezpečnostní experty

Google Dorks představují jednu z nejsilnějších technik pro pokročilé vyhledávání informací na internetu. Tyto specializované vyhledávací dotazy využívají pokročilé operátory k odhalení specifických dat, která běžné vyhledávání často přehlédne. Pro vývojáře, bezpečnostní analytiky a IT specialisty představují neocenitelný nástroj pro průzkum digitálního prostoru.

Co jsou Google Dorks?

Google Dorks, známé také jako Google Dorking nebo Google Hacking, jsou pokročilé vyhledávací techniky, které využívají specializované operátory k vyhledání konkrétních informací v Googleově indexu. Tyto techniky byly poprvé představeny v roce 2002 bezpečnostním expertem Johnnym Longem a od té doby se staly standardním nástrojem v oblasti kyberbezpečnosti a OSINT (Open Source Intelligence).

Princip fungování

Google Dorks fungují na principu kombinování specifických vyhledávacích operátorů s cílenými klíčovými slovy. Místo širokého vyhledávání témat pomáhají Google Dorking příkazy zpřesnit výsledky a odhalit obsah, který nemusí být snadno dostupný prostřednictvím standardních vyhledávacích dotazů.

Příklad běžného vyhledávání:

login page security

Výsledek: Miliony obecných stránek o bezpečnosti přihlašovacích stránek

Příklad Google Dork:

intitle:"login" filetype:php site:company.com

Výsledek: Konkrétní PHP soubory s "login" v názvu na doméně company.com

Jak Google indexuje informace

Google jako vyhledávač prochází web pomocí crawlerů (robotů), kteří indexují obsah webových stránek. Tento proces zachytává nejen veřejně dostupný obsah, ale někdy i:

  • Špatně nakonfigurované servery - zobrazující adresářové struktury
  • Zapomenuté soubory - staré backupy, logy, konfigurační soubory
  • Vývojářské materiály - testovací stránky, dokumentace
  • Citlivá data - neúmyslně exponovaná v nesprávných lokacích

Praktický příklad:
Představte si vývojáře, který omylem nahrál konfigurační soubor database.config do veřejné složky. Standardní uživatel tento soubor nenajde, ale Google Dork může:

filetype:config "database" "password" site:targetsite.com

Hlavní výhodou Google Dorks je schopnost přistupovat k informacím, které nejsou snadno dostupné prostřednictvím standardního vyhledávání. Google jako indexovací služba organizuje webový obsah způsobem, který umožňuje přístup k těmto specializovaným dotazům, včetně oblastí typicky nepřístupných běžným uživatelům.

Základní Google Dork operátory

Operátory pro filtrování obsahu

Operátor Popis Příklad použití Reálný výsledek
site: Omezuje vyhledávání na konkrétní web nebo doménu site:github.com security vulnerability Najde všechny stránky na GitHub obsahující "security vulnerability"
filetype: Vyhledává specifické typy souborů filetype:pdf kyberbezpečnost Vyhledá všechny PDF dokumenty o kyberbezpečnosti
intitle: Hledá klíčová slova v názvu stránky intitle:"index of" admin Najde stránky s "index of" v názvu a "admin" kdekoli
inurl: Vyhledává klíčová slova v URL adrese inurl:login.php Vyhledá stránky s "login.php" v URL
intext: Hledá text v obsahu stránky intext:"password" filetype:txt Najde textové soubory obsahující slovo "password"
cache: Zobrazuje cachovanou verzi stránky cache:example.com Ukáže poslední uloženou verzi stránky v Google cache

Detailní vysvětlení základních operátorů

Operátor site:

Tento operátor je jedním z nejpoužívanějších a nejbezpečnějších. Umožňuje omezit vyhledávání pouze na konkrétní doménu nebo subdoménu.

Základní syntaxe:

site:domain.com "vyhledávaný termín"

Praktické příklady:

# Vyhledání všech PDF souborů na GitHubu
site:github.com filetype:pdf

# Hledání bezpečnostních advisories na konkrétní doméně
site:company.com "security advisory"

# Vyhledání všech subdomén
site:*.company.com

# Vyloučení hlavní domény, pouze subdomény
site:*.company.com -site:company.com

Reálný příklad výstupu:

site:stackoverflow.com "python security"
→ Vrátí: 
- https://stackoverflow.com/questions/python-security-best-practices
- https://stackoverflow.com/questions/secure-python-coding
- https://stackoverflow.com/questions/python-cryptography-libraries

Operátor filetype: a ext:

Tyto operátory jsou identické a umožňují vyhledávání konkrétních typů souborů.

Podporované formáty:

  • Dokumenty: pdf, doc, docx, xls, xlsx, ppt, pptx, txt, rtf
  • Archivy: zip, rar, tar, gz
  • Konfigurace: xml, json, config, ini, cfg
  • Skripty: php, asp, jsp, py, js
  • Databáze: sql, db, mdb

Praktické příklady:

# Vyhledání Excel souborů s finančními daty
filetype:xlsx "budget" "quarterly"

# Konfiguračí soubory s hesly
filetype:config "password" OR "pwd"

# SQL soubory s dump daty
ext:sql "CREATE TABLE" "INSERT INTO"

# Presentation soubory o bezpečnosti
filetype:ppt OR filetype:pptx "cybersecurity" "presentation"

Operátor intitle:

Vyhledává konkrétní termíny v HTML značce <title> stránky.

Syntaxe a příklady:

# Základní vyhledávání
intitle:"admin panel"

# Kombinace s dalšími operátory
intitle:"login" site:company.com

# Vyhledání chybových stránek
intitle:"error" OR intitle:"not found" site:target.com

# Specifické aplikace
intitle:"phpMyAdmin" "Welcome to phpMyAdmin"

Nebezpečné kombinace pro testování:

# Exponované admin panely
intitle:"Admin Panel" OR intitle:"Administration"
intitle:"Control Panel" login
intitle:"Dashboard" password

# Databázové rozhraní
intitle:"phpMyAdmin" "running on"
intitle:"Adminer" "Database"

# Webové shelly
intitle:"Shell" "Command"
intitle:"Terminal" "Execute"

Operátor inurl:

Vyhledává termíny přímo v URL adrese stránky.

Bezpečnostní aplikace:

# Potenciálně zranitelné skripty
inurl:"admin.php"
inurl:"login.asp"
inurl:"config.php"

# SQL injection cíle
inurl:"php?id="
inurl:"product.php?id="
inurl:"news.php?article="

# File inclusion vulnerabilities
inurl:"include="
inurl:"page="
inurl:"file="

# Directory traversal
inurl:"../"
inurl:"path="

Pokročilé kombinace operátorů

Operátor allintitle:

Na rozdíl od intitle:, který hledá každý termín samostatně, allintitle: vyžaduje všechny termíny v názvu stránky.

# Všechny termíny musí být v názvu
allintitle:admin panel login

# Ekvivalent s intitle:
intitle:admin intitle:panel intitle:login

Operátor allinurl:

Podobně jako allintitle:, ale pro URL adresy.

# Všechny termíny v URL
allinurl:admin config php

# Ekvivalent s inurl:
inurl:admin inurl:config inurl:php

Operátor allintext:

Všechny termíny musí být v textu stránky.

# Vyhledání dokumentů s konkrétními termíny
allintext:confidential internal memo salary

# Hledání citlivých informací
allintext:password username database connection

Logické operátory a speciální znaky

Logické operátory

AND operátor

site:facebook.com & site:twitter.com

OR operátor

site:facebook.com | site:twitter.com

Kombinace operátorů

(site:facebook.com | site:twitter.com) & intext:"login"

Speciální znaky

*Wildcard ()**
Hvězdička slouží jako zástupný znak pro neznámé nebo proměnné slovo:

site:*.gov "confidential"

Uvozovky ("")
Vyhledávají přesnou frázi:

"error message" site:stackoverflow.com

Minus (-)
Vyloučí výsledky obsahující zadané slovo:

site:github.com -site:gist.github.com

Plus (+)
Zajistí zahrnutí konkrétního termínu:

+python +security site:*.edu

Praktické využití pro vývojáře

Vyhledávání zdrojového kódu a konfigurace

Analýza konfigurací a citlivých souborů

Konfigurační soubory:

# Web.config soubory (ASP.NET)
filetype:config inurl:web.config
# Výsledek: Exponované web.config soubory obsahující connection strings

# Database konfigurace
filetype:config "database" "password" 
# Reálný příklad nálezu:
# <connectionStrings>
#   <add name="DefaultConnection" connectionString="Data Source=server;Initial Catalog=db;User ID=admin;Password=123456"/>
# </connectionStrings>

# Environment soubory (.env)
filetype:env "DB_PASSWORD" | "API_KEY" | "SECRET_KEY"
# Typický nález:
# DB_PASSWORD=supersecretpassword
# API_KEY=sk-1234567890abcdef
# JWT_SECRET=myverysecretjwtkey

# Application.properties (Java Spring)
filetype:properties "spring.datasource.password"
# Příklad:
# spring.datasource.url=jdbc:mysql://localhost:3306/mydb
# spring.datasource.username=root
# spring.datasource.password=admin123

Backup a dočasné soubory:

# SQL dump soubory
filetype:sql "CREATE TABLE" "INSERT INTO"
# Může odhalit:
# CREATE TABLE users (id int, username varchar(50), password varchar(255));
# INSERT INTO users VALUES (1, 'admin', 'md5hashhere');

# Backup soubory
filetype:backup | filetype:bak | filetype:old
intitle:"index of" "backup"

# Dočasné vývojářské soubory
filetype:tmp | filetype:temp "test" | "debug"
"test.php" | "debug.php" | "temp.php"

Git a verzovací systémy

Exponované .git adresáře:

# .git konfigurace
intitle:"index of" ".git"
inurl:".git" filetype:config

# Konkrétní Git soubory
inurl:".git/config"
inurl:".git/HEAD"
inurl:".git/logs/"

# Reálný příklad nálezu v .git/config:
# [core]
#     repositoryformatversion = 0
# [remote "origin"]
#     url = https://username:password@github.com/company/secret-repo.git

API klíče ve veřejných repozitářích:

# GitHub hledání API klíčů
site:github.com "api_key" | "apikey" | "api-key"
site:github.com "secret_key" | "secretkey" 
site:github.com "private_key" BEGIN RSA PRIVATE KEY

# Specifické služby
site:github.com "aws_access_key_id"
site:github.com "SLACK_TOKEN" | "slack_api_token"
site:github.com "stripe_api_key" | "sk_live_"

# Reálný příklad nálezu:
# const API_KEY = "AIzaSyDXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
# const STRIPE_SECRET = "sk_live_xxxxxxxxxxxxxxxxxxxx";

Analýza konkurence a research

Technologické zásobníky

Zjištění používaných technologií:

# Server technologie
site:competitor.com "powered by" | "built with" | "running on"
# Typické nálezy:
# "Powered by WordPress 5.8"
# "Built with React.js"
# "Running on Apache/2.4.41"

# Framework detekce
site:competitor.com "/wp-content/" | "/drupal/" | "/joomla/"
site:competitor.com "django" | "flask" | "laravel" | "symfony"

# CDN a služby
site:competitor.com "cloudflare" | "amazonaws" | "azure" | "googleapis"

Error stránky odhalující architekuru:

# Chybové zprávy serveru
site:competitor.com "500 Internal Server Error" | "404 Not Found"
site:competitor.com "Apache Tomcat" | "nginx" | "IIS"

# Databázové chyby
site:competitor.com "MySQL" "error" | "PostgreSQL" "error"
site:competitor.com "Warning: mysql_" | "Fatal error:"

# Reálný příklad chybové zprávy:
# Fatal error: Uncaught Error: Call to undefined function mysql_connect() 
# in /var/www/html/includes/database.php:15
# Stack trace: ...

Strategický business intelligence

Finanční a business dokumenty:

# Výroční zprávy
site:competitor.com filetype:pdf "annual report" | "výroční zpráva"
site:competitor.com filetype:pdf "investor" "presentation"

# Ceníky a obchodní podmínky
site:competitor.com filetype:pdf "price list" | "ceník" | "pricing"
site:competitor.com "terms of service" | "obchodní podmínky"

# Interní dokumenty (omylem publikované)
site:competitor.com filetype:doc | filetype:docx "confidential" | "internal"
site:competitor.com filetype:ppt | filetype:pptx "strategy" | "roadmap"

HR a personální informace:

# Organizační struktury
site:competitor.com filetype:pdf "organization chart" | "org chart"
site:competitor.com "employee directory" | "staff list"

# Job postings pro analýzu technologií
site:competitor.com "job" | "career" "python" | "java" | "react"
site:competitor.com "kubernetes" | "docker" | "aws" inurl:careers

Monitoring změn a aktualit

Novinky a press releases:

# Nedávné tiskové zprávy
site:competitor.com "press release" after:2024-01-01
site:competitor.com "announcement" | "oznámení" after:2024-01-01

# Partnership a spolupráce
site:competitor.com "partnership" | "collaboration" | "acquisition"
site:competitor.com "merger" | "investment" | "funding"

Vývojářský debugging a troubleshooting

Hledání řešení problémů

Stack traces a error logs:

# Specifické chybové zprávy
"java.lang.NullPointerException" site:stackoverflow.com
"TypeError: Cannot read property" site:github.com issues

# Python chyby
"Python" "traceback" "error" site:*.edu | site:github.com
"Django" "ImproperlyConfigured" site:stackoverflow.com

# JavaScript debugging
"Uncaught TypeError" "javascript" site:stackoverflow.com
"ReferenceError" "is not defined" site:github.com

Konfigurační problémy:

# Docker a kontejnerizace
"dockerfile" "error" "build failed" site:stackoverflow.com
"kubernetes" "deployment" "failed" site:github.com

# Database issues
"connection refused" "mysql" | "postgresql" site:dba.stackexchange.com
"timeout" "database" "connection pool" site:*.com

Bezpečnostní research

Vulnerability research:

# CVE hledání
"CVE-2024" "vulnerability" "exploit"
"security advisory" filetype:pdf after:2024-01-01

# Konkrétní technologie
"WordPress" "vulnerability" "RCE" | "SQL injection"
"Apache" "vulnerability" "remote code execution"

# Bug bounty a security research
site:hackerone.com "disclosed" "vulnerability"
site:github.com "security" "vulnerability" "POC" | "proof of concept"

Malware analysis:

# Hash values a IoCs
"MD5:" | "SHA1:" | "SHA256:" "malware"
"indicator of compromise" | "IoC" filetype:txt | filetype:csv

# YARA rules
"rule" "malware" filetype:yar | filetype:yara
"strings:" "condition:" site:github.com yara

Bezpečnostní aplikace

Identifikace vulnerabilit

Google Dorks jsou mocným nástrojem pro identifikaci bezpečnostních slabin:

# Exponované admin panely
intitle:"index of" admin
inurl:admin login

# Přístupné adresáře
intitle:"index of /" password
intitle:"index of" "parent directory"

# Databázové soubory
filetype:sql "INSERT INTO" site:target.com

# Backup soubory
filetype:bak site:target.com
intitle:"index of" backup

OSINT a digitální forensika

# Vyhledávání konkrétních uživatelů
"username" site:socialmedia.com

# Email adresy
"@company.com" -site:company.com

# Telefónní čísla a kontakty
"telefon" "+420" site:company.com

Ochrana před Google Dorking

Implementace robots.txt

User-agent: *
Disallow: /admin/
Disallow: /config/
Disallow: /backup/
Disallow: /*.sql$
Disallow: /*.config$
Disallow: /*.log$

Konfigurace .htaccess

# Zakázání indexování adresářů
Options -Indexes

# Ochrana citlivých souborů
<Files "*.config">
Order allow,deny
Deny from all
</Files>

<Files "*.log">
Order allow,deny
Deny from all
</Files>

Web Application Firewall (WAF)

Implementace WAF s pravidly pro detekci Google Dorking pokusů:

# Detekce podezřelých dotazů
"inurl:", "filetype:", "intitle:" v referrer hlavičkách

Etické aspekty a právní rámec

Používání Google Dorks musí být v souladu s etickými zásadami a právními normami:

Legální použití

  • Bezpečnostní audity s povolením
  • Výzkum a analýza veřejně dostupných dat
  • Penetrační testování se souhlasem
  • OSINT investigace

Problematické použití

  • Obcházení autorizačních mechanismů
  • Přístup k neoprávněným datům
  • Porušování ochrany osobních údajů
  • Komerční špionáž

Google Dorks Cheat Sheet

Nejpoužívanější kombinace

# Veřejné dokumenty
ext:(doc|pdf|xls|txt|rtf) intext:confidential
ext:(doc|pdf|xls) intext:"internal use only"

# Chybové zprávy s informacemi o systému
"SQL syntax error" site:target.com
"Warning: mysql_" site:target.com
"Fatal error:" site:target.com

# Exponované databáze
"phpMyAdmin" "Welcome to phpMyAdmin"
intitle:"phpMyAdmin" "running on"

# Citlivé adresáře
intitle:"index of" "parent directory" size
intitle:"Index of" wp-content/uploads/

# Login stránky
inurl:login.php
inurl:admin.php
intitle:"Admin Panel" login

Specifické pro bezpečnostní testování

# Testování SQL injection
inurl:"php?id=" site:target.com
inurl:"aspx?id=" site:target.com

# File inclusion vulnerabilities
inurl:"php?page=" site:target.com
inurl:"include=" site:target.com

# Directory traversal
inurl:"../" site:target.com

Automatizace a nástroje

Pro efektivní využití Google Dorks můžete použít specializované nástroje:

Command line nástroje

# Golang nástroj pro automatizaci
go install github.com/dwisiswant0/gork@latest

# Python skript pro batch vyhledávání
python google-dorker.py --target domain.com --threads 10

Bezpečnostní frameworky

  • GHDB (Google Hacking Database) - největší databáze Google Dorks
  • Recon-ng - framework s Google Dorks moduly
  • theHarvester - nástroj pro OSINT s podporou Google Dorks

Budoucnost a trendy

Vývoj Google Dorks sleduje několik trendů:

Zvyšující se sofistikovanost

  • Kombinace s umělou inteligencí
  • Automatizované generování dotazů
  • Integrace s dalšími OSINT nástroji

Obranné mechanismy

  • Pokročilé detekční systémy
  • Dynamické honeypots
  • AI-powered anomálie detekce

Závěr

Google Dorks představují mocný nástroj pro každého, kdo potřebuje efektivně vyhledávat specifické informace na internetu. Pro vývojáře a bezpečnostní specialisty jsou nepostradatelné při auditu bezpečnosti, competitive intelligence a OSINT aktivitách.

Klíčem k úspěšnému využití je kombinace technických znalostí s etickým přístupem. Vždy dodržujte právní předpisy a používejte tyto techniky pouze pro legitimní účely. Pamatujte, že s velkou mocí přichází velká odpovědnost - Google Dorks vám umožní najít informace, které možná neměly být veřejně dostupné, ale jejich použití musí být vždy v souladu s etickými zásadami a právním rámcem.

Investice času do naučení se pokročilých vyhledávacích technik se rozhodně vyplatí a může výrazně zvýšit vaši efektivitu při práci s informacemi v digitálním prostředí.

Loading