Introduction
Dans ce laboratoire, vous apprendrez les étapes fondamentales pour initialiser et vérifier l'environnement sqlmap sous Kali Linux. sqlmap est un outil de test d'intrusion open-source qui automatise le processus de détection et d'exploitation des failles d'injection SQL et de prise de contrôle des serveurs de bases de données. Comprendre comment configurer et interagir correctement avec sqlmap est crucial pour toute personne souhaitant effectuer des évaluations de sécurité d'applications web. Vous vérifierez son installation, explorerez son menu d'aide complet, comprendrez les différents niveaux de verbosité et identifierez une URL cible pour les tests.
Accéder au terminal Kali Linux
Dans cette étape, vous accéderez au terminal Kali Linux, qui est l'interface principale pour interagir avec sqlmap et d'autres outils en ligne de commande. Le terminal offre un environnement puissant pour exécuter des commandes et visualiser leur sortie.
Tout d'abord, assurez-vous d'être dans le répertoire ~/project. C'est le répertoire de travail par défaut pour votre environnement de laboratoire.
cd ~/project
Maintenant, ouvrez une nouvelle fenêtre de terminal si aucune n'est déjà ouverte, ou assurez-vous d'être dans le terminal existant. Vous devriez voir une invite similaire à labex@labex-vm:~/project$.
Vérifier l'installation de sqlmap avec sqlmap --version
Dans cette étape, vous vérifierez que sqlmap est correctement installé et accessible dans votre environnement Kali Linux en consultant sa version. C'est un moyen rapide de confirmer que l'outil est prêt à être utilisé.
Exécutez la commande suivante dans votre terminal :
sqlmap --version
Vous devriez voir une sortie similaire à la suivante, indiquant la version installée de sqlmap :
sqlmap version 1.x.x.x ## ou un numéro de version similaire
Cette sortie confirme que sqlmap est installé et peut être exécuté depuis la ligne de commande.
Explorer le menu d'aide principal avec sqlmap -h
Dans cette étape, vous explorerez le menu d'aide principal de sqlmap. Le menu d'aide offre un aperçu complet de toutes les options disponibles et de leurs fonctionnalités, ce qui est essentiel pour comprendre comment utiliser l'outil efficacement.
Exécutez la commande suivante pour afficher le menu d'aide principal :
sqlmap -h
Cette commande affichera une longue liste d'options, de catégories et d'exemples. Faites défiler la sortie pour avoir une idée générale des capacités de sqlmap. Vous remarquerez des sections pour la spécification de la cible, les options de requête, l'optimisation, l'injection, la détection, et plus encore.
_
_ __ _ __| | __ ___ ___
| '_ \| '__| |/ / / __|/ __|
| |_) | | | < \__ \\__ \
| .__/|_| |_|\_\ |___/|___/
|_|
... (sortie tronquée) ...
Usage: python3 sqlmap [options]
Options:
--version Affiche le numéro de version du programme et quitte
-h, --help Affiche ce message d'aide et quitte
-v VERBOSE Niveau de verbosité : 0-6 (par défaut 1)
Cible (Target):
Au moins une de ces options doit être fournie pour définir la/les cible(s)
-u URL, --url=URL URL cible (par exemple "http://www.site.com/vuln.php?id=1")
-g GOOGLEDORK Traiter les résultats de Google dork comme des URLs cibles
... (sortie tronquée) ...
Cette sortie est cruciale pour comprendre les différents paramètres que vous pouvez utiliser avec sqlmap.
Comprendre les niveaux de verbosité avec l'option -v
Dans cette étape, vous apprendrez les niveaux de verbosité dans sqlmap en utilisant l'option -v. Les niveaux de verbosité contrôlent la quantité d'informations que sqlmap affiche pendant son exécution, ce qui peut être très utile pour le débogage ou pour obtenir des informations plus détaillées sur ses opérations.
L'option -v va de 0 (silencieux) à 6 (débogage). Essayons quelques niveaux pour voir la différence.
Tout d'abord, essayez un niveau de verbosité bas (par exemple, 0) :
sqlmap -u "http://testphp.vulnweb.com/listproducts.php?cat=1" -v 0 --batch
Vous remarquerez très peu de sortie, car sqlmap s'exécute silencieusement. L'option --batch est ajoutée pour éviter les invites interactives pour cette démonstration.
Ensuite, essayez un niveau de verbosité plus élevé (par exemple, 3) :
sqlmap -u "http://testphp.vulnweb.com/listproducts.php?cat=1" -v 3 --batch
Vous verrez beaucoup plus de sortie, y compris les requêtes HTTP, les réponses et des informations détaillées sur le processus de test. Ce niveau est souvent utile pour comprendre ce que sqlmap fait en coulisses.
_
_ __ _ __| | __ ___ ___
| '_ \| '__| |/ / / __|/ __|
| |_) | | | < \__ \\__ \
| .__/|_| |_|\_\ |___/|___/
|_|
... (sortie tronquée) ...
[HH:MM:SS] [INFO] starting @ HH:MM:SS /YYYY-MM-DD/
[HH:MM:SS] [INFO] fetched data: 'cat=1'
[HH:MM:SS] [INFO] testing connection to the target URL
[HH:MM:SS] [INFO] checking if the target is protected by some kind of WAF/IPS/IDS
[HH:MM:SS] [INFO] the target URL is not protected by any kind of WAF/IPS/IDS
[HH:MM:SS] [INFO] testing if the target URL is stable
[HH:MM:SS] [INFO] target URL is stable
[HH:MM:SS] [INFO] testing for GET parameter 'cat'
[HH:MM:SS] [INFO] GET parameter 'cat' is vulnerable.
... (sortie tronquée) ...
Comprendre les niveaux de verbosité vous aide à contrôler la quantité d'informations affichées, ce qui est crucial pour une analyse efficace lors des tests d'intrusion.
Identifier l'URL de l'application de test vulnérable
Dans cette étape, vous identifierez une URL d'application web vulnérable disponible publiquement qui peut être utilisée pour tester sqlmap. À des fins de hacking éthique et d'apprentissage, il est crucial d'utiliser des environnements ou des applications de test désignés pour lesquels vous avez une autorisation explicite de tester.
Pour ce laboratoire, nous utiliserons http://testphp.vulnweb.com/listproducts.php?cat=1 comme URL cible. Cette URL est intentionnellement vulnérable à l'injection SQL et est fournie par Acunetix à des fins de test.
Vous pouvez simplement noter cette URL. Dans les futurs laboratoires, vous utiliserez cette URL avec sqlmap pour effectuer diverses attaques par injection SQL.
L'URL est : http://testphp.vulnweb.com/listproducts.php?cat=1
Cette URL contient un paramètre GET cat qui est connu pour être vulnérable. Ce sera votre cible pour les exercices sqlmap ultérieurs.
Résumé
Dans ce laboratoire, vous avez initialisé et vérifié avec succès votre environnement sqlmap sous Kali Linux. Vous avez appris comment accéder au terminal, vérifier la version de sqlmap, explorer son menu d'aide complet et comprendre l'importance des niveaux de verbosité pour une sortie détaillée. De plus, vous avez identifié une URL d'application web vulnérable disponible publiquement (http://testphp.vulnweb.com/listproducts.php?cat=1) qui servira de cible pour vos futurs exercices d'injection SQL. Ces étapes fondamentales sont cruciales pour utiliser efficacement sqlmap dans des scénarios de tests d'intrusion.


