Fin mars 2010, Google dévoilait SkipFish, un outil un peu spécial dont on ne connaissait pas grand chose. A vrai dire il est même un peu apparu comme un cheveu sur la soupe dans le monde de la sécurité informatique. Après que quelques personnes téméraires qui l’aient testé on à pu apprendre quelques choses dessus comme:
- Déjà c’est un projet Open Source (et ça c’est bien!)
- Il s’agit d’un scanner de failles d’applications web
- Ca se manipule en lignes de commandes (H4x0Rz baby !)
- Ça bourrine jusqu’à 2000 requêtes en local et 500 en ligne
- Il sait apprendre tout seul en fonction des scans précédents
- Il respecte les principes de l’OWASP (et ça ça gère la fougère !)
Bon c’est bien tout ça me direz-vous mais on ne sait toujours pas comment on l’utilise. Et bien on va tout d’abord l’installer (je précise tout de suite, l’installation se réalise sous Linux et non sous Windows, pour ce dernier il faudra utiliser les librairies Cygwin dont je ferai un tuto plus tard)
- On va récupérer l’URL sur le site de l’application
- http://skipfish.googlecode.com/files/skipfish-1.49b.tgz
- Attention car les versions change très rapidement !!!
- On ouvre un terminal de commande sous Linux
- On se déplace sur le bureau … cd Desktop toussa …
- On télécharge l’archive
- sudo wget http://skipfish.googlecode.com/files/skipfish-1.49b.tgz
- On extrait l’archive
- sudo tar xfvz skipfish-1.49b.tgz
- On s’assure d’avoir les librairies bien à jour
- sudo apt-get install libidn11-dev
- sudo apt-get install libssl-dev
- sudo apt-get install zlib1g-dev
- On se déplace dans le dossier
- cd skipfish-1.49b
- On compile
- make
- On crée le dictionnaire pour l’exploration des sites
- cp dictionaries/default.wl skipfish.wl
- Ici il s’agit du dictionnaire par défaut mais on peut changer default.wl par
- complete.wl (le méga dico !)
- extensions-only.wl (un dico qui ne tape que sur les extensions)
- minimal.wl (le minimum syndical
- On lance le scan
- ./skipfish -o /test/ http://www.test.com
- Petite explication de la syntaxe
- Le « -o » c’est le répertoire de sortie
- Si on a un htacess à passer on utilise « -A user:password »
- Si on ne veut pas toucher au dico on utilise « -Q »
- Après comme on dit, RTFM !
A la fin ça doit donner ça :
Un fichier index.html dans le dossier de sortie et qui répertorie tous le scan.
Attention cependant, certains scans peuvent être extrêmement longs, surtout si l’on utilise des dictionnaires de plus en plus gros. Les logs sont assez difficiles à comprendre pour des non-initiés. Mais surtout, surtout, surtout … ne l’utilisez pas sur votre site perso, ça risque de lui piquer assez fort ! Utilisez le en local et regarder le traffic ainsi que l’utilisation CPU, vous comprendrez de suite …
Au pire, si ça bombarde trop pour vous un petit coup de :
- ./skipfish -h (et il n’y-a plus qu’à lire !)