
Proof-of-Concept (PoC) for CVE-2025-62168 👾
L'auteur décline toute responsabilité en cas d'utilisation abusive ou de dommages causés par cet outil. La recherche est fournie strictement à des fins éducatives et défensives.
Ce dépôt contient une preuve de concept (PoC) pour CVE-2025-62168 , une faille de divulgation d'informations affectant Squid Proxy.
Sous certaines configurations, Squid peut refléter les en-têtes de requête HTTP dans ses pages d'erreur générées automatiquement, en particulier dans le bloc de diagnostic mailto:.
Ce comportement peut exposer des jetons sensibles tels que :
La PoC montre comment un seul en-tête injecté peut apparaître non expurgé dans le modèle d'erreur, permettant à un attaquant de récupérer le jeton divulgué via une erreur réseau provoquée.
Cette vulnérabilité provient de la manière dont Squid génère et renvoie les pages d'erreur. Lorsqu'une erreur se produit, la réponse de Squid peut involontairement intégrer des données d'authentification HTTP sensibles dans le lien mailto de l'administrateur créé via la directive email_err_data.
Les systèmes sont affectés lorsque email_err_data est activé — y compris dans les configurations par défaut — et l'exposition peut survenir même si Squid n'est pas explicitement configuré pour utiliser l'authentification HTTP.
Le problème est classé sous :
Cela rend la faille particulièrement critique, car les informations d'identification divulguées peuvent appartenir à des applications internes, des services back-end ou des clients authentifiés utilisant Squid comme couche proxy.
Lorsque Squid construit une page d'erreur (par exemple, ERR_READ_ERROR), le modèle interne peut inclure :
HTTP Request:
Header: VALUE
Si l'assainissement échoue, l'en-tête fourni par l'utilisateur est inséré dans le lien hypertexte mailto: utilisé pour le diagnostic. Cette PoC déclenche une erreur en utilisant un domaine inexistant et inspecte le HTML renvoyé pour y trouver des données non expurgées.
La vulnérabilité permet à un attaquant de contourner les contrôles de sécurité normaux du navigateur et d'extraire les informations d'authentification utilisées par les clients de confiance. Cela inclut les jetons et les données de session appartenant à des applications web internes ou à des services back-end, en particulier dans les environnements où Squid agit comme proxy inverse ou équilibreur de charge. En capturant ces informations directement à partir des pages d'erreur générées par Squid, un attaquant pourrait usurper l'identité d'utilisateurs légitimes, élever ses privilèges, se déplacer latéralement au sein du réseau ou compromettre les systèmes back-end qui dépendent de Squid pour le trafic.
mailto: (encodés en URL)CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Score: 7.5 (High)
python3 cve-2025-62168.py --proxy http://127.0.0.1:3128
Mode technique :
python3 cve-2025-62168.py --proxy http://127.0.0.1:3128 --verbose
Le script effectue :
mailto:STEP 4 — Parsing mailto block...
X-Test-Leak: <JWT TOKEN>
STEP 5 — TOKEN LEAK CONFIRMED
<decoded token>
CVE-2025-62168/
│
├── LICENSE
├── README.md
├── cve-2025-62168.py
├── example.txt
├── payload.json
├── requirements.txt
└── token.txt
ERR_*) pour les métadonnées divulguées