Article original : Google Dorking for Penetration Testers — A Practical Tutorial

Chaque jour, Google traite plus de 8,5 milliards de recherches. Nous savons à quel point nous utilisons Google quotidiennement.

Avec les capacités de crawl de Google, il peut également être un outil puissant pour les testeurs d'intrusion. Google peut nous aider à trouver des fichiers exposés, des scripts et d'autres ressources critiques dans les applications web.

Pour trouver ce type d'informations sensibles, les hackers utilisent des termes de recherche spécifiques dans Google. Nous les appelons Google Dorks.

Les Google Dorks sont des termes de recherche spéciaux qui aident à localiser des informations qui ne sont pas trouvées par le biais de recherches web régulières.

Dans cet article, nous allons examiner ce que sont les Google Dorks et comment ils peuvent nous aider dans les tests d'intrusion.

Qu'est-ce que les Google Dorks ?

Un Google Dork est un terme de recherche spécial. Ces termes, lorsqu'ils sont utilisés avec des mots-clés de recherche réguliers, peuvent nous aider à découvrir des ressources cachées crawlées par Google.

Ces ressources incluent des informations sensibles telles que des noms d'utilisateur, des mots de passe, des numéros de carte de crédit, des adresses e-mail, des scripts shell, des comptes utilisateur, et ainsi de suite.

Ces Dorks ne sont pas limités à Google. Nous pouvons également les utiliser avec des moteurs de recherche comme Bing et Yahoo. Les résultats peuvent varier, mais ils servent toujours le même but.

Pour exploiter tout le potentiel du Google Dorking, nous devons maîtriser certains opérateurs de recherche spécialisés. Ces opérateurs affineront nos résultats de recherche et nous aideront à trouver exactement ce que nous cherchons.

Essayons quelques Google Dorks.

Google Dorks courants

Certains des opérateurs de requête courants dans le Google Dorking incluent des modificateurs de recherche. Ces modificateurs de recherche nous permettent de trouver des informations spécifiques qui peuvent ne pas être accessibles par des méthodes de recherche traditionnelles.

Voici quelques-uns des opérateurs les plus courants utilisés dans le Google Dorking.

Opérateur Intitle

L'opérateur "intitle" recherche des pages web avec des mots ou des phrases spécifiques dans la balise de titre. Par exemple, si vous cherchez des pages qui contiennent le mot "password" et ont "index of" dans le titre, vous utiliserez le terme de recherche : intitle:"index of" password.

Image Dans le titre. Image par l'auteur.

Opérateur Inurl

L'opérateur "inurl" recherche des pages web qui contiennent des mots ou des phrases spécifiques dans l'URL. Par exemple, si vous cherchez des pages qui contiennent "admin.php" dans l'URL, vous utiliserez le terme de recherche : inurl:admin.php.

Image Dans l'URL. Image par l'auteur.

Opérateur Site

L'opérateur "site" vous permet de rechercher dans un site web ou un domaine spécifique. Par exemple, si vous cherchez des pages sur le domaine example.com qui contiennent le mot "Steganography", vous utiliserez le terme de recherche : site:yeahhub.com "Steganography".

Image Dans le site. Image par l'auteur.

Opérateur Filetype

L'opérateur "filetype" vous permet de rechercher des types de fichiers spécifiques, tels que des PDF ou des documents Word. Par exemple, si vous cherchez des fichiers PDF qui contiennent la phrase "confidential report", vous utiliserez le terme de recherche : filetype:pdf "Advanced Network Security".

Image Type de fichier. Image par l'auteur.

Opérateur Intext

L'opérateur "intext" recherche des pages qui contiennent des mots ou des phrases spécifiques dans le corps de la page. Par exemple, si vous cherchez des pages qui contiennent à la fois les mots "login" et "password" dans le corps de la page, vous utiliserez le terme de recherche : intext:"about" contact.

Image Dans le texte. Image par l'auteur.

L'opérateur "link" recherche des pages web qui lient à une URL spécifique. Par exemple, si vous cherchez des pages web qui lient au domaine example.com, vous utiliserez le terme de recherche : link:"example.com".

Image Opérateur de lien. Image par l'auteur.

Opérateur Cache

L'opérateur "cache" est utilisé pour récupérer la version en cache d'une page web. Lorsque vous recherchez un site web en utilisant Google, Google crée une version en cache de cette page dans son système. Cette version peut être utile si le site web original est temporairement hors ligne ou si vous souhaitez voir une version plus ancienne du site web.

Voici la syntaxe pour trouver la version en cache de yahoo.com : cache:https://www.yahoo.com.

Image Version en cache de yahoo.com. Image par l'auteur.

L'opérateur "related" est utilisé pour trouver des pages web qui sont liées à une URL spécifique. Voici la syntaxe pour utiliser l'opérateur "related" afin de trouver des sites similaires à yahoo.com.

