
WAFNinja est un outil qui contient deux fonctions pour attaquer les pare-feu d'applications web.
WAFNinja - L'outil préféré des testeurs d'intrusion pour contourner les WAF
WAFNinja est un outil en ligne de commande écrit en Python. Il aide les testeurs d'intrusion à contourner un WAF en automatisant les étapes nécessaires pour contourner la validation des entrées. L'outil a été créé avec l'objectif d'être facilement extensible, simple à utiliser et utilisable en équipe. De nombreuses charges utiles et chaînes de fuzzing, stockées dans un fichier de base de données local, sont fournies avec l'outil. WAFNinja prend en charge les connexions HTTP, les requêtes GET et POST ainsi que l'utilisation de cookies pour accéder à des pages restreintes aux utilisateurs authentifiés. De plus, un proxy d'interception peut être configuré.
Installation :
git clone https://github.com/khalilbijjou/WAFNinja && cd WAFNinja
pip install -r requirements.txt
Utilisation :
wafninja.py [-h] [-v] {fuzz, bypass, insert-fuzz, insert-bypass, set-db} ...
EXEMPLE :
fuzz :
python wafninja.py fuzz -u "http://www.target.com/index.php?id=FUZZ"
-c "phpsessid=value" -t xss -o output.html
bypass :
python wafninja.py bypass -u "http://www.target.com/index.php" -p "Name=PAYLOAD&Submit=Submit"
-c "phpsessid=value" -t xss -o output.html
insert-fuzz :
python wafninja.py insert-fuzz -i select -e select -t sql
arguments positionnels : {fuzz, bypass, insert-fuzz, insert-bypass, set-db}
Quelle fonction souhaitez-vous utiliser ?
fuzz vérifie quels symboles et mots-clés sont autorisés par le WAF.
bypass envoie les charges utiles de la base de données vers la cible.
insert-fuzz ajoute une chaîne de fuzzing
insert-bypass ajoute une charge utile à la liste de contournement
set-db utilise un autre fichier de base de données. Utile pour partager la même base avec d'autres.
arguments optionnels :
-h, --help affiche ce message d'aide et quitte
-v, --version affiche le numéro de version du programme et quitte
J'apprécierais tout retour ! Merci, Khalil.