
Proof-of-Concept (PoC) для CVE-2025-62168 👾
Автор не несет ответственности за неправомерное использование или ущерб, причиненный данным инструментом.
Исследование предоставляется исключительно в образовательных и защитных целях.
Этот репозиторий содержит Proof-of-Concept (PoC) для CVE-2025-62168 — уязвимости раскрытия информации, затрагивающей Squid Proxy.
При определенных конфигурациях Squid может отражать HTTP-заголовки запроса внутри автоматически генерируемых страниц ошибок, в частности в диагностическом блоке mailto:.
Такое поведение может раскрывать конфиденциальные токены, например:
PoC демонстрирует, как один внедренный заголовок может появиться без цензуры в шаблоне ошибки, позволяя злоумышленнику получить утекший токен через принудительную сетевую ошибку.
Данная уязвимость возникает из-за того, как Squid генерирует и возвращает страницы ошибок. При возникновении ошибки ответ Squid может непреднамеренно встраивать конфиденциальные данные HTTP-аутентификации в ссылку mailto администратора, создаваемую директивой email_err_data.
Системы уязвимы, если email_err_data включена — в том числе в конфигурациях по умолчанию — и раскрытие может произойти даже если Squid явно не настроен на использование HTTP-аутентификации.
Проблема классифицируется как:
Это делает уязвимость особенно критичной, поскольку утекшие учетные данные могут принадлежать внутренним приложениям, внутренним службам или аутентифицированным клиентам, использующим Squid в качестве прокси-слоя.
Когда Squid формирует страницу ошибки (например, ERR_READ_ERROR), внутренний шаблон может включать:
HTTP Request:
Header: VALUE
Если санитизация не срабатывает, пользовательский заголовок вставляется в гиперссылку mailto:, используемую для диагностики. Данный PoC вызывает ошибку с помощью несуществующего домена и проверяет возвращаемый HTML на наличие неотредактированных данных.
Уязвимость позволяет злоумышленнику обойти обычные средства безопасности браузера и извлечь учетные данные аутентификации, используемые доверенными клиентами. Это включает токены и данные сеансов, принадлежащие внутренним веб-приложениям или внутренним службам, особенно в средах, где Squid работает как обратный прокси или балансировщик нагрузки. Захватив эту информацию непосредственно из сгенерированных Squid страниц ошибок, злоумышленник может выдать себя за легитимного пользователя, повысить уровень доступа, перемещаться по сети горизонтально или скомпрометировать внутренние системы, которые полагаются на Squid для обработки трафика.
mailto: (в 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
Технический режим:
python3 cve-2025-62168.py --proxy http://127.0.0.1:3128 --verbose
Скрипт выполняет:
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_*) на утечку метаданных