Google no es solo un buscador para recetas y memes. También puede ser una excelente herramienta de reconocimiento si sabes cómo usarla. Precisamente de eso se ocupa Google Hacking Database (GHDB) — una enorme colección de consultas de búsqueda (dor ks) que ayudan a encontrar vulnerabilidades, datos sensibles e información confidencial que se haya indexado accidentalmente en el buscador.
Los dor ks son combinaciones especiales de operadores de búsqueda de Google que permiten acotar los resultados y encontrar cosas muy específicas: desde cámaras web abiertas hasta archivos de configuración con contraseñas.
¿Para qué sirve?
Ejemplos de uso:
- Los pentesters usan dor ks para recopilar información sobre objetivos antes de realizar pruebas de intrusión.
- Los especialistas en seguridad verifican si los datos de sus empresas han sido indexados.
- Los participantes de CTF resuelven retos basados en información públicamente accesible.
- Los investigadores analizan la superficie de ataque de aplicaciones web.
Importante sobre la legalidad
Usar Google Dorks para buscar vulnerabilidades en recursos ajenos puede infringir la ley. Todos los ejemplos que aparecen a continuación se ofrecen únicamente con fines educativos. Nunca ataques ni analices recursos que no te pertenezcan o que no estén autorizados para su investigación.
Operadores básicos de Google
Antes de profundizar en los dor ks, es útil entender de qué están hechos. En Google existe una serie de operadores de búsqueda: comandos especiales que permiten filtrar y estructurar los resultados. Gracias a estos operadores los dor ks funcionan. Aquí están los principales:
-
site: — limita la búsqueda a resultados de un sitio o dominio específico.
Ejemplo:site:example.com— encontrará solo páginas del dominio example.com. -
inurl: — busca el texto indicado en la URL de la página.
Ejemplo:inurl:admin— encontrará páginas cuya dirección contiene la palabra "admin". -
intitle: — busca el texto indicado en el título de la página HTML (etiqueta <title>).
Ejemplo:intitle:"login page"— encontrará páginas cuyos títulos contienen "login page". -
intext: — busca el texto indicado en el cuerpo de la página, es decir, en el contenido principal.
Ejemplo:intext:"username=admin"— encontrará páginas donde el texto incluye "username=admin". -
filetype: — busca documentos de un formato concreto.
Ejemplo:filetype:pdf budget— encontrará archivos PDF que contengan la palabra "budget".
Estos operadores se pueden combinar para crear dor ks complejos. Por ejemplo:
site:gov.uk filetype:xls intext:"password"
Esta consulta encontrará archivos Excel en el dominio .gov.uk que contengan la palabra "password" en el texto. Quién sabe, quizá incluso contraseñas reales (mejor no comprobarlo).
Más de 30 ejemplos de Google Hacking Database
Vamos allá. Aquí tienes una selección de dor ks más interesantes y útiles, agrupados por tipo de hallazgo:
Archivos de configuración y registros
intitle:"index of" "config.php"— encuentra directorios abiertos con configuraciones de aplicaciones PHP (puede hallar contraseñas de la base de datos).filetype:log inurl:"/logs/"— busca archivos de registro, que a menudo contienen errores internos y direcciones.ext:env intext:"APP_KEY="— busca archivos.envde Laravel con claves API y contraseñas.
Bases de datos y volcados
filetype:sql intext:"-- phpMyAdmin SQL Dump"— busca volcados de bases de datos exportados desde phpMyAdmin.ext:sql intext:"password"— intento general de encontrar archivos SQL que contengan contraseñas.filetype:db inurl:/backup/— busca bases de datos SQLite y otras en copias de seguridad públicas.
Contraseñas y credenciales
filetype:txt intext:"password="— frecuentemente descubre archivos de texto con usuarios y contraseñas.intitle:"index of" passwd— clásico: directorios que contienen archivos de sistemas tipo Unix.inurl:"wp-config.php.bak"— copias de seguridad de configuraciones de WordPress con contraseñas de MySQL.
Cámaras y video en streaming
inurl:"view/view.shtml"— acceso a cámaras AXIS.intitle:"Live View / - AXIS"— interfaces de video en vivo.inurl:"/cgi-bin/guestimage.html"— acceso a cámaras sin autenticación.
Paneles de administración
intitle:"Admin Login" inurl:admin— páginas de acceso al panel de administración.inurl:adminlogin.aspx— paneles de administración en ASP.NET.intitle:"phpMyAdmin" "Welcome to phpMyAdmin"— interfaces abiertas de phpMyAdmin (a veces incluso sin contraseña).
Documentos internos y archivos privados
filetype:xls intext:"username"— archivos Excel con usuarios.filetype:pdf confidential— documentos PDF que contienen la etiqueta "confidential".filetype:doc site:docs.google.com— documentos de Google Docs que han sido indexados (por error o intencionadamente).
Errores e información de depuración
intext:"Notice: Undefined variable"— aplicaciones PHP con errores que revelan información interna.intitle:"Apache2 Ubuntu Default Page"— servidores nuevos y sin configurar.intitle:"Index of /" +passwd— directorios abiertos que contienen datos sensibles.
Archivos de copia de seguridad
ext:bak | ext:old | ext:backup— categoría general de extensiones de copias de seguridad.inurl:backup intext:sql— directorios con copias de seguridad de bases de datos.inurl:backup filetype:zip— archivos zip que con frecuencia contienen copias completas de sitios.
Objetivos específicos interesantes
inurl:".git" intitle:"Index of"— repositorios Git públicos con posibilidad de descargar.git/config.intitle:"index of" "secrets.json"— configuraciones de aplicaciones Node.js con claves API.intitle:"index of" +".ssh"— directorios que contienen claves SSH.
Búsqueda por tipo de equipo o CMS
inurl:"wp-content/plugins/"— plugins de WordPress, cuyas versiones vulnerables se pueden buscar por CVE.intitle:"webcamXP 5"— interfaces públicas del sistema de videovigilancia webcamXP.inurl:"/shell?cat="— scripts CGI vulnerables que a veces permiten acceso a información del sistema.
¿Qué sigue?
GHDB se actualiza constantemente y está disponible en Exploit-DB. Si quieres más, échale un vistazo. También recomiendo usar el complemento Search Dorks o una extensión para Firefox, para no tener que escribir las consultas manualmente.
Y, para terminar, precaución
Google puede bloquear temporalmente el acceso a la búsqueda si se usan dor ks de forma intensiva. Usa VPN, proxy o cambia el User-Agent si experimentas con frecuencia.
Y, mejor aún, revisa tus propios sitios para detectar este tipo de archivos abiertos. Porque si tú no los encuentras, alguien más sí lo hará.