Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
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
ghauri — Un outil avancé multiplateforme qui automatise le processus de détection et d'exploitation des failles de sécurité par injection SQL | Kitploit
Outils/GitHubGitHub/r0oth3x49/ghauri
Scanners de VulnérabilitésExploitation d'Applications WebSécurité WebTests d'IntrusionSécurité des Bases de Données
GitHubr0oth3x49/ghauri

ghauri

Un outil avancé multiplateforme qui automatise le processus de détection et d'exploitation des failles de sécurité par injection SQL

Voir le dépôt
4.1k422il y a 10 moisVé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

GitHub release GitHub stars GitHub forks GitHub issues GitHub license

Comme Ghauri, pensez à soutenir le développeur

Offre-moi un café

Ghauri

Un outil multiplateforme avancé qui automatise le processus de détection et d'exploitation des failles d'injection SQL.

ghauri-banner

Prérequis

  • Python 3
  • Python pip3

Installation

  • cd dans le répertoire ghauri.
  • installer les dépendances : python3 -m pip install --upgrade -r requirements.txt
  • exécuter : python3 setup.py install ou python3 -m pip install -e .
  • vous pourrez alors accéder à ghauri et l'exécuter avec la simple commande ghauri --help.

OU

  • Suivez ce guide d'installation si vous rencontrez un problème.

Télécharger Ghauri

Vous pouvez télécharger la dernière version de Ghauri en clonant le dépôt GitHub.

root@kitploit:~
git clone https://github.com/r0oth3x49/ghauri.git

Fonctionnalités

  • Prend en charge les types de charges utiles d'injection suivants :
    • Booléen basé.
    • Basé sur les erreurs
    • Basé sur le temps
    • Requêtes empilées
  • Prise en charge de l'injection SQL pour les SGBD suivants.
    • MySQL
    • Microsoft SQL Server
    • Postgres
    • Oracle
    • Microsoft Access (ne prend en charge que l'empreinte numérique pour le moment dans le cas d'aveugle booléen)
  • Prend en charge les types d'injection suivants.
    • Injections GET/POST
    • Injections basées sur les en-têtes
    • Injections basées sur les cookies
    • Injections de données de formulaire multipart
    • Injections basées sur JSON
    • Injections basées sur SOAP/XML
  • Prise en charge de l'option proxy --proxy.
  • Prise en charge de l'analyse depuis un fichier texte : option -r file.txt
  • Prise en charge de la limitation de l'extraction de données pour les bases/tables/colonnes/dump : option --start 1 --stop 2
  • Ajout de la reprise de toutes les phases.
  • Ajout de la prise en charge pour ignorer l'encodage URL : --skip-urlencode
  • Ajout de la prise en charge pour vérifier les caractères extraits dans le cas des injections booléennes/temporelles.
  • Ajout de la prise en charge pour gérer les redirections à la demande de l'utilisateur.
  • Ajout de la prise en charge pour l'option sql-shell : --sql-shell (expérimental)
  • Ajout de la prise en charge pour les requêtes fraîches : --fresh-queries
  • Ajout de l'option pour l'extraction du nom d'hôte :

Utilisation avancée

root@kitploit:~

Auteur: Nasir khan ()

usage: ghauri -u URL [OPTIONS]

Outil multiplateforme avancé de détection et d'exploitation d'injections SQL basé sur Python.

Général:
  -h, --help          Affiche l'aide.
  --version           Affiche la version.
  --update            Met à jour ghauri
  -v VERBOSE          Niveau de verbosité : 1-5 (par défaut 1).
  --batch             Ne jamais demander la saisie, utiliser le comportement par défaut
  --flush-session     Vide les fichiers de session pour la cible actuelle
  --fresh-queries     Ignore les résultats de requêtes stockés dans le fichier de session
  --test-filter       Sélectionne les charges utiles de test par titres (expérimental)

Cible:
  Au moins l'une de ces options doit être fournie pour définir la (les)
  cible(s)

  -u URL, --url URL   URL cible (ex. 'http://www.site.com/vuln.php?id=1').
  -m BULKFILE         Analyse plusieurs cibles listées dans un fichier texte
  -r REQUESTFILE      Charge une requête HTTP depuis un fichier

Requête:
  Ces options permettent de spécifier comment se connecter à l'URL cible

  -A , --user-agent   Valeur de l'en-tête HTTP User-Agent
  -H , --header       En-tête supplémentaire (ex. "X-Forwarded-For: 127.0.0.1")
  --mobile             Imiter un smartphone via l'en-tête HTTP User-Agent
  --random-agent      Utilise une valeur d'en-tête HTTP User-Agent aléatoire
  --host              Valeur de l'en-tête HTTP Host
  --data              Chaîne de données à envoyer via POST (ex. "id=1")
  --cookie            Valeur de l'en-tête HTTP Cookie (ex. "PHPSESSID=a8d127e..")
  --referer           Valeur de l'en-tête HTTP Referer
  --headers           En-têtes supplémentaires (ex. "Accept-Language: fr\nETag: 123")
  --proxy             Utiliser un proxy pour se connecter à l'URL cible
  --delay             Délai en secondes entre chaque requête HTTP
  --timeout           Secondes d'attente avant timeout de connexion (par défaut 30)
  --retries           Nombre de tentatives en cas d'erreur de connexion (par défaut 3)
  --confirm           Confirmer les charges utiles injectées.
  --ignore-code       Ignorer le(s) code(s) d'erreur HTTP (ex. 401)
  --skip-urlencode    Ignorer l'encodage URL des données de charge utile
  --force-ssl         Forcer l'utilisation de SSL/HTTPS

Optimisation:
  Ces options permettent d'optimiser les performances de ghauri

  --threads THREADS   Nombre maximum de requêtes HTTP(s) simultanées (par défaut 1)

Injection:
  Ces options permettent de spécifier les paramètres à tester,
  de fournir des charges utiles personnalisées et des scripts de falsification optionnels

  -p TESTPARAMETER    Paramètre(s) à tester
  --dbms DBMS         Forcer le SGBD back-end à la valeur fournie
  --prefix            Chaîne de préfixe de la charge utile d'injection
  --suffix            Chaîne de suffixe de la charge utile d'injection
  --safe-chars        Ignorer l'encodage URL de caractères spécifiques : (ex: --safe-chars="[]")
  --fetch-using      Récupérer les données en utilisant différents opérateurs : (ex: --fetch-using=between/in)

Détection:
  Ces options permettent de personnaliser la phase de détection

  --level LEVEL       Niveau des tests à effectuer (1-3, par défaut 1)
  --code CODE         Code HTTP correspondant lorsque la requête est évaluée à Vrai
  --string            Chaîne correspondant lorsque la requête est évaluée à Vrai
  --not-string        Chaîne correspondant lorsque la requête est évaluée à Faux
  --text-only         Comparer les pages en se basant uniquement sur le contenu textuel

Techniques:
  Ces options permettent d'ajuster les tests de techniques d'injection SQL
  spécifiques

  --technique TECH    Techniques d'injection SQL à utiliser (par défaut "BEST")
  --time-sec TIMESEC  Secondes de délai pour la réponse du SGBD (par défaut 5)

Énumération:
  Ces options permettent d'énumérer les informations du système de gestion
  de base de données back-end, sa structure et les données contenues dans
  les tables.

  -b, --banner        Récupérer la bannière du SGBD
  --current-user      Récupérer l'utilisateur actuel du SGBD
  --current-db        Récupérer la base de données actuelle du SGBD
  --hostname          Récupérer le nom d'hôte du serveur SGBD
  --dbs               Énumérer les bases de données du SGBD
  --tables            Énumérer les tables de la base de données du SGBD
  --columns           Énumérer les colonnes des tables de la base de données du SGBD
  --count             Récupérer le nombre d'entrées pour la/les table(s)
  --dump              Vider les entrées des tables de la base de données du SGBD
  -D DB               Base de données du SGBD à énumérer
  -T TBL              Table(s) de la base de données du SGBD à énumérer
  -C COLS             Colonne(s) de la table de la base de données du SGBD à énumérer
  --start             Récupérer les entrées à partir du décalage pour les bases/tables/colonnes/vidage
  --stop              Récupérer les entrées jusqu'au décalage pour les bases/tables/colonnes/vidage
  --sql-shell         Invite pour un shell SQL interactif (expérimental)

