Dans le cadre des tests de sécurité en boite noire sur les applications Web, les failles « DOM-based XSS » sont plus difficiles à découvrir que les classiques « Reflected XSS » et « Persistent XSS ». Cet article rappelle les principes de ce type de failles, et détaille le mode de fonctionnement d'un outil performant dans la découverte des « DOM-based XSS », DOMinatorPro développé par Stefano Di Paola.
1. Introduction
Les vulnérabilités Cross-Site Scripting (XSS) sont une classe de faille qui consiste à injecter du code JavaScript malveillant dans le contexte de navigation d'un navigateur Internet. Habituellement, nous distinguions deux principales types de failles XSS : les « Reflected » dont l'attaque est réalisée via une charge dans la requête HTTP qui est alors restituée immédiatement dans la réponse HTTP au navigateur et les « Stored » dont le stockage d'une charge par une première requête HTTP sera alors restituée dans un rendu ultérieur suite à la navigation de l'Internaute (le cas classique est l'insertion de données dans une base de stockage, typiquement pour des forums).
À ce jour, de nombreuses publications affirment que les vulnérabilités de type XSS sont de loin les plus présentes dans les applications Web [STATS1, STATS2].
Illustration 1 : Top 10 des vulnérabilités dans les applications Web (source : TrustWave...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première