Image Opérateur related. Image par l'auteur.

En combinant ces opérateurs de manière créative, vous pouvez trouver des types spécifiques d'informations sur le web qui peuvent être utiles pour les tests d'intrusion et d'autres fins.

Structure des opérateurs de requête

Les opérateurs de requête de Google Dorking ont une structure similaire à celle des opérateurs de requête de recherche Google réguliers. Cette technique implique l'utilisation d'opérateurs avancés et de requêtes de recherche pour découvrir des informations qui ne sont pas typiquement disponibles par le biais de recherches régulières.

La structure générale des opérateurs de requête dans le Google Dorking comprend trois éléments :

  1. Opérateur : Un mot-clé ou un symbole spécifique qui indique à Google quoi rechercher. Par exemple, l'opérateur "inurl" recherche des pages qui contiennent un mot-clé particulier dans leur URL.
  2. Mot-clé : Le terme ou la phrase de recherche que vous souhaitez trouver. Si vous cherchez un fichier de mot de passe spécifique, alors "password" est votre mot-clé.
  3. Modificateur : Un paramètre de recherche supplémentaire que vous pouvez utiliser pour affiner davantage votre recherche. Par exemple, le modificateur "filetype" recherche un type de fichier spécifique, tel qu'un PDF.

Voici un exemple de structure d'opérateur de requête dans le Google Dorking : intitle: "index of" site:example.com password filetype:pdf

Cette requête utilise l'opérateur "intitle" pour rechercher des pages avec "index of" dans leur titre, l'opérateur "site" pour rechercher dans le domaine example.com, le mot-clé "password", et le modificateur "filetype" pour rechercher des fichiers PDF.

En utilisant des opérateurs de requête dans le Google Dorking, nous pouvons trouver des informations utiles et souvent vulnérables qui pourraient ne pas être accessibles par le biais de recherches régulières.

Base de données Google Hacking (GHDB)

La base de données Google Hacking (GHDB) est une compilation de requêtes de recherche et d'opérateurs de requête qui nous aident dans le Google Dorking.

Image Base de données Google Hacking. Image générée par l'auteur.

Johnny Long, un chercheur en sécurité bien connu et auteur, a établi la GHDB. Elle est depuis devenue une ressource précieuse pour les ingénieurs en sécurité comme vous et moi.

La GHDB est organisée en catégories telles que "Fichiers contenant des mots de passe", "Serveurs vulnérables", "Points d'appui" et "Messages d'erreur". Chaque catégorie contient plusieurs requêtes de recherche et opérateurs conçus pour révéler des informations spécifiques sur une cible.

Veuillez noter que les requêtes de recherche et les opérateurs dans la GHDB peuvent produire des faux positifs ou des informations obsolètes. Vérifiez toujours les informations obtenues par le biais de ces opérateurs de recherche.

Un scénario de Dorking

Supposons que vous devez effectuer un audit de test d'intrusion pour un client. Voici un scénario de dorking exemple.

  1. Utilisez l'opérateur "site" pour limiter votre recherche au site web de l'entreprise : site:example.com. Cela retourne toutes les pages du site web example.com.
  2. Utilisez l'opérateur "intitle" pour rechercher des pages contenant des mots-clés spécifiques dans le titre : intitle:"login" site:example.com. Cela aide à identifier les pages de connexion potentielles vulnérables aux attaques.
  3. Utilisez l'opérateur "filetype" pour rechercher des types de fichiers spécifiques : filetype:pdf site:example.com. Cela aide à identifier les documents ou rapports potentiels contenant des informations sensibles.
  4. Utilisez l'opérateur "inurl" pour rechercher des URL spécifiques : inurl:"admin" site:example.com. Cela aide à identifier les pages administratives potentielles vulnérables aux attaques.
  5. Utilisez l'opérateur "cache" pour voir la version en cache d'une page web indexée par Google : cache:example.com/login.php. Cela fournit l'accès au contenu de la page même si la page originale est supprimée ou n'est plus accessible.
  6. Utilisez l'opérateur "related" pour trouver des sites web similaires : related:example.com. Cela aide à identifier les partenaires potentiels ou les vendeurs tiers ayant accès au réseau de l'entreprise.

Résumé

Le Google Dorking est une technique puissante qui nous permet d'effectuer des recherches avancées sur Google. Nous pouvons utiliser les Google Dorks pour trouver des informations spécifiques et des vulnérabilités exposées publiquement. C'est un outil essentiel dans la boîte à outils d'un pentester.

La base de données Google Hacking (GHDB) fournit une collection de Google Dorks prédéfinis. Étant donné les dommages que quelqu'un peut causer en utilisant le dorking, il est important de l'utiliser de manière éthique et avec permission. Assurez-vous d'avoir la permission et suivez les directives éthiques lorsque vous utilisez le dorking pour des audits de sécurité.