Compilation Installation et Utilisation de skipfish (scanner sécurité)

skipfish jpg

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 :

skipfish screen jpg

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 :)

Vus : 400
Publié par System Linux : 211