Outils pour utilisateurs

Outils du site


cyber:outils:sqlmap

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
cyber:outils:sqlmap [2025/06/27 14:34] admincyber:outils:sqlmap [2025/06/27 14:45] (Version actuelle) – [Manuel des options principales] admin
Ligne 1: Ligne 1:
 +====== Sqlmap ======
  
 ===== Description ===== ===== Description =====
 +SQLmap est un outil open source qui permet d'automatiser la détection et l'exploitation de vulnérabilités de type injection SQL. Il permet ainsi de tester la sécurité des bases de données utilisées par les applications web en identifiant les potentielles failles de sécurité sur celles-ci.
  
 +===== Installation =====
 +Voici le guide d'installation pour l'outil SQLMap :
  
-{{SQLmap est un outil open source qui permet d'automatiser la détection et l'exploitation de vulnérabilités de type injection SQL. Il permet ainsi de tester la sécurité des bases de données utilisées par les applications web en identifiant les potentielles failles de sécurité sur celles-ci.}}+==== Étape 1 : téléchargement du paquet git afin de cloner le dépôt GitHub de SQLMap ==== 
 +  * Sous Linux (Debian/Ubuntu) :
  
-{{{Installation}}}+<code class="bash"> 
 +sudo apt-get install git 
 +</code>
  
-Voici le guide d'installation pour l'outil SQLMap :+  * Sous Linux (Red Hat/Fedora) :
  
--* {{Étape 1 : téléchargement du paquet git afin de cloner le dépôt GitHub de SQLMap}} +<code class="bash"> 
--** Sous Linux (Debian/Ubuntu) : +sudo yum install git 
-<code class="bash">sudo apt-get install git</code+</code>
--** Sous Linux (Red Hat/Fedora) : +
-<code class="bash">sudo yum install git</code>+
  
--* {{Étape 2 : clonage du dépôt GitHub de SQLMap vers un dossier en local (sqlmap-latest)}} +==== Étape 2 : clonage du dépôt GitHub de SQLMap vers un dossier en local (sqlmap-latest) ====
-<code class="bash">git clone --depth 1 https://github.com/sqlmapproject/sqlmap.git sqlmap-latest</code>+
  
--* {{Étape 3 : accès et lancement de SQLMap}} +<code class="bash"> 
--** Se déplacer dans le répertoire précédemment créé avec la commande suivante :  +git clone --depth 1 https://github.com/sqlmapproject/sqlmap.git sqlmap-latest 
-<code class="bash">cd sqlmap-latest</code> +</code>
--** Vérifiez l'installation en lançant SQLmap avec la commande suivante  +
-<code class="bash">python3 sqlmap.py --version</code> +
--** SQLmap devrait afficher sa version, ce qui confirme que l'installation s'est correctement déroulée.+
  
