
Une extension Burp pour tester la vulnérabilité des applications à l'attaque Web Cache Deception
Une extension Burp pour tester les applications contre la vulnérabilité de l'attaque Web Cache Deception.
Une fois l'extension chargée, elle est accessible dans l'onglet Target - Sitemap en faisant un clic droit sur la ressource à tester. Un élément de menu contextuel nommé "Web Cache Deception Test" s'affiche et peut être utilisé pour effectuer le test. Si la ressource est vulnérable, un Issue est créé détaillant la vulnérabilité.
L'élément de menu contextuel est également disponible pour les requêtes dans l'onglet Proxy - Http History.
En février 2017, le chercheur en sécurité Omer Gil a dévoilé un nouveau vecteur d'attaque appelé « Web Cache Deception » (https://omergil.blogspot.co.il/2017/02/web-cache-deception-attack.html).
L'attaque Web Cache Deception peut avoir des conséquences dévastatrices, mais elle est très simple à exécuter :
** Bien sûr, cette attaque n'a de sens que lorsque la ressource vulnérable accessible à l'attaquant renvoie des données sensibles.
L'attaque dépend d'un ensemble très spécifique de circonstances pour rendre l'application vulnérable :
1. L'application ne lit que la première partie de l'URL pour déterminer la ressource à renvoyer.
Si la victime demande :
https://www.example.com/my_profile
L'application renvoie la page de profil de la victime. L'application utilise uniquement la première partie de l'URL pour déterminer que la page de profil doit être renvoyée. Si l'application reçoit une requête pour
https://www.example.com/my_profile_test
Elle renverrait toujours la page de profil de la victime, ignorant le texte ajouté. Il en va de même pour d'autres URL comme
https://www.example.com/my_profile/test
2. La pile applicative met en cache les ressources selon leurs extensions de fichier, plutôt que selon les valeurs des en-têtes de cache.
Si la pile applicative a été configurée pour mettre en cache les fichiers image. Elle mettra en cache toutes les ressources avec les extensions .jpg .png ou .gif. Cela signifie que, par exemple, l'image à
https://www.example.com/images/dog.jpg
Sera récupérée depuis le serveur d'application la première fois que l'image est demandée. Toutes les demandes ultérieures pour l'image sont servies depuis le cache, répondant avec la même ressource qui a été initialement mise en cache (aussi longtemps que le délai d'expiration du cache est défini).
Ces préconditions peuvent être exploitées pour l'attaque Web Cache Deception de la manière suivante :
https://www.example.com/my_profile/test.jpg
https://www.example.com/my_profile/test.jpg
CERVEAU EXPLOSÉ Comme c'est facile ?