Qué es el Google Dorking y cómo se usa en OSINT y hacking

Qué es el Google Dorking y cómo se usa en OSINT y hacking

La mejor herramienta OSINT es Google. O mejor dicho, los buscadores de Internet que, a la hora de escribir esto, es Google básicamente. De hecho, es mucho más peligroso un buen investigador OSINT con nociones de Google dorking y acceso a Internet, que otro menos experimentado, pero con mil herramientas y aplicaciones.

Por eso, hoy vamos a ver la que es, probablemente, la técnica más importante y poderosa de la OSINT durante la investigación de fuentes abiertas.

Qué es el Google Dorking

El Google Dorking consiste en la utilización de los operadores avanzados de los buscadores de Internet para encontrar información que, de otro modo, sería difícil de encontrar.

Es decir, que además de poner palabras en el cuadro de texto que definan lo que queremos encontrar, los buscadores como Google nos permiten afinar usando unos operadores avanzados, que hay que conocer, y que dirigen y limitan las búsquedas.

Como si de un lenguaje mágico se tratara, con eso podemos hacer que encuentre información confidencial o sensible, como: documentos que no deberían estar subidos a una web (pero lo están), archivos de contraseñas, vulnerabilidades y toda clase de inteligencia «oculta» que el buscador ha indexado por el descuido o el desconocimiento de quienes gestionan esas webs o sus usuarios.

El Google Dorking es imprescindible para ciberdetectives, en cualquier ámbito OSINT, pentesters, analistas e investigadores de seguridad.

También puede ser utilizado por atacantes para encontrar información que pueda ser utilizada contra un objetivo, así que es fundamental usarlos en OSINT defensiva, analizando nuestra propia huella digital para comprobar qué están filtrando de nosotros las webs sin que debieran hacerlo.

¿Cómo se hace Google Dorking?

El Google Dorking se hace mediante el uso de esos operadores de búsqueda avanzados, unidos al término que buscamos. Dichos operadores permiten especificar lo que se desea buscar de manera más precisa.

Por ejemplo, el operador “site:” permite buscar resultados dentro de una web específica (y solo en ella), mientras que el operador “inurl:” permite buscar páginas web que contengan una determinada palabra o frase en su dirección URL.

Así, en lugar de poner lo que queremos encontrar y ya está, vamos delimitando con esos operadores.

Esto puede crear dorks muy sencillos, como:

site:reddit.com osint tools

Que buscará esas referencias a herramientas OSINT, pero solamente dentro de la web reddit.com.

Aprender a usar estos operadores de búsqueda permitirá encontrar la información que necesitamos de manera más eficiente. Con el tiempo y la experiencia, hay algunos dorks más complejos y extensos, que parecen un incomprensible idioma propio, como por ejemplo:

inurl:/wp-content/uploads/ ext:txt "username" | "user name" | "uname" | "user" | "userid" | "user id" AND "password" | "pass word" | "pwd" | "pw"

Que busca posibles archivos con usuarios y contraseñas que se puedan haber subido a webs realizadas con Wordpress (las más comunes en la red).

Como vemos debajo, esto da resultados y se siguen subiendo de forma imprudente esa clase de archivos en muchas webs, lo cual es indexado por Google.

Archivos de contraseñas encontrados con Google Dorking

No me molesto en difuminar nada, porque, al fin y al cabo, cualquiera puede pegar la petición anterior y ver lo que sale.

¿Qué se puede encontrar mediante Google Dorking?

De todo y el único límite es la imaginación (y el conocimiento de los operadores y de lo que quieres encontrar): usuarios, contraseñas, documentos que no deberían ser públicos, archivos de Word, Excel, vulnerabilidades…

Algunos operadores básicos para hacer Google Dorking

Algunos de los operadores de búsqueda más útiles y habituales en el Google Dorking son los siguientes:

“site:” - Este operador de búsqueda permite buscar en páginas web específicas y nada más.

“inurl:” - Este operador de búsqueda permite buscar páginas web que contengan una determinada palabra o frase en su URL.

“intitle:” - Este modificador de búsqueda permite buscar páginas web que contengan una determinada palabra o frase en su título.

“filetype:” - Este operador busca archivos de un determinado tipo, como por ejemplo PDF, docx o lo que queramos.

“cache:” - Este operador nos permite ver una copia guardada de una página web.

“related:” - Muy interesante en OSINT, nos faculta para encontrar páginas relacionadas con la web que pongamos tras el comando.

“link:” - Este operador de búsqueda permite encontrar páginas que enlacen a la web que le pongamos.

“info:” - Permite encontrar información sobre una determinada página web.

Etc, etc. Aquí hay una buena lista completa de operadores y modificadores de búsqueda de Google.

Además de eso, podemos combinar con otros operadores del estilo AND u OR para realizar peticiones aún más complejas, que combinen varias palabras clave, por ejemplo.

Cómo usar el Google Dorking en OSINT

Google Dorking en OSINT

Lo más recomendable es conocerse y estudiar esos operadores avanzados de Google, así como el objetivo que deseas encontrar. Si, para un caso, quieres localizar vulnerabilidades o archivos expuestos de un CMS o aplicación concreta, deberás saber cómo se llaman esos archivos en la aplicación o qué mensajes concretos de error arroja dicha herramienta.

Por ejemplo, si quiero buscar posibles páginas de login en Wordpress dentro de webs del gobierno australiano, emplearía el dork:

site:*.gov.au inurl:wp-admin

Esta combinación dice que, en cualquier subdominio gubernamental de dicho país, se busquen URLs con el término wp-admin, que es como denomina Wordpress por defecto a su página de identificación de usuario.

Un actor malicioso recogería esas webs y las examinaría, con otros dorks y herramientas, para encontrar versiones desactualizadas y vulnerables de esos sitios, por ejemplo. Por razones obvias, y que se salen del ámbito de esta web, no nos adentramos en esa siguiente fase.

Herramientas para hacer Google Dorking

Además del método manual, hay una serie de herramientas y webs que nos permiten hacer Google Dorking más cómodamente, o copiando y pegando fórmulas y búsquedas ya creadas por otros usuarios.

Las 3 más útiles por experiencia en el día a día son:

La Google Hacking Database

Google Hacking Database

La web de Exploit Database es una imprescindible en ciberseguridad para encontrar y analizar vulnerabilidades y similares. Y dentro de esa web se encuentra la Google Hacking Database, donde puedes ver miles de ejemplos de dorks de todo tipo enviados por usuarios.

Están clasificados por categorías como: «Files containing juicy info» (Archivos que contienen información jugosa), «Sensitive directories» (Directorios sensibles) y mucho más.

Sin duda, con más de 7.400 entradas y subiendo, es el recopilatorio de dorks más grande de toda la red y una referencia imprescindible para cualquier ciberinvestigador.

Dorksearch

Dorksearch, un buscador de dorkings visual y fácil

Si quieres hacerte un poco más fácil la vida, y no tener que estar recordando de memoria la infinidad de operadores y dorks que hay, puedes usar Dorksearch.

Este motor de búsqueda especial te permite usar dorks de manera sencilla, pudiendo ver una lista de operadores y elegir los que te convienen haciendo clic en su apartado de «Builder» (Constructor de dorks o búsquedas avanzadas), o bien eligiendo dorks habituales y útiles ya preconfigurados dentro del apartado «Prebuilt».

Sin duda, una herramienta que hace mucho más fácil la vida del investigador OSINT a la hora de buscar en Google.

Dorkscout

Esta fantástica aplicación de código abierto te permite aplicar un poco más fácilmente la enorme Google Hacking Database que hemos visto más arriba. Está para Linux y se maneja con la terminal.

Personalmente, siempre recomiendo el uso de máquinas virtuales Linux en las labores OSINT, así que no debería ser problema para cualquier investigador mínimamente serio.

La puedes descargar desde su repositorio en Github y tienes tres opciones de instalación:

  • Mediante el gestor de paquetes de Golang.
  • Usando Docker.
  • Con las versiones precompiladas.

Esta última es la opción más sencilla para muchos, ya que es descomprimir en un directorio, entrar en dicha carpeta con la terminal y ejecutar el binario único programado en Go.

Una vez hecho, lo primero es instalar las listas de dorks. Para eso, creamos un directorio /dorks (o como queramos llamarlo, en los ejemplos de abajo, lo creo en la misma carpeta en la que he descomprimido el software) e instalamos las listas disponibles con el comando:

dorkscout install --output-dir ./dorks

Lo que descargará dichas listas al directorio adecuado y ya estaremos preparados para ejecutar una de esas listas contra el objetivo.

Por ejemplo, el comando:

dorkscout scan -d="./dorks/Files Containing Juicy Info.dorkscout" -H="./resultados.html" -x socks5://127.0.0.1:9050

Hace lo siguiente:

  • Nos aplica los dorks para encontrar archivos con información jugosa en todos los sitios que encuentre (tras la opción scan podemos escribir una web concreta si solo queremos que ese sea el objetivo a analizar con los dorks).
  • Nos guarda los resultados en un archivo resultados.html dentro del directorio actual en el que trabajamos (parámetro -H) y…
  • Por razones obvias de seguridad y privacidad usamos un proxy con el parámetro -x (vamos con Tor en este caso).

El resultado, si abrimos el archivo html, sería algo así.

Resultados de Dorskscout

Como vemos en la imagen de arriba, lo primero que ha hecho ha sido buscar claves privadas. Si vamos enlace por enlace, nos lleva hasta los directorios donde se han almacenado esas claves privadas que no deberían estar ahí.

Dorkscout es una herramienta muy interesante que puede dar resultados muy sorprendentes.

El Dorking aplicado a otros buscadores

Google es el buscador principal, pero el dorking es válido para otros motores, como Bing, Yandex o Brave Search, de modo que podemos aplicarlo también en ellos, si es que Google no nos satisface o no nos ecnuentra lo que buscamos.

Esto es algo a realizar siempre en cualquier investigación OSINT.

Afortunadamente, los modificadores avanzados son casi idénticos para los diferentes buscadores, con lo que la mayoría de las veces no hará falta que aprendamos términos nuevos para cada motor de búsqueda, quitando alguna excepción.

El dorking aplicado a otras webs, como Twitter

El dorking, o la manipulación experta de la función de búsqueda mediante el uso de operadores avanzados, no es algo que tampoco sea exclusivo de los buscadores. Algunas redes sociales también han implementado parámetros así, con los que modificar o afinar una búsqueda.

La más destacada es, sin duda, Twitter.

Si bien para la mayoría lo mejor es ir a la búsqueda avanzada de la red social y afinar visualmente dicha búsqueda, marcando ciertas opciones y poniendo parámetros en otras que delimiten los resultados a mostrar, también se pueden emplear directamente esos operadores en el formulario de búsqueda de Twitter.

Así, por ejemplo, si queremos buscar los tuits que una cuenta ha enviado a otra, para ver la conversación que han tenido, el dork sería:

from:@elonmusk to:@billgates

De manera que veríamos lo que le ha escrito alguna vez Elon Musk a Bill Gates por Twitter (públicamente, claro) y nos saldría esto:

Dorking de Twitter entre Elon Musk y Bill Gates

O, por ejemplo, si solo queremos los posts con imágenes relacionadas con un término, como puede ser OSINT, podemos escribir:

OSINT filter:images

Las posibilidades, de nuevo, son poderosas e infinitas.

En definitiva, el Google dorking y el dorking en general es, probablemente, la herramienta más valiosa en la investigación de fuentes abiertas. Una y otra vez sigue sorprendiendo lo mucho que puedes encontrar solamente con un buscador, dirigiendo dicha búsqueda con los modificadores adecuados.