Arachni – Scanner distribué de vulnérabilité

Publié le 29 avril 2013 par Pydubreucq

Arachni est application libre sous Ruby permettant de tester la vulnérabilité d’application Web via une licence Apache v2

Il est intelligent, il se forme par apprentissage à partir des réponses HTTP qu’il reçoit au cours du processus de vérification et est capable d’effectuer une analyse en utilisant un certain nombre de facteurs afin d’évaluer correctement la fiabilité des résultats et identifier intelligemment les faux positifs.

Il est assez souple pour couvrir un grand nombre de cas d’utilisation, allant de l’utilisation d’un scanner en ligne de commande, à un réseau de scanner haute performance, d’une bibliothèque Ruby permettant de réaliser des audits scénarisés, à une plate-forme web collaborative multi-scan multi-utilisateur..

Initialement commencé comme un exercice pédagogique, il a depuis évolué vers une structure puissante et modulaire permettant une évaluation de la vulnérabilité rapide, précise et flexible.

Arachni permet d’ajouter des plugins afin d’étendre les fonctionnalités.

Voici une présentation de l’application :

Automatisation

Arachni est un système entièrement automatisé. Une fois que le scanner est lancé, il ne vous pose aucune question.

Une fois le scan terminé, il est capable d’exporter les résultat vers différents formats (HTML, TXT, XML, etc.).

Performance

Afin de maximiser l’utilisation de la bande passante, le système utilise des requêttes HTTP asynchrones.

Intelligence

Arachni utilise différentes techniques pour compenser l’environnement largement hétérogène des applications web.

Cela comprend une combinaison de techniques largement déployées (taint-analysis, fuzzing, analyse différentielle, timing/delay attacks,) avec de nouvelles technologies (analyse rDiff, la méta-analyse modulaire) développé spécifiquement pour Arachni.

Entraineur

L’entraineur est le système qui permet à Arachni d’apprendre depuis le scan en cours et d’incorporer ces connaissances à chaud pour la durée du scan.

Extensible

Arachni a été consu pour être pleinement modulaire.

Le framework peut être étendu en ajoutant des composants comme un extracteur de chemin, des modules, des plugins ou encore au niveau de l’interface utilisateur.

Modules

Arachni a plus de 40 audit (active) et recon (passive) modules qui permettent d’identifier et de logguer les informations de sécurité et informatinnels

Les éléments récupérés vont des vulnérabilités (injection de code, XSS, injection SQL et beaucoup plus) à de simples données (adresses e-mail, commentaires de code côté client, etc.)

Plug-ins

Arachni offre des plugins visant à  aider l’automatisation de différentes tâches allant de l’authentification à une application jusqu’à une meta-analyse de haut niveau en recoupant les résultats d’analyse avec un grand nombre de données sur l’environnement.

Rapports

Le composants Report vous permet de formater les résultats d’analyse comme vous le souhaitez. Si les rapports existants (HTML, texte, XML, etc) ne répondent pas à vos besoins, il est très facile de créer celui qui vous convient.

Déploiement flexible

Le système permet plusieurs options de déploiement allant d’une interface de ligne de commande mono-utilisateur simple à multi-utilisateurs à multiples déploiements distribués et parallèles.

Le contrôle des déploiements distribués est réalisé en utilisant une API RPC simple et ouverte visant à accroître l’interopérabilité et la conformité multi-plateforme.

Voici quelques screenshot de l’interface web :

Liens utiles :

Site officiel d’Arachni

Liste complète des fonctionnalités d’Arachni (en anglais)