☣️Web Cache Poisoning / Deception

Méthodologie

  1. Identifier et évaluer les entrées sans clé

    1. En-tête / Cookie

    2. Paramètre

    3. Chaîne de caractère

  2. Ajouter un cache buster à la requête (exp: cb=1)

  3. Essayer de faire refléter un "canary" dans la requête avec une entrée sans clé.

  4. Envoyer la requête jusqu'à ce qu'elle soit mise en cache.

  5. Supprimer le cache buster puis renvoyer la requête.

  6. Obtenir la réponse mise en cache

La mise en cache ou non d'une réponse peut dépendre de toutes sortes de facteurs, tels que l'extension de fichier (exp: .js), le type de contenu, la route, le code d'état (exp: 200 OK) et les en-têtes de réponse (exp: X-Forwarded-Host).

Poisoning vs. Deception:

Poisoning vise mettre en cache une réponse contenant du code malveillant pour impacter les autres utilisateurs, Deception vise à mettre en cache une page contenant des informations sensibles d'un autre utilisateur pour pouvoir les récupérer.

Ressources

Outils

Extension Burp Param Miner

Param Miner est une extension de Burp Suite permettant d'automatiser la recherche d'entrées sans clé.

Utilisation: clic droit sur la requête > "Extensions" > "Param Miner" > ...

Résultats visible dans l'onglet "Extender" > "Extensions" > "Param Miner" > "Output"

Dernière mise à jour