Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
pagodo — pagodo (Google Dork Passif) - Automatiser le scraping et la recherche dans la Google Hacking Database | Kitploit
Outils/GitHubGitHub/opsdisk/pagodo
OSINT (Renseignement de Sources Ouvertes)ReconnaissanceAnalyse des VulnérabilitésCollecte d'InformationsSécurité Web
GitHubopsdisk/pagodo

pagodo

pagodo (Google Dork Passif) - Automatiser le scraping et la recherche dans la Google Hacking Database

Voir le dépôt
3.4k55020il y a 1 anVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

pagodo - Google Dork Passif

Introduction

pagodo automatise la recherche Google de pages web et d'applications potentiellement vulnérables sur Internet. Il remplace l'exécution manuelle de recherches Google dork avec un navigateur web GUI.

Il y a 2 parties. La première est ghdb_scraper.py qui récupère les derniers Google dorks et la seconde partie est pagodo.py qui exploite les informations recueillies par ghdb_scraper.py.

La bibliothèque de recherche Google centrale utilise désormais la bibliothèque plus flexible yagooglesearch au lieu de googlesearch. Consultez le README de yagooglesearch pour une explication plus approfondie des différences et des capacités de la bibliothèque.

Cette version de pagodo prend également en charge le support natif HTTP(S) et SOCKS5, donc plus besoin de l'envelopper dans un outil comme proxychains4 si vous avez besoin d'un support proxy. Vous pouvez spécifier plusieurs proxies à utiliser en mode round-robin en fournissant une chaîne de proxies séparés par des virgules à l'aide de l'option -p.

Que sont les Google dorks ?

Offensive Security maintient la Google Hacking Database (GHDB) que vous trouverez ici : https://www.exploit-db.com/google-hacking-database. Il s'agit d'une collection de recherches Google, appelées dorks, qui peuvent être utilisées pour trouver des machines potentiellement vulnérables ou d'autres informations intéressantes collectées par les robots de recherche de Google.

Conditions d'utilisation

Les conditions d'utilisation de pagodo sont les mêmes que celles de yagooglesearch.

Ce code est fourni tel quel et vous êtes entièrement responsable de son utilisation. Le scraping des résultats de recherche Google peut violer leurs Conditions d'utilisation. Une autre bibliothèque de recherche Google en Python avait des informations/discussions intéressantes à ce sujet :

  • Problème original
  • Une réponse
  • L'auteur a créé des Conditions d'utilisation séparées
  • ...qui contenaient un lien vers ce blog

La méthode préférée de Google est d'utiliser leur API.

Installation

Les scripts sont écrits pour Python 3.6+. Clonez le dépôt git et installez les dépendances.

git clone https://github.com/opsdisk/pagodo.git
cd pagodo
python3 -m venv .venv  # If using a virtual environment.
source .venv/bin/activate  # If using a virtual environment.
pip install --upgrade pip setuptools
pip install -r requirements.txt

ghdb_scraper.py

Pour commencer, pagodo.py a besoin d'une liste de tous les Google dorks actuels. Le dépôt contient un répertoire dorks/ avec les dorks actuels lorsque ghdb_scraper.py a été exécuté pour la dernière fois. Il est conseillé d'exécuter ghdb_scraper.py pour obtenir les données les plus fraîches avant d'exécuter pagodo.py. Le répertoire dorks/ contient :

  • le fichier all_google_dorks.txt qui contient tous les Google dorks, un par ligne
  • le fichier all_google_dorks.json qui est la réponse JSON de GHDB
  • Les dorks par catégorie individuelle

Catégories de dorks :

categories = {
    1: "Footholds",
    2: "File Containing Usernames",
    3: "Sensitives Directories",
    4: "Web Server Detection",
    5: "Vulnerable Files",
    6: "Vulnerable Servers",
    7: "Error Messages",
    8: "File Containing Juicy Info",
    9: "File Containing Passwords",
    10: "Sensitive Online Shopping Info",
    11: "Network or Vulnerability Data",
    12: "Pages Containing Login Portals",
    13: "Various Online devices",
    14: "Advisories and Vulnerabilities",
}

