HexBrain

Browse / CVEs / CVE-2025-62168

CVE-2025-62168· CWE-209

Squid Proxy - HTTP Authentication Credentials Disclosure

criticalseverity
10CVSS score
61.6%likelihood of exploitation, next 30 days
99%of all CVEs are less likely
Readycheck to confirm it

Squid versions prior to 7.2 fail to redact HTTP authentication credentials in error page responses. The Authorization header value is embedded in plain text inside the mailto: diagnostic block when Squid generates an error page (e.g. ERR_DNS_FAIL).

Impact

Attackers can extract tokens and credentials used by trusted clients or backend applications proxied through Squid.

Fix

Update to the version 7.2+ or disable debug information in administrator mailto links generated by Squid by configuring squid.conf with email_err_data off.

How to confirm it

Send: GET http://{{invalid_host}}/
Positive when: status_code == 503 and contains(body, "mailto:") and contains(body, "ERR_DNS_FAIL") and contains(body, "{{token}}")

Run it with nuclei: nuclei -id CVE-2025-62168 -u <target>

The full check
id: CVE-2025-62168

info:
  name: Squid Proxy - HTTP Authentication Credentials Disclosure
  author: xtr0nix
  severity: critical
  description: |
    Squid versions prior to 7.2 fail to redact HTTP authentication credentials in error page responses. The Authorization header value is embedded in plain text inside the mailto: diagnostic block when Squid generates an error page (e.g. ERR_DNS_FAIL).
  impact: |
    Attackers can extract tokens and credentials used by trusted clients or backend applications proxied through Squid.
  remediation: |
    Update to the version 7.2+ or disable debug information in administrator mailto links generated by Squid by configuring squid.conf with email_err_data off.
  reference:
    - https://nvd.nist.gov/vuln/detail/CVE-2025-62168
    - https://github.com/squid-cache/squid/security/advisories/GHSA-c8cc-phh7-xmxr
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
    cvss-score: 10.0
    cve-id: CVE-2025-62168
    epss-score: 0.61588
    epss-percentile: 0.99175
    cwe-id: CWE-209
  metadata:
    verified: true
    max-request: 1
  tags: cve,cve2025,info-disclosure,squid,proxy,vkev

variables:
  token: "{{randstr}}"
  invalid_host: "{{rand_base(16)}}.invalid"

http:
  - raw:
      - |+
        GET http://{{invalid_host}}/ HTTP/1.1
        Host: {{invalid_host}}
        Authorization: Bearer {{token}}

    unsafe: true

    matchers:
      - type: dsl
        dsl:
          - 'status_code == 503'
          - 'contains(body, "mailto:")'
          - 'contains(body, "ERR_DNS_FAIL")'
          - 'contains(body, "{{token}}")'
        condition: and

    extractors:
      - type: regex
        part: body
        name: leaked-token
        regex:
          - "Authorization%3A%20Bearer%20([^%]+)"

References

Use this check only on systems you are authorised to test. Where the data comes from