SQLMap - Cheetsheat
Last updated
Last updated
Configuration instantanément disponible pour l'évaluation des vulnérabilités et les tests de pénétration. Lancez un pentest complet de n'importe où avec plus de 20 outils et fonctionnalités allant de la reconnaissance au reporting. Nous ne remplaçons pas les pentesteurs - nous développons des outils personnalisés, des modules de détection et d'exploitation pour leur permettre de gagner du temps pour creuser plus profondément, ouvrir des shells et s'amuser.
Capturez la requête et créez un fichier req.txt
Sqlmap permet d'utiliser -e
ou --eval
pour traiter chaque charge utile avant de l'envoyer avec un oneliner python. Cela facilite et accélère le traitement personnalisé de la charge utile avant de l'envoyer. Dans l'exemple suivant, la session cookie flask est signée par flask avec le secret connu avant de l'envoyer:
Lisez cet articlesur comment effectuer des injections de second ordre simples et complexes avec sqlmap.
Rappelez-vous que vous pouvez créer votre propre altérer en python et c'est très simple. Vous pouvez trouver un exemple d'altérer dans la page d'injection de second ordre ici.
Tamper | Description |
---|---|
apostrophemask.py | Remplace le caractère apostrophe par son homologue UTF-8 en pleine largeur |
apostrophenullencode.py | Remplace le caractère apostrophe par son homologue double unicode illégal |
appendnullbyte.py | Ajoute un caractère NULL encodé à la fin de la charge utile |
base64encode.py | Encode en base64 tous les caractères d'une charge utile donnée |
between.py | Remplace l'opérateur supérieur ('>') par 'NOT BETWEEN 0 AND #' |
bluecoat.py | Remplace le caractère espace après l'instruction SQL par un caractère blanc aléatoire valide. Remplace ensuite le caractère = par l'opérateur LIKE |
chardoubleencode.py | Double encode en URL tous les caractères d'une charge utile donnée (sans traiter les caractères déjà encodés) |
commalesslimit.py | Remplace les instances comme 'LIMIT M, N' par 'LIMIT N OFFSET M' |
commalessmid.py | Remplace les instances comme 'MID(A, B, C)' par 'MID(A FROM B FOR C)' |
concat2concatws.py | Remplace les instances comme 'CONCAT(A, B)' par 'CONCAT_WS(MID(CHAR(0), 0, 0), A, B)' |
charencode.py | Encode en URL tous les caractères d'une charge utile donnée (sans traiter les caractères déjà encodés) |
charunicodeencode.py | Encode en URL Unicode les caractères non encodés d'une charge utile donnée (sans traiter les caractères déjà encodés). "%u0022" |
charunicodeescape.py | Encode en URL Unicode les caractères non encodés d'une charge utile donnée (sans traiter les caractères déjà encodés). "\u0022" |
equaltolike.py | Remplace toutes les occurrences de l'opérateur égal ('=') par l'opérateur 'LIKE' |
escapequotes.py | Échappe aux guillemets (' et ") |
greatest.py | Remplace l'opérateur supérieur ('>') par son homologue 'GREATEST' |
halfversionedmorekeywords.py | Ajoute un commentaire MySQL versionné avant chaque mot-clé |
ifnull2ifisnull.py | Remplace les instances comme 'IFNULL(A, B)' par 'IF(ISNULL(A), B, A)' |
modsecurityversioned.py | Encadre la requête complète avec un commentaire versionné |
modsecurityzeroversioned.py | Encadre la requête complète avec un commentaire à zéro version |
multiplespaces.py | Ajoute plusieurs espaces autour des mots-clés SQL |
nonrecursivereplacement.py | Remplace les mots-clés SQL prédéfinis par des représentations adaptées au remplacement (par ex. .replace("SELECT", "")) filtres |
percentage.py | Ajoute un signe de pourcentage ('%') devant chaque caractère |
overlongutf8.py | Convertit tous les caractères d'une charge utile donnée (sans traiter les caractères déjà encodés) |
randomcase.py | Remplace chaque caractère de mot-clé par une valeur de cas aléatoire |
randomcomments.py | Ajoute des commentaires aléatoires aux mots-clés SQL |
securesphere.py | Ajoute une chaîne spécialement conçue |
sp_password.py | Ajoute 'sp_password' à la fin de la charge utile pour l'obfuscation automatique des journaux du SGBD |
space2comment.py | Remplace le caractère espace (' ') par des commentaires |
space2dash.py | Remplace le caractère espace (' ') par un commentaire de tiret ('--') suivi d'une chaîne aléatoire et d'un saut de ligne ('\n') |
space2hash.py | Remplace le caractère espace (' ') par un caractère dièse ('#') suivi d'une chaîne aléatoire et d'un saut de ligne ('\n') |
space2morehash.py | Remplace le caractère espace (' ') par un caractère dièse ('#') suivi d'une chaîne aléatoire et d'un saut de ligne ('\n') |
space2mssqlblank.py | Remplace le caractère espace (' ') par un caractère blanc aléatoire parmi un ensemble valide de caractères alternatifs |
space2mssqlhash.py | Remplace le caractère espace (' ') par un caractère dièse ('#') suivi d'un saut de ligne ('\n') |
space2mysqlblank.py | Remplace le caractère espace (' ') par un caractère blanc aléatoire parmi un ensemble valide de caractères alternatifs |
space2mysqldash.py | Remplace le caractère espace (' ') par un commentaire de tiret ('--') suivi d'un saut de ligne ('\n') |
space2plus.py | Remplace le caractère espace (' ') par un plus ('+') |
space2randomblank.py | Remplace le caractère espace (' ') par un caractère blanc aléatoire parmi un ensemble valide de caractères alternatifs |
symboliclogical.py | Remplace les opérateurs logiques AND et OR par leurs homologues symboliques (&& et |
unionalltounion.py | Remplace UNION ALL SELECT par UNION SELECT |
unmagicquotes.py | Remplace le caractère de guillemet (') par une combinaison multioctet %bf%27 avec un commentaire générique à la fin (pour le faire fonctionner) |
uppercase.py | Remplace chaque caractère de mot-clé par une valeur en majuscule 'INSERT' |
varnish.py | Ajoute un en-tête HTTP 'X-originating-IP' |
versionedkeywords.py | Encadre chaque mot-clé non fonctionnel avec un commentaire MySQL versionné |
versionedmorekeywords.py | Encadre chaque mot-clé avec un commentaire MySQL versionné |
xforwardedfor.py | Ajoute un faux en-tête HTTP 'X-Forwarded-For' |
Configuration instantanée disponible pour l'évaluation des vulnérabilités et les tests de pénétration. Exécutez un pentest complet de n'importe où avec plus de 20 outils et fonctionnalités allant de la reconnaissance au reporting. Nous ne remplaçons pas les pentesteurs - nous développons des outils personnalisés, des modules de détection et d'exploitation pour leur donner du temps pour creuser plus profondément, ouvrir des shells et s'amuser.