Complete Reference for Advanced Search Operators
- Fundamentals of Google Dorking
- Basic Search Filters
- Advanced Search Operators
- Boolean Logic & Combinations
- Practical Use Cases
- Security Research Techniques
- Information Gathering Methods
- Automation & Tools
- Ethical Guidelines
Google Dorking refers to using advanced search operators to find specific information that's not readily accessible through normal searches. These techniques leverage Google's extensive indexing capabilities to locate vulnerable systems, exposed data, or specific file types.
- Google's web crawlers continuously scan and index web content
- Over 130 trillion web pages indexed
- Processes over 3.5 billion searches daily
- Stores cached versions of web pages
- Indexes various file types (PDF, DOC, XLS, etc.)
- Vulnerability assessment
- Penetration testing
- Digital forensics
- Threat intelligence
- OSINT (Open Source Intelligence)
Searches for keywords within the main content of web pages.
Detailed Examples:
# Basic usage
intext:"username"
intext:"password"
# Multiple terms
intext:"login" intext:"credentials"
# Combination with other operators
intext:"admin" site:example.comRequires ALL specified keywords to appear in page content.
Detailed Examples:
# All terms must be present
allintext:"database connection string"
# Specific technical information
allintext:"API key" "authentication" "endpoint"
# Security-related searches
allintext:"vulnerability" "disclosure" "patch"Finds specified keywords within the URL path.
Detailed Examples:
# Administrative interfaces
inurl:admin
inurl:login
inurl:dashboard
inurl:cp
# Configuration files
inurl:config
inurl:settings
inurl:configuration
# API endpoints
inurl:api
inurl:endpoint
inurl:restRequires ALL specified keywords to appear in the URL.
Detailed Examples:
# Specific path combinations
allinurl:admin login
allinurl:wp content uploads
allinurl:phpmyadmin config
# Database-related URLs
allinurl:php?id=
allinurl:asp?content=Searches for keywords in HTML <title> tags.
Detailed Examples:
# Directory listings
intitle:"index of"
intitle:"directory listing"
# Login pages
intitle:"login"
intitle:"sign in"
intitle:"authentication"
# Error pages
intitle:"error"
intitle:"404"
intitle:"not found"Requires ALL specified keywords in the page title.
Detailed Examples:
# Specific title combinations
allintitle:"server statistics"
allintitle:"web analytics"
allintitle:"admin panel"Limits searches to specific domains or TLDs.
Detailed Examples:
# Specific domain
site:github.com
site:example.com
# Top-Level Domains (TLDs)
site:.gov
site:.edu
site:.mil
# Subdomains
site:*.example.com
site:docs.*.com
# Multiple domains
site:com | site:org | site:netSearches for specific file formats.
Complete File Type List:
# Documents
filetype:pdf
filetype:doc
filetype:docx
filetype:ppt
filetype:pptx
filetype:xls
filetype:xlsx
filetype:rtf
filetype:odt
# Data Files
filetype:sql
filetype:csv
filetype:json
filetype:xml
filetype:log
# Configuration Files
filetype:conf
filetype:config
filetype:ini
filetype:yml
filetype:yaml
filetype:env
# Source Code
filetype:php
filetype:js
filetype:py
filetype:java
filetype:c
filetype:cpp
# Archives
filetype:zip
filetype:rar
filetype:tar
filetype:gz
# Database Files
filetype:mdb
filetype:accdb
filetype:db
filetype:sqlitePractical Examples:
# Confidential documents
filetype:pdf "confidential" "internal use only"
# Database dumps
filetype:sql "CREATE TABLE" "INSERT INTO"
# Configuration files with credentials
filetype:env "DB_PASSWORD" "API_KEY"
# Log files with sensitive data
filetype:log "password" "username"Finds pages linking to a specific URL.
Detailed Examples:
# Basic backlink check
link:example.com
# Competitor analysis
link:competitor.com
# Authority checking
link:government.govFinds websites similar to specified domain.
Detailed Examples:
# Find competitors
related:amazon.com
# Similar services
related:github.com
# Industry peers
related:microsoft.comSearches for specific numerical values or ranges.
Detailed Examples:
# Price ranges
"product" numrange:100-500
"cost" numrange:1000-5000
# Version numbers
"version" numrange:2.0-3.0
"release" numrange:2020-2023
# Technical specifications
"memory" numrange:8-16
"storage" numrange:500-1000Searches within specific date ranges (Julian calendar format).
Detailed Examples:
# Julian date format
daterange:2459545-2459580
# Combined with filetype
filetype:pdf daterange:2459545-2459580Searches content within specific date ranges.
Detailed Examples:
# Basic date ranges
after:2023-01-01 before:2023-12-31
# Recent content
after:2024-01-01
# Historical content
before:2020-01-01
# Combined searches
filetype:pdf after:2023-01-01 "confidential"Searches for text in hyperlinks pointing to pages.
Detailed Examples:
# Download links
inanchor:"download"
inanchor:"click here"
# Security-related anchors
allinanchor:"free download" "full version"
# Navigation elements
inanchor:"home" "about" "contact"Shows Google's stored version of a page.
Detailed Examples:
# View cached version
cache:example.com
# Specific page cache
cache:example.com/admin
# Compare current vs cached
cache:example.com/loginShows information Google has about a page.
Detailed Examples:
# Basic info
info:example.com
# Multiple pages
info:example.com/page1 info:example.com/page2Filters results by geographic location.
Detailed Examples:
# Country-specific
location:US
location:UK
location:DE
# Combined with other operators
site:.gov location:US "confidential"Filters news results by specific sources.
Detailed Examples:
# Specific news sources
source:bbc
source:reuters
source:associated_pressBroadens search to include multiple alternatives.
Detailed Examples:
# Multiple domains
site:facebook.com | site:twitter.com | site:linkedin.com
# Multiple file types
filetype:pdf | filetype:doc | filetype:docx
# Multiple keywords
"username" | "user" | "login"Narrows search by requiring multiple conditions.
Detailed Examples:
# Multiple requirements
site:github.com & intext:"API" & intext:"key"
# Complex combinations
filetype:sql & intext:"password" & intext:"users"Excludes specific terms from results.
Detailed Examples:
# Exclude specific sites
"database" -site:github.com -site:stackoverflow.com
# Exclude file types
"config" -filetype:pdf -filetype:doc
# Exclude terms
"admin" -"test" -"demo"Controls operator precedence and complex logic.
Detailed Examples:
# Complex domain searches
(site:facebook.com | site:twitter.com) & (intext:"login" | intext:"signin")
# Multiple conditions
(filetype:pdf | filetype:doc) & ("confidential" | "secret") & -"public"
# Nested logic
(site:.gov | site:.edu) & (intext:"research" | intext:"study") & -"publication"Combining multiple operators for precision.
Detailed Examples:
# Progressive filtering
site:.edu intext:"database" filetype:sql -"test"
# Multiple exclusion criteria
"password" filetype:txt -site:pastebin.com -site:github.comRequires specific terms to be present.
Detailed Examples:
# Required terms
+site:facebook.* +intext:"admin"
# Multiple requirements
+"API" +"key" +"authentication"Removing unwanted results effectively.
Detailed Examples:
# Exclude common false positives
"index of" -"html" -"htm" -"php"
# Exclude specific content types
"password" -filetype:html -filetype:php# Common config files
inurl:"config.xml" | inurl:"config.json" | inurl:".env"
filetype:env DB_PASSWORD
inurl:"wp-config.php"
"database_password" filetype:cfg
# Framework-specific configs
"settings.py" "SECRET_KEY"
"config/database.yml"
"application.properties" "spring.datasource.password"# Basic directory listings
intitle:"index of"
"parent directory"
"directory listing for"
# Specific content types
intitle:"index of" "mp3"
intitle:"index of" "pdf"
intitle:"index of" "backup"
# Advanced directory searches
intitle:"index of" "site.tar.gz"
intitle:"index of" "database.sql"
intitle:"index of" "backup.zip"# Common admin panels
inurl:/admin/
inurl:/phpmyadmin/
inurl:/cpanel/
inurl:/webmin/
# Device-specific interfaces
intitle:"router" inurl:"login"
intitle:"camera" inurl:"login"
"network device" "configuration" inurl:admin# Employee directories
"employee directory" site:company.com
"staff list" filetype:xls site:org.com
"organizational chart" filetype:pdf
# Contact information
"@company.com" "phone" "extension"
"contact us" filetype:vcf
"email" "directory" site:edu# Financial documents
filetype:pdf "financial report" "Q1 2024"
"profit and loss" filetype:xlsx
"balance sheet" "confidential"
# Business plans
"business plan" "proprietary" "competitive analysis"
"strategic roadmap" "internal use only"# Network diagrams
"network diagram" "infrastructure" filetype:vsd | filetype:pdf
"topology" "internal network"
"rack layout" "data center"
# Server information
"server status" "internal"
"monitoring" "dashboard" inurl:8080# API documentation
"API documentation" "endpoints" "authentication"
"Swagger" "OpenAPI" filetype:json | filetype:yaml
# Source code exposure
"source code" "repository" inurl:.git
filetype:sql "CREATE TABLE" "users"# Various credential formats
"password" filetype:txt | filetype:log | filetype:sql
"api_key" "="
"ssh-rsa" "PRIVATE KEY"
"BEGIN RSA PRIVATE KEY"
# Platform-specific keys
"AWS_ACCESS_KEY"
"AZURE_STORAGE_CONNECTION_STRING"
"GOOGLE_API_KEY"# Login credentials
"login" "password" filetype:csv
"username" "password" filetype:xlsx
"authentication" "credentials" filetype:xml
# Session data
"session_id" "cookie"
"token" "expires"# Software versions
"Powered by" "Version"
"Apache" "Server Version"
"nginx" "built on"
# Vulnerability-specific searches
"vulnerable version" "update required"
"security patch" "CVE-2024"# Debug information
"debug mode" "true"
"stack trace" "exception"
"error occurred at"
# Database errors
"mysql_fetch_array()"
"ODBC Driver" "error"
"SQLException"# Service banners
"Apache" "Server at" "port"
"nginx" "welcome to"
"ISS" "Windows Server"
# Protocol-specific
"ftp" "anonymous" "login"
"telnet" "connected to"
"ssh" "authorized"# IoT devices
"router login" "default password"
"camera" "web interface"
"printer" "configuration page"
# Industrial control systems
"SCADA" "HMI" "login"
"PLC" "interface" "control"# Policy and procedure documents
"internal policy" "confidential" filetype:pdf
"employee handbook" "proprietary"
"standard operating procedure" "SOP"
# Strategic documents
"strategic plan" "internal"
"roadmap" "product development"
"competitive analysis" "restricted"# Meeting minutes
"meeting minutes" "action items" filetype:doc
"board meeting" "confidential"
# Email and communication
"internal memo" "distribution list"
"announcement" "employees only"# Research papers
filetype:pdf "dissertation" "thesis"
"research paper" "unpublished"
"study" "preliminary findings"
# Course materials
"syllabus" "lecture notes" filetype:pdf
"assignment" "solution manual"# University information
"campus" "faculty" "directory"
"student records" "FERPA"
"research data" "dataset"import requests
from googlesearch import search
def google_dork_search(query, num_results=100):
"""
Perform automated Google dork searches
"""
results = []
try:
for url in search(query, num_results=num_results):
results.append(url)
except Exception as e:
print(f"Error: {e}")
return results
# Example searches
queries = [
'filetype:sql "CREATE TABLE" "users"',
'inurl:admin "login"',
'intitle:"index of" "parent directory"'
]
for query in queries:
print(f"Searching: {query}")
results = google_dork_search(query)
for result in results:
print(f" - {result}")#!/bin/bash
# Google dork automation script
search_terms=(
'filetype:pdf "confidential"'
'inurl:admin "password"'
'intitle:"index of" "database"'
)
for term in "${search_terms[@]}"; do
echo "Searching: $term"
# Use lynx or curl for automated searching
lynx -dump "https://www.google.com/search?q=${term}" | grep -oP 'http[s]?://[^"]+' >> results.txt
done# Combine with nmap for targeted scanning
google_dork_results | grep -oP 'https?://[^/]+' | sort -u | \
xargs -I {} nmap -sV {}
# Integrate with wayback machine
google_dork_results | waybackurls | tee archived_urls.txtCreating custom Google search engines for specific dorking purposes.
- Always respect robots.txt directives
- Adhere to computer fraud and abuse acts
- Respect intellectual property rights
- Follow international cyber laws
- Use for authorized testing only
- Obtain proper permissions
- Respect privacy boundaries
- Report vulnerabilities responsibly
- Identification: Confirm the vulnerability
- Documentation: Collect evidence ethically
- Notification: Contact organization responsibly
- Coordination: Work with security team
- Resolution: Verify fix implementation
- Do not download sensitive data
- Take minimal screenshots for proof
- Encrypt all communications
- Securely store temporary data
- Computer Fraud and Abuse Act (CFAA) - USA
- Computer Misuse Act - UK
- GDPR - European Union
- Local cybercrime legislation
- Penetration testing authorization
- Bug bounty program rules
- Academic research guidelines
- Corporate security policies
- Maintain written permission
- Document scope and boundaries
- Keep detailed activity logs
- Use encrypted communications
- Test only authorized systems
- Avoid production environments
- Use test accounts when possible
- Implement time restrictions
- Use specific over broad terms
- Combine multiple operators
- Leverage caching for repeated searches
- Schedule searches during off-peak hours
- Progressive filtering approach
- Multiple verification methods
- Cross-reference with other sources
- Validate findings manually
- Monitor security researcher blogs
- Follow Google search updates
- Participate in security communities
- Practice regularly with test environments
- Update dork databases regularly
- Maintain operator cheat sheets
- Document successful techniques
- Share knowledge with community
Thanks for sharing!