Utiliser ghdb_scraper.py comme script

Écrivez tous les dorks dans all_google_dorks.txt, all_google_dorks.json, et les catégories individuelles si vous voulez plus de données contextuelles sur chaque dork.

python ghdb_scraper.py -s -j -i

Utiliser ghdb_scraper comme module

La fonction ghdb_scraper.retrieve_google_dorks() renvoie un dictionnaire avec la structure de données suivante :

ghdb_dict = {
    "total_dorks": total_dorks,
    "extracted_dorks": extracted_dorks,
    "category_dict": category_dict,
}

Utilisation d'un shell Python (comme python ou ipython) pour explorer les données :

import ghdb_scraper

dorks = ghdb_scraper.retrieve_google_dorks(save_all_dorks_to_file=True)
dorks.keys()
dorks["total_dorks"]

dorks["extracted_dorks"]

dorks["category_dict"].keys()

dorks["category_dict"][1]["category_name"]

pagodo.py

Utiliser pagodo.py comme script

python pagodo.py -d example.com -g dorks.txt

Utiliser pagodo comme module

La fonction pagodo.Pagodo.go() renvoie un dictionnaire avec la structure de données ci-dessous (les dorks utilisés sont des exemples fictifs) :

{
    "dorks": {
        "inurl:admin": {
            "urls_size": 3,
            "urls": [
                "https://github.com/marmelab/ng-admin",
                "https://github.com/settings/admin",
                "https://github.com/akveo/ngx-admin",
            ],
        },
        "inurl:gist": {
            "urls_size": 3,
            "urls": [
                "https://gist.github.com/",
                "https://gist.github.com/index",
                "https://github.com/defunkt/gist",
            ],
        },
    },
    "initiation_timestamp": "2021-08-27T11:35:30.638705",
    "completion_timestamp": "2021-08-27T11:36:42.349035",
}

Utilisation d'un shell Python (comme python ou ipython) pour explorer les données :

import pagodo

pg = pagodo.Pagodo(
    google_dorks_file="dorks.txt",
    domain="github.com",
    max_search_result_urls_to_return_per_dork=3,
    save_pagodo_results_to_json_file=None,  # None = Auto-generate file name, otherwise pass a string for path and filename.
    save_urls_to_file=None,  # None = Auto-generate file name, otherwise pass a string for path and filename.
    verbosity=5,
)
pagodo_results_dict = pg.go()

pagodo_results_dict.keys()

pagodo_results_dict["initiation_timestamp"]

pagodo_results_dict["completion_timestamp"]

for key,value in pagodo_results_dict["dorks"].items():
    print(f"dork: {key}")
    for url in value["urls"]:
        print(url)

Ajustement des résultats

Limiter à un domaine spécifique

L'option -d peut être utilisée pour limiter les résultats à un domaine spécifique et fonctionne comme l'opérateur de recherche Google :

site:github.com

Temps d'attente entre les recherches Google dork

  • -i - Spécifiez le délai minimum entre les recherches de dorks, en secondes. Ne le rendez pas trop petit, sinon votre IP sera rapidement HTTP 429.
  • -x - Spécifiez le délai maximum entre les recherches de dorks, en secondes. Ne le rendez pas trop grand, sinon les recherches prendront beaucoup de temps.

Les valeurs fournies par -i et -x sont utilisées pour générer une liste de 20 temps d'attente aléatoires, qui sont sélectionnés aléatoirement entre chaque recherche Google dork différente.

Nombre de résultats à retourner

-m - Le nombre total maximal de résultats de recherche à retourner par Google dork. Chaque requête de recherche Google peut renvoyer au maximum 100 résultats à la fois, donc si vous choisissez -m 500, 5 requêtes de recherche distinctes devront être effectuées pour chaque recherche Google dork, ce qui augmentera le temps nécessaire.

Sauvegarder la sortie

Télécharger l’outil