Bonjour à tous …
Un petit article pour aujourd’hui : la présentation d’un de mes projets C++/QT4.
Pour le moment ça se nomme 2GWVS pour Grigis Gaetan’s Web Vulnerability Scanner (‘tain le nom ça déchire déjà!!), j’ai dit pour le moment parce que je sais pas trop quel nom donner au projet.
But du projet
Le but du projet est de créer un logiciel dans le genre d’Acunetix (pour ceux qui connaissent), qui liste l’ensemble des urls du site web, puis récupère les variables des urls et les changes pour permettre des tests, pour détecter d’eventuel vulnérabilité au SQL Injection, XSS, …
Simple exemple, imaginons l’url suivante : http://monsitepiratable/index.php?var1=id&var2=texte_lol
Le logiciel va découper les paramètres ce qui va donner var1=id et var2=texte_lol, ensuite le logiciel change le id ou le texte_lol par des codes qui pourrait mettre en valeur une vulnérabilité dans le genre injection SQL, XSS ou …
Fonctionnalités
Pour le moment le logiciel ne permet que :
- Le crawl complet d’un site avec la possibilité de choisir le type de crawl (par regExp ou xml pour les sites Xhtml).
- La possibilité d’utiliser un proxy pour le crawl (genre ratproxy) et un autre pour l’execution des « payloads » lors du scanne des vulnérabilité.
- La possibilité de changer son user-agent (hum hum utile?).
- La possibilité de charger un base de données de payloads (xd) système en cours de dév.
- La possibilité de scanner seulement un type de page (text/plain, text/html, …).
- La détection (foireuse) d’url rewriting qui peut gener les tests de vulnérabilité
Pour que le logiciel soit fonctionnel il faudrait :
- Revoir le système de gestion des urls crawlées (vive le franglais!), pour permettre d’executer les payloads.
- Imaginer un sytème d’éxecution de payloads
- (SECONDAIRE) revoir le code … car pour le moment, je code façon « kilométrique » … le code est crade.
- Améliorer l’interface, car pour le moment c’est très bof.
- Supporté les requetes de type POST.
- et plein d’autre chose.
Pourquoi un scanneur de vulnérabilités web open-source ?
Parce qu’il n’en existe pas réellement, la plupart son juste des logiciels qui regarde les numéros de version d’application genre phpbb et cherche dans leurs base de données si ce numéro de version est vulnérable, donc pour le petit webmaster qui crée sont site web, ce genre d’application est inutile.
D’autant plus que selon certaines études, 70% des sites web sur le net seraient vulnérable à diverses failles, le but de ce logiciel serait donc de permettre aux webmestres de vérifier la vulnérabilité de leurs site web au failles de type SQL Injection, XSS, failles php, … et ceci gratuitement ^^.
Location du projet
Donc voilà … si vous êtes intéressé le site du projet, le svn.
Bien entendu, si vous voulez participer, vous êtes le bienvenu.
Le petit screen pour la route ^^ :