Exemple:
  ghauri -u http://www.site.com/vuln.php?id=1 --dbs


Avertissement légal

root@kitploit:~
L'utilisation de Ghauri pour attaquer des cibles sans consentement mutuel préalable est illégale.
Il est de la responsabilité de l'utilisateur final de respecter toutes les lois locales, étatiques et fédérales applicables.
Le développeur décline toute responsabilité et n'est pas responsable de tout usage abusif ou dommage causé par ce programme.

À faire

  • Ajouter la prise en charge des requêtes en ligne.
  • Ajouter la prise en charge des requêtes UNION

Pourquoi choisir Ghauri

Il existe de nombreux articles et messages soulignant les succès des utilisateurs avec Ghauri par rapport à SQLMap. Bien que je ne compare pas directement Ghauri à SQLMap, de nombreux utilisateurs l'ont fait. J'ai initié ce projet car, dans mon travail quotidien, je rencontrais fréquemment des difficultés importantes pour configurer et utiliser SQLMap efficacement, même pour des injections SQL apparemment simples. Malgré leur apparente simplicité, SQLMap échouait souvent à les détecter. Encouragé par un ami, j'ai décidé de créer mon propre outil. J'avais développé de nombreux scripts d'exploitation, chacun adapté à des cas spécifiques, et j'ai réalisé l'intérêt potentiel d'intégrer ces techniques dans un seul module. C'est ainsi qu'est né Ghauri, qui a été bien accueilli par la communauté, recevant des retours positifs et des étoiles grâce à son efficacité.

Même Stamparam a reconnu Ghauri, le décrivant comme une "réécriture des mécanismes internes" dans un tweet, soulignant l'importance de ses mécanismes internes.

Par exemple, vous pouvez enregistrer une requête HTTP vulnérable dans un fichier (une injection SQL derrière une authentification) et la fournir à la fois à Ghauri et à SQLMap en utilisant l'option -r. Les résultats parleront d'eux-mêmes sans nécessiter de configurations personnalisées.

Ghauri fonctionne à la fois de manière similaire à un navigateur et avec ses propres méthodes uniques, en passant automatiquement à différentes techniques d'exfiltration et de contournement. Encore une fois, ce n'est pas une comparaison directe car Ghauri a encore de nombreuses fonctionnalités à implémenter, tandis que SQLMap est déjà riche en fonctionnalités. Cependant, Ghauri remplit systématiquement les tâches requises.

Depuis que j'ai développé cet outil, j'utilise rarement SQLMap, sauf dans quelques cas où Ghauri est encore en cours d'amélioration.

Je vous encourage à l'essayer par vous-même. Merci.

Télécharger l’outil
--hostname
  • Ajout d'une option pour mettre à jour ghauri depuis GitHub : --update
    • Note : ghauri doit être cloné/installé depuis GitHub pour que cette option fonctionne pour les futures mises à jour, pour les utilisateurs d'anciennes versions, ils devront exécuter git pull (si installé avec git) pour obtenir cette mise à jour et pour les futures mises à jour, la mise à jour sera possible avec la commande ghauri --update pour obtenir la dernière version de ghauri.
  • Ajout de l'option pour ignorer les codes HTTP problématiques. (ex : 401) : --ignore-code
  • Ajout de l'option pour récupérer le nombre d'entrées d'une table. : --count
  • Ajout de l'option pour scanner plusieurs cibles listées dans un fichier texte. -m (expérimental)
  • Ajout de la détection et de l'exploitation automatiques des paramètres GET désérialisables en base64. (expérimental)
  • Ajout de la prise en charge d'un agent utilisateur HTTP aléatoire : --random-agent, --mobile
  • r0ot h3x49