Wapiti 1, MySQL 0
Saturday, 10. October 2009, 18:27:00
Le développement de Wapiti continue doucement mais sûrement. J'ai mis en place le système de module dont j'avais parlé, ça commence à avoir de la gueule
Dans les dernières révisions sur le SVN j'ai pu réimplémenter l'injection SQL en aveugle et la recherche des XSS permanents qui avaient été virés dans les changements.
Aujourd'hui j'ai joué un peu avec Mutillidae (après quelques minutes à modifier le code car pas assez "strict" pour ma config).
Ca a permis de trouver quelques problèmes stupides avec l'injection en aveugle, notemment l'utilisation du mot clé "AND" qui est bien moins efficace qu'un bon "OR"
et aussi quelques payloads simples que j'ai rajouté.
Sans ces 2/3 payloads simples, Wapiti injectait la fonction SQL "benchmark(10000000,MD5(1))" alors qu'il aurait pu tout aussi bien le faire avec un "sleep()" (si un caractère supplémentaire n'avait pas été présent).
La différence entre ces deux fonctions c'est que la première prend beaucoup de ressources. On voit les requêtes s'entasser sous MySQL ("show processlist;") et le process passe à plus de 95% d'utilisation du CPU... et finalement MySQL semble baisser les bras : le processus tourne encore mais le serveur ne traite plus les requêtes.
Wapiti vainqueur par K.O.
Maintenant je compte vérifier la façon dont est géré la verbosité dans les différents modules puis je vous reparlerais prochainement du système de modules et comment en créer de nouveaux ;-)
Pour obtenir la dernière version du SVN :
Dans les dernières révisions sur le SVN j'ai pu réimplémenter l'injection SQL en aveugle et la recherche des XSS permanents qui avaient été virés dans les changements.
Aujourd'hui j'ai joué un peu avec Mutillidae (après quelques minutes à modifier le code car pas assez "strict" pour ma config).
Ca a permis de trouver quelques problèmes stupides avec l'injection en aveugle, notemment l'utilisation du mot clé "AND" qui est bien moins efficace qu'un bon "OR"
Sans ces 2/3 payloads simples, Wapiti injectait la fonction SQL "benchmark(10000000,MD5(1))" alors qu'il aurait pu tout aussi bien le faire avec un "sleep()" (si un caractère supplémentaire n'avait pas été présent).
La différence entre ces deux fonctions c'est que la première prend beaucoup de ressources. On voit les requêtes s'entasser sous MySQL ("show processlist;") et le process passe à plus de 95% d'utilisation du CPU... et finalement MySQL semble baisser les bras : le processus tourne encore mais le serveur ne traite plus les requêtes.
Wapiti vainqueur par K.O.
Maintenant je compte vérifier la façon dont est géré la verbosité dans les différents modules puis je vous reparlerais prochainement du système de modules et comment en créer de nouveaux ;-)
Pour obtenir la dernière version du SVN :
svn co https://wapiti.svn.sourceforge.net/svnroot/wapiti wapiti








How to use Quote function: