Wapiti

Un article de Backtrack-fr.

Sommaire

[modifier] Introduction

Wapiti, outil écrit en Python, permet d'auditer des applications web via le protocole HTTP.

Ce dernier s'attaque au front-office (l'interface du site) afin d'y déceler des vulnérabilités inhérentes aux langages dynamiques. Parmis la multitude de scanner existant, celui-ci propose une étude relativement complète. Ainsi, parmis les failles les plus communes, on peut citer des vulnérabilités de type SQL (Langages communiquant avec les bases de donnée : JSP, PHP, ASP...), de type XSS ( Injection de code javascript), et également d'autres vulnérabilités, tel que l'inclusion de fichier, l'exécution de commande.


Version actuel : 1.1.5

Image:wapiti.jpeg

[modifier] Usage

python wapiti.py http://server.com/base/url/ [options]

[modifier] Options d'utilisation

 -s <url>
 --start <url>
       Démarrer le scan avec l'url <url>
 -x <url>
 --exclude <url>
       Pour exclure certaines url du scan (par exemple les scripts de déconnection)
       On peut aussi utiliser un caractère générique (wildcard) comme '
       Exemple : -x "http://server/base/?page=*&module=test"
       ou -x http://server/base/admin/* pour exclure le répertoire
 -p <url_proxy>
 --proxy <url_proxy>
       Spécifier un proxy
       Exemple: -p http://proxy:port/
 -c <cookie_file>
 --cookie <cookie_file>
       Pour utiliser un cookie
 -t <timeout>
 --timeout <timeout>
       Pour fixer un timeout (en seconde),très utile selon le temps de réponse du proxy.
 -a <login%password>
 --auth <login%password>
       Règle le login et le password pour une authentification HTTP
       Ne fonctionne pas avec Python 2.4
 -r <parameter_name>
 --remove <parameter_name>
       Efface un paramètre des URLs
 -m <module>
 --module <module>
       Définit  un jeu d'options de scan et d'attaque précis.
       GET_ALL: utilise seulement les requêtes GET  (pas POST)
       GET_XSS: utilise seulement les attaques XSS avec la méthode GET 
       POST_XSS: utilise seulement les attaques XSS avec la méthode POST
 -u
 --underline
       Mettre en couleur les paramètres vulnérabilité dans la sortie
 -v <level>
 --verbose <level>
       Règle le nombre d'information à afficher dans la sortie.
       0: silencieux (default), 1: Afficher chaque url, 2: afficher toutes les attaques


[modifier] Exemples d'utilisation

[modifier] Références

(en) Site du projet

(en) Site du développeur