Description
Une attaque XST (Cross-Site Tracing) implique l'utilisation de XSS et la fonction de TRACE de HTTP. La TRACE de HTTP est une fonction par défaut de beaucoup de serveurs web, essentiellement utilisée pour déboguer. Le client envoie une requête HTTP TRACE avec toutes les informations d'en-tête en incluant des cookies, et le serveur répond simplement avec les mêmes données. L'utilisation de Javascript ou d'autres méthodes pour voler un cookie ou d'autres informations peut désactiver l'utilisation d'un cookie “httpOnly” ou sinon un attaquant peut forcer le navigateur à envoyer une requête HTTP TRACE et la réponse du serveur à un autre site. “httpOnly” est un paramètre supplémentaire ajouté aux cookies et qui cache le cookie venant du script (supporté dans la plupart, mais pas dans tous les navigateurs). Par exemple “javascript:alert(document.cookie)” ne montrerait pas de cookie httpOnly.
Ce type d'attaque peut se produire quand il y a une vulnérabilité XSS et que le serveur supporte HTTP TRACE.
References
- Cross-Site Tracing (XST): http://www.cgisecurity.com/whitehat-mirror/WH-WhitePaper_XST_ebook.pdf
- Testing for HTTP Methods and XST (OWASP-CM-008) https://www.owasp.org/index.php/Testing_for_HTTP_Methods_and_XST_%28OWASP-CM-008%29
