Compilation Installation et Utilisation de skipfish (scanner sécurité)
Un outil made in Google pour les développeur ou les admins sys pointilleux.
Vu sur Toolinux.org
Skipfish est un outil d’analyse de sécurité multi-plateforme, publié sous licence Apache.
Développé par M. Zalewski, ingénieur de Google aux Etats-Unis, Skipfish est un scanner opensource de sécurité. Disponible en version bêta, il est compatible avec les systèmes Windows (Cygwin), Mac OS X, BSD et Linux.
Destiné aux développeurs de sites et d’applications web, Skipfish réalise un audit du code à la recherche de failles de sécurité. Il est écrit en C, optimisé pour le HTTP, il est présenté comme peu consommateur de CPU. Il remplirait sans peine 2000 requêtes par seconde avec des objectifs adaptés. L’outil comporte des heuristiques pour la plupart des sites web et se voit doté de capacités d’apprentissage automatique. Il assure également la complétion automatique de formulaires.
Pré-requis :
Pour utiliser skipfish vous aurez besoin de la librairie : libidn Installez la, selon votre distribution :
yum install libidn.i386 libidn-devel.i386 ou aptitude install libidn libidn-dev
Téléchargement :
Vous trouverez la dernière version de Skipfish à cette adresse : http://code.google.com/p/skipfish
cd /opt/SOURCES wget http://skipfish.googlecode.com/files/skipfish-1.19b.tgz tar xvzf skipfish-1.19b.tgz
Installation :
Rien de plus simple, un petit :
make
suffira.
Ensuite il vous faudra choisir son mode de fonctionnement, rendez vous dans le repertoire dictionaries et jetez un œil dans le fichier README-FIRST En effet les tests et scans se font en fonction de ce fichier : skipfish.wl c'est en quelques sortent des fichiers de profile.
Nous allons essayé le minimal.wl
cd dictionaries cp -a minimal.wl ../skipfish.wl
Utilisation :
./skipfish -o output_dir http://www.exemple.fr
Ce qui vous donnera :
Scan statistics --------------- Scan time : 0:01:03.0447 HTTP requests : 18620 sent (298.02/s), 8397.97 kB in, 3590.38 kB out (188.95 kB/s) Compression : 3899.56 kB in, 6712.37 kB out (26.51% gain) HTTP exceptions : 0 net errors, 0 proto errors, 0 retried, 0 drops TCP connections : 190 total (109.66 req/conn) TCP exceptions : 0 failures, 0 timeouts, 1 purged External links : 108 skipped Reqs pending : 2216 Database statistics ------------------- Pivots : 44 total, 5 done (11.36%) In progress : 17 pending, 16 init, 3 attacks, 3 dict Missing nodes : 0 spotted Node types : 1 serv, 13 dir, 3 file, 0 pinfo, 18 unkn, 9 par, 0 val Issues found : 7 info, 0 warn, 10 low, 20 medium, 0 high impact Dict size : 2021 words (4 new), 33 extensions, 256 candidates
Quelques informations sont clair... pour le reste je vous laisse interpréter, mais ceci n'est pas le vrai rapport complet, pour le visualiser à l'aide de votre navigateur il faudra disposé d'un serveur web (apache par exemple :p ou cherokee) et utiliser une commande comme celle ci :
./skipfish -o /var/www/html/skipfish/ http://www.exemple.fr
Si l'url que vous voulez tester requière une authentification ajoutez ceci :.-A user:pass
Pour des tests avec gestion des cookies : -C name=titi
Pour d'autres subtilités lisez la doc ! ou utilisez la commande :
./skipfish -h
Documentation :
La liste des tests que peut effectuer skipfish se trouve dans le fichier README dans les SOURCES (2. Most curious! What specific tests are implemented?).
Pour aller un peu plus loin : la documentation complete en ligne à cette adresse : http://code.google.com/p/skipfish/wiki/SkipfishDoc
Un petit aperçu :
Conclusion :
Avec cette outil ( si les développeurs l'utilisent) peut être pouvons nous croire que les mises en production de code farfelu ne ferrons plus souffrir les Administrateur Système ? l'avenir nous le dira