Second Order Injection - SQLMap
SQLMap peut exploiter les SQLi de second ordre. Vous devez fournir :
La requête où la charge utile de l'injection SQL va être enregistrée
La requête où la charge utile sera exécutée
La requête où la charge utile de l'injection SQL est enregistrée est indiquée comme pour toute autre injection dans sqlmap. La requête où sqlmap peut lire la sortie/l'exécution de l'injection peut être indiquée avec --second-url
ou avec --second-req
si vous devez indiquer une requête complète à partir d'un fichier.
Exemple simple de second ordre :
Dans plusieurs cas cela ne sera pas suffisant car vous devrez effectuer d'autres actions en plus d'envoyer la charge utile et d'accéder à une page différente.
Lorsque cela est nécessaire, vous pouvez utiliser un sqlmap tamper. Par exemple, le script suivant enregistrera un nouvel utilisateur en utilisant la charge utile sqlmap comme email et se déconnectera.
Un tamper SQLMap est toujours exécuté avant de commencer un essai d'injection avec une charge utile et il doit retourner une charge utile. Dans ce cas, nous ne nous soucions pas de la charge utile mais nous nous soucions d'envoyer des requêtes, donc la charge utile n'est pas modifiée.
Ainsi, si pour une raison quelconque nous avons besoin d'un flux plus complexe pour exploiter l'injection SQL de second ordre comme suit :
Créer un compte avec la charge utile SQLi dans le champ "email"
Se déconnecter
Se connecter avec ce compte (login.txt)
Envoyer une requête pour exécuter l'injection SQL (second.txt)
Cette ligne sqlmap vous aidera :
Last updated