-{{{Cas d'utilisation}}}+==== Étape 3 : accès et lancement de SQLMap ====
  
--{{Identification de la Structure de la Base de Données}} : SQLmap peut extraire des informations sur la structure de la base de données, notamment les tables, les colonnes et les utilisateurs. Cela peut être utile pour comprendre la structure de la base de données d'une application cible. +  Se déplacer dans le répertoire précédemment créé avec la commande suivante 
--* {{Exploitation de base de données}} : SQLmap permet la détection d'injections SQL dans une application web, il analyse les entrées utilisateur pour rechercher des méthodes d'exploitations appropriées en fonction du type de base de données, des paramètres de celle-ci, etc. +
--* {{Tests et contournement d'authentification}} SQLmap peut être utilisé pour tester l'authentification d'une application en tentant de contourner les mécanismes d'authentification en utilisant des techniques d'injection SQL sur des formulaires ou des accès privés par exemple.+
  
-{{{Fonctionnalités principales}}}+<code class="bash"> 
 +cd sqlmap-latest 
 +</code> 
 + 
 +  * Vérifiez l'installation en lançant SQLmap avec la commande suivante :  
 + 
 +<code class="bash"> 
 +python3 sqlmap.py --version 
 +</code> 
 + 
 +  * SQLmap devrait afficher sa version, ce qui confirme que l'installation s'est correctement déroulée. 
 + 
 +===== Cas d'utilisation ===== 
 + 
 +  * **Identification de la Structure de la Base de Données** : SQLmap peut extraire des informations sur la structure de la base de données, notamment les tables, les colonnes et les utilisateurs. Cela peut être utile pour comprendre la structure de la base de données d'une application cible. 
 +  * **Exploitation de base de données** : SQLmap permet la détection d'injections SQL dans une application web, il analyse les entrées utilisateur pour rechercher des méthodes d'exploitations appropriées en fonction du type de base de données, des paramètres de celle-ci, etc. 
 +  * **Tests et contournement d'authentification** : SQLmap peut être utilisé pour tester l'authentification d'une application en tentant de contourner les mécanismes d'authentification en utilisant des techniques d'injection SQL sur des formulaires ou des accès privés par exemple. 
 + 
 +===== Fonctionnalités principales =====
  
--{{Détection automatique}} : automatise la détection des vulnérabilités SQL en analysant les paramètres de requête HTTP, en identifiant les erreurs SQL, en effectuant des tests d'injection SQL, etc. +  * **Détection automatique** : automatise la détection des vulnérabilités SQL en analysant les paramètres de requête HTTP, en identifiant les erreurs SQL, en effectuant des tests d'injection SQL, etc. 
--{{Prise en charge de multiples bases de données}} : compatible avec une large gamme de bases de données, notamment MySQL, PostgreSQL, Microsoft SQL Server, Oracle, SQLite, et bien d'autres. +  * **Prise en charge de multiples bases de données** : compatible avec une large gamme de bases de données, notamment MySQL, PostgreSQL, Microsoft SQL Server, Oracle, SQLite, et bien d'autres. 
--{{Support de l'injection basée sur les erreurs}} : peut identifier les erreurs SQL dans les réponses HTTP afin de déterminer si une vulnérabilité SQL existe et si elle peut être exploitée. +  * **Support de l'injection basée sur les erreurs** : peut identifier les erreurs SQL dans les réponses HTTP afin de déterminer si une vulnérabilité SQL existe et si elle peut être exploitée. 
--{{Options de personnalisation}} : offre de nombreuses options pour personnaliser les tests d'injection SQL, y compris la possibilité de spécifier des en-têtes personnalisées, des cookies, des méthodes HTTP, un User-Agent custom, etc. +  * **Options de personnalisation** : offre de nombreuses options pour personnaliser les tests d'injection SQL, y compris la possibilité de spécifier des en-têtes personnalisées, des cookies, des méthodes HTTP, un User-Agent custom, etc. 
--{{Gestion des sessions}} : permet de conserver les sessions pour les applications nécessitant une authentification.+  * **Gestion des sessions** : permet de conserver les sessions pour les applications nécessitant une authentification.
  
-{{{Manuel des options principales}}}+===== Manuel des options principales =====
  
 <code class="markdown"> <code class="markdown">
Ligne 107: Ligne 124:
 </code> </code>
  
 +
 +===== Exemple d'exploitation ou d'utilisation =====
 +
 +Supposons que vous soyez chargé de tester la sécurité d'un site web e-commerce, et que vous ayez découvert une vulnérabilité d'injection SQL potentielle dans le formulaire de recherche du site. Vous souhaitez utiliser SQLmap pour exploiter cette vulnérabilité et extraire des données sensibles de la base de données du site.
 +
 +Voici les étapes du chemin d'exploitation :
 +
 +  * **1 - Identification de la vulnérabilité** : vous avez identifié un point d'entrée potentiel pour une injection SQL dans le champ de recherche du site.
 +  * **2 - Lancement de l'analyse** : vous lancez SQLmap pour analyser le formulaire de recherche et le paramètre associé afin de découvrir de potentielles vulnérabilités dans celui-ci. Vous utilisez l'option "-u" pour spécifier l'URL du site :
 +
 +<code class="bash">
 +sqlmap -u "https://www.example.com/search?q=test"
 +</code>
 +
 +  * **3 - Détection de la vulnérabilité** : SQLmap identifie une vulnérabilité grâce à une des injections SQL dans le formulaire de recherche et affiche les résultats avec le type de vulnérabilité trouvé.
 +
 +  * **4 - Extraction de données** : vous utilisez SQLmap pour afficher la liste des bases de données disponibles sur le serveur en question :
 +
 +<code class="bash">
 +sqlmap -u "https://www.example.com/search?q=test" --dbs
 +</code>
 +
 +  * **5 - Sélection de la base de données** : vous sélectionnez la base de données que vous souhaitez explorer parmi celles détectées par SQLmap.
 +
 +  * **6 - Lister les tables** : vous sélectionnez la ou les table(s) de la base de données que vous avez précédemment sélectionnée :
 +
 +<code class="bash">
 +sqlmap -u "https://www.example.com/search?q=test" -D database_name --tables
 +</code>
 +
 +  * **7 - Extraction des données de table** : vous procédez à l'extraction des données à partir d'une table spécifique. Vous pouvez extraire des informations clients depuis la table "clients" par exemple :
 +
 +<code class="bash">
 +sqlmap -u "https://www.example.com/search?q=test" -D database_name -T clients --dump
 +</code>
 +
 +  * **8 - {{Analyse des données** : vous pouvez ainsi analyser les données extraites afin d'identifier des informations sensibles, telles que les informations de paiement des clients.
 +
 +===== References =====
 +
 +URL : 
 +  * https://github.com/sqlmapproject/sqlmap/wiki/Usage
 +  * https://book.hacktricks.xyz/pentesting-web/sql-injection/sqlmap
 ====== Retour fiches outils ====== ====== Retour fiches outils ======
   * [[cyber:outils:accueil|Cyber fiches outils]]   * [[cyber:outils:accueil|Cyber fiches outils]]
cyber/outils/sqlmap.1751027681.txt.gz · Dernière modification : 2025/06/27 14:34 de admin