OWASP WebGoat - sécurité des applications WEB
Tests de pénétration d'application WEB
Les tests de pénétration visent à identifier les vulnérabilités au sein d'une application, ces tests peuvent être réalisés manuellement ou bien automatisée avec des outils d'analyse tels des scanners de vulnérabilités.
De tels tests d'intrusion réalisés sur une application, sans l'accord préalable du propriétaire, sont des actes illégaux hautement répréhensible en France et dans de nombreux états.
Méthodologie
La méthodologie proposé par OWASP pour la réalisation de tests de pénétration d'applications WEB est la suivante :
- Récolte d'informations : cette étape vaut aussi bien pour les informations concerant la machine serveur (IP, nom de domaine, Système d'exploitation, version du logiciel de serveur HTTP, etc...) que pour l'application en elle-même et son fonctionnement.
- Test de la gestion de la configuration (Les communications, la configuration de la base de données ou de l'application).
- Test de logique métier de l'application (Peut-on réaliser une opération non-prévue ou non conventionelle? Peut-on modifier le comportement ou la cohérence de l'application?).
- Test des processus d'authentification ou d'autorisations (Intrusion et escalade de privilège).
- Test des processus liés à la gestion des sessions.
- Test de la bonne validation des données soumises à l'application. (Injections, XSS, XSRF)
- Test de l'utilisation de la technologie AJAX.
- Test des WEB services utilisés par l'application.
- Déni de service
Techniques et outils
Il existe de nombreux outils (dont certains proposés par la fondation OWASP) appartenant à différentes catégories de logiciels, en fonction du type d'attaques utilisé et de l'automatisation de celles-ci. Vous trouverez ici quelques exemples d'applications, l'utilisation de certains de ces outils sera détaillée dans la suite de cet exposé :
Catégorie | Logiciels disponibles |
---|---|
Récolte d'informations |
|
Scanners de vulnérabilités connues |
|
Scanners d'injections SQL |
|
Scanners de certificats et de connexions SSL |
|
Outils basé PROXY, édition des échanges, manipulation de cookies |
|
Data Fuzzing / Tampering |
|
D'autres outils, comme les encodeurs / décodeurs ou encore des logiciels de cassage de mots de passe (Basé sur des tables rainbow ou sur la force brute) à partir d'une forme cryptée (E.g: hash) s'avèrent bien généralement nécessaire lors de tels audit de sécurité.
Il existe également de nombreuses extensions (Add-ons) au navigateur internet Mozilla Firefox aidant grandement dans la démarche.