// Google Dorks Database const dorks = [ // Sensitive Files { id: 1, category: 'sensitive-files', title: 'SQL Database Files', query: 'site:{target} ext:sql | ext:db | ext:sqlite | ext:sqlite3 | ext:mdb | ext:dbf', description: 'Find exposed database files', icon: 'database' }, { id: 2, category: 'sensitive-files', title: 'Configuration Files', query: 'site:{target} ext:xml | ext:conf | ext:cnf | ext:reg | ext:inf | ext:rdp | ext:cfg | ext:ini | ext:env', description: 'Exposed configuration and settings files', icon: 'file-cog' }, { id: 3, category: 'sensitive-files', title: 'Log Files', query: 'site:{target} ext:log', description: 'Find log files with sensitive data', icon: 'file-text' }, { id: 4, category: 'sensitive-files', title: 'Backup & Old Files', query: 'site:{target} ext:bkf | ext:bkp | ext:bak | ext:old | ext:backup | ext:save', description: 'Backup and old file versions', icon: 'archive' }, { id: 5, category: 'sensitive-files', title: 'Password Files', query: 'site:{target} intitle:index.of "password.txt" | "passwd" | "credentials"', description: 'Search for password files in directory listings', icon: 'key' }, { id: 6, category: 'sensitive-files', title: 'Git Repositories', query: 'inurl:.git site:{target} "index of" | intitle:"Index of /.git"', description: 'Exposed Git repositories', icon: 'git-branch' }, // Vulnerabilities { id: 7, category: 'vulnerabilities', title: 'SQL Injection Parameters', query: 'site:{target} inurl:".php?id=" | inurl:".asp?id=" | inurl:"/index.php?id=" | inurl:"/product.php?id="', description: 'Potential SQL injection points', icon: 'alert-triangle' }, { id: 8, category: 'vulnerabilities', title: 'XSS Parameters', query: 'site:{target} inurl:"?q=" | inurl:"?search=" | inurl:"?query=" | inurl:"?s=" | inurl:"?keyword="', description: 'Parameters that might be vulnerable to XSS', icon: 'crosshair' }, { id: 9, category: 'vulnerabilities', title: 'LFI/RFI Parameters', query: 'site:{target} inurl:"?file=" | inurl:"?page=" | inurl:"?path=" | inurl:"?folder=" | inurl:"?include="', description: 'File inclusion vulnerability parameters', icon: 'file-input' }, { id: 10, category: 'vulnerabilities', title: 'Open Redirects', query: 'site:{target} inurl:"?url=" | inurl:"?redirect=" | inurl:"?return=" | inurl:"?next=" | inurl:"?redirect_uri="', description: 'Potential open redirect parameters', icon: 'link' }, { id: 11, category: 'vulnerabilities', title: 'phpinfo() Pages', query: 'site:{target} "PHP Version" "phpinfo()" "Zend Scripting Language Engine"', description: 'Exposed PHP configuration pages', icon: 'info' }, { id: 12, category: 'vulnerabilities', title: 'API Keys & Tokens', query: 'site:{target} "api_key" | "apikey" | "api_secret" | "access_token" | "auth_token" | "client_secret"', description: 'Hardcoded API keys and tokens', icon: 'key-round' }, // Directories { id: 13, category: 'directories', title: 'Directory Listings', query: 'site:{target} intitle:"Index of" "Parent Directory" "Directory Listing"', description: 'Open directory indexes', icon: 'folder-open' }, { id: 14, category: 'directories', title: 'Admin Panels', query: 'site:{target} inurl:"/admin" | inurl:"/administrator" | inurl:"/adminpanel" | inurl:"/controlpanel" | inurl:"/dashboard"', description: 'Potential administrative interfaces', icon: 'shield' }, { id: 15, category: 'directories', title: 'Upload Folders', query: 'site:{target} inurl:"/upload" | inurl:"/uploads" | inurl:"/file" | inurl:"/files" intitle:"index of"', description: 'Exposed upload directories', icon: 'upload-cloud' }, { id: 16, category: 'directories', title: 'Backup Directories', query: 'site:{target} inurl:"/backup" | inurl:"/backups" | inurl:"/dump" | inurl:"/dumps" | inurl:"/archive"', description: 'Backup and dump directories', icon: 'archive-restore' }, { id: 17, category: 'directories', title: 'Source Code', query: 'site:{target} ext:zip | ext:tar | ext:gz | ext:rar | ext:7z "source" | "backup" | "code"', description: 'Compressed source code archives', icon: 'code-2' }, // Cameras/IoT { id: 18, category: 'cameras', title: 'Live Cameras', query: 'inurl:"view.shtml" | inurl:"viewerframe?mode=" | inurl:"view/index.shtml" | inurl:"camera"', description: 'Potentially exposed live cameras', icon: 'video' }, { id: 19, category: 'cameras', title: 'Webcam Interfaces', query: 'intitle:"webcam" | inurl:"webcam" | intitle:"live view" | inurl:"lvappl" | inurl:"live_view"', description: 'Webcam control interfaces', icon: 'webcam' }, { id: 20, category: 'cameras', title: 'CCTV Systems', query: 'intitle:"CCTV" | inurl:"cctv" | intitle:"DVR" | inurl:"dvr" | intitle:"NVR" | inurl:"nvr"', description: 'CCTV and DVR systems', icon: 'scan-eye' }, { id: 21, category: 'cameras', title: 'Network Printers', query: 'inurl:"printer" | intitle:"printer" | inurl:"ipp" | inurl:"print" | intitle:"HP Printer" | intitle:"Epson"', description: 'Exposed network printers', icon: 'printer' }, { id: 22, category: 'cameras', title: 'Routers/Modems', query: 'intitle:"router" | inurl:"router" | intitle:"modem" | inurl:"modem" | intitle:"gateway" | inurl:"gateway"', description: 'Router and modem admin pages', icon: 'wifi' }, // Login Pages { id: 23, category: 'login', title: 'Login Portals', query: 'site:{target} inurl:"login" | inurl:"signin" | inurl:"auth" | inurl:"account" | intitle:"login"', description: 'Login and authentication pages', icon: 'log-in' }, { id: 24, category: 'login', title: 'WordPress Admin', query: 'site:{target} inurl:"wp-login" | inurl:"wp-admin" | inurl:"wp-config"', description: 'WordPress administration pages', icon: 'type' }, { id: 25, category: 'login', title: 'cPanel/WebHost', query: 'site:{target} inurl:"cpanel" | inurl:"webmail" | inurl:"whm" | inurl:"webhost" | intitle:"cPanel"', description: 'Hosting control panels', icon: 'server' }, { id: 26, category: 'login', title: 'Joomla Admin', query: 'site:{target} inurl:"/administrator" "Joomla" | inurl:"joomla"', description: 'Joomla administration panels', icon: 'layout-template' }, { id: 27, category: 'login', title: 'phpMyAdmin', query: 'site:{target} inurl:"phpmyadmin" | inurl:"phpMyAdmin" | intitle:"phpMyAdmin"', description: 'Database management interfaces', icon: 'table' }, // Active Exploits & Redirects { id: 28, category: 'exploits', title: 'SSRF Parameters', query: 'site:{target} inurl:"?fetch=" | inurl:"?src=" | inurl:"?load=" | inurl:"?proxy=" | inurl:"?dest=" | inurl:"?target="', description: 'Server-Side Request Forgery vulnerable parameters', icon: 'globe' }, { id: 29, category: 'exploits', title: 'Google API Key Exposure', query: 'site:{target} "AIzaSy" | "google_api_key" | "GOOGLE_MAPS_API_KEY" | "gmaps_key" | "firebase_apiKey"', description: 'Exposed Google API keys (Maps, Firebase, etc.)', icon: 'key-round' }, { id: 30, category: 'exploits', title: 'JWT & Auth Tokens', query: 'site:{target} "eyJ" | "jwt_secret" | "json-web-token" | "session_secret" | "SECRET_KEY" ext:env | ext:yml | ext:json', description: 'Exposed JWT tokens and auth secrets in files', icon: 'lock' }, { id: 31, category: 'exploits', title: 'Debug/Actuator Endpoints', query: 'site:{target} inurl:"/debug" | inurl:"/trace" | inurl:"/env" | inurl:"/actuator" | inurl:"/metrics" | inurl:"/info"', description: 'Spring Boot Actuator and debug endpoints', icon: 'bug' }, { id: 32, category: 'exploits', title: 'GraphQL Interfaces', query: 'site:{target} inurl:"/graphql" | inurl:"/graphiql" | inurl:"/playground" | intitle:"GraphiQL"', description: 'Exposed GraphQL interfaces and playgrounds', icon: 'git-graph' }, { id: 33, category: 'exploits', title: 'Firebase Config', query: 'site:{target} "firebase" "apiKey" | "projectId" | "messagingSenderId" | "appId"', description: 'Exposed Firebase configuration with credentials', icon: 'flame' }, { id: 34, category: 'exploits', title: 'OAuth Redirect Abuse', query: 'site:{target} inurl:"/oauth/authorize" | inurl:"/oauth/callback" | inurl:"redirect_uri=" | inurl:"response_type="', description: 'OAuth endpoints vulnerable to redirect abuse', icon: 'arrow-right-left' }, { id: 35, category: 'exploits', title: 'Webhook URLs', query: 'site:{target} "https://hooks.slack.com" | "https://discord.com/api/webhooks" | "https://hooks.zapier.com" | "webhook_url"', description: 'Exposed webhook URLs for Slack, Discord, Zapier', icon: 'link-2' }, { id: 36, category: 'exploits', title: 'Environment Files', query: 'site:{target} ext:env | ext:ini | ext:yml | ext:yaml | ext:toml | ext:conf "DB_PASSWORD" | "SECRET" | "PRIVATE_KEY"', description: 'Environment and config files with secrets', icon: 'file-warning' } ]; let currentCategory = 'all'; let searchTerm = ''; // Initialize document.addEventListener('DOMContentLoaded', () => { lucide.createIcons(); loadTargetFromStorage(); renderDorks(); }); // Keyboard shortcut: Ctrl+K to focus search document.addEventListener('keydown', (e) => { if ((e.ctrlKey || e.metaKey) && e.key === 'k') { e.preventDefault(); const searchInput = document.getElementById('searchInput'); if (searchInput) searchInput.focus(); } }); // LocalStorage for target domain function loadTargetFromStorage() { const saved = localStorage.getItem('gdorks_target'); if (saved) { const input = document.getElementById('targetInput'); if (input) input.value = saved; } } function saveTargetToStorage(domain) { try { localStorage.setItem('gdorks_target', domain); } catch (e) { // localStorage might be unavailable } } function renderDorks() { const grid = document.getElementById('dorksGrid'); const emptyState = document.getElementById('emptyState'); const countNum = document.getElementById('dorkCountNum'); if (!grid || !emptyState) return; let filtered = dorks; if (currentCategory !== 'all') { filtered = filtered.filter(d => d.category === currentCategory); } if (searchTerm) { const term = searchTerm.toLowerCase(); filtered = filtered.filter(d => (d.title && d.title.toLowerCase().includes(term)) || (d.description && d.description.toLowerCase().includes(term)) || (d.query && d.query.toLowerCase().includes(term)) ); } // Update counter with bump animation if (countNum) { const prev = parseInt(countNum.textContent) || 0; countNum.textContent = filtered.length; if (prev !== filtered.length) { countNum.classList.add('bump'); setTimeout(() => countNum.classList.remove('bump'), 200); } } if (filtered.length === 0) { grid.innerHTML = ''; emptyState.classList.remove('hidden'); return; } emptyState.classList.add('hidden'); const categoryLabels = { 'sensitive-files': 'Sensitive Files', 'vulnerabilities': 'Vulnerabilities', 'directories': 'Directories', 'cameras': 'Cameras/IoT', 'login': 'Login Pages', 'exploits': 'Exploits & Redirects' }; grid.innerHTML = filtered.map(dork => { const badgeClass = `badge-${dork.category || 'error'}`; const label = categoryLabels[dork.category] || 'Unknown'; const icon = dork.icon || 'circle'; const title = dork.title || 'Untitled'; const desc = dork.description || ''; const query = dork.query || ''; return `
${desc}