p PatchFirst

CVE-2023-32681

CVE-2023-32681 · Unintended leak of Proxy-Authorization header in requests

This page contains facts from public vulnerability sources. Check the original advisory before updating.

Requests is a HTTP library. Since Requests 2.3.0, Requests has been leaking Proxy-Authorization headers to destination servers when redirected to an HTTPS endpoint. This is a product of how we use `rebuild_proxies` to reattach the `Proxy-Authorization` header to requests. For HTTP connections sent through the tunnel, the proxy will identify the header in the request itself and remove it prior to forwarding to the destination server. However when sent over HTTPS, the `Proxy-Authorization` header must be sent in the CONNECT request as the proxy has no visibility into the tunneled request. This results in Requests forwarding proxy credentials to the destination server unintentionally, allowing a malicious actor to potentially exfiltrate sensitive information. This issue has been patched in version 2.31.0.

CVSS 6.1 · Medium · EPSS 3.0% · Fix available

Published
Updated

Stack: system · python

Affected products and versions

  • requests

    Versions
    • >= 2.3.0, < 2.31.0: Affected

    No fix published

  • requests Debian:12

    Versions
    • 2.28.1+dfsg-1
    • 2.31.0+dfsg-1
    • 2.31.0+dfsg-2
    • 2.32.3+dfsg-1
    • 2.32.3+dfsg-2
    • 2.32.3+dfsg-3
    • 2.32.3+dfsg-4
    • 2.32.3+dfsg-5
    • 2.32.4+dfsg-1
    • 2.32.5+dfsg-1
    • 2.32.5+dfsg-2
    • 2.34.2-1
    Affected ranges
    • ECOSYSTEM: (−∞, +∞)

    No fix published

  • requests Debian:13

    Affected ranges
    • ECOSYSTEM: < 2.31.0+dfsg-1

    Update to 2.31.0+dfsg-1

  • requests Debian:14

    Affected ranges
    • ECOSYSTEM: < 2.31.0+dfsg-1

    Update to 2.31.0+dfsg-1

  • requests PyPI

    Versions
    • 2.10.0
    • 2.11.0
    • 2.11.1
    • 2.12.0
    • 2.12.1
    • 2.12.2
    • 2.12.3
    • 2.12.4
    • 2.12.5
    • 2.13.0
    • 2.14.0
    • 2.14.1
    • 2.14.2
    • 2.15.0
    • 2.15.1
    • 2.16.0
    • 2.16.1
    • 2.16.2
    • 2.16.3
    • 2.16.4
    • 2.16.5
    • 2.17.0
    • 2.17.1
    • 2.17.2
    • 2.17.3
    • 2.18.0
    • 2.18.1
    • 2.18.2
    • 2.18.3
    • 2.18.4
    • 2.19.0
    • 2.19.1
    • 2.20.0
    • 2.20.1
    • 2.21.0
    • 2.22.0
    • 2.23.0
    • 2.24.0
    • 2.25.0
    • 2.25.1
    • 2.26.0
    • 2.27.0
    • 2.27.1
    • 2.28.0
    • 2.28.1
    • 2.28.2
    • 2.29.0
    • 2.3.0
    • 2.30.0
    • 2.4.0
    • 2.4.1
    • 2.4.2
    • 2.4.3
    • 2.5.0
    • 2.5.1
    • 2.5.2
    • 2.5.3
    • 2.6.0
    • 2.6.1
    • 2.6.2
    • 2.7.0
    • 2.8.0
    • 2.8.1
    • 2.9.0
    • 2.9.1
    • 2.9.2
    Affected ranges
    • ECOSYSTEM: ≥ 2.3.0, < 2.31.0

    Update to 2.31.0

  • requests PyPI

    Versions
    • 2.10.0
    • 2.11.0
    • 2.11.1
    • 2.12.0
    • 2.12.1
    • 2.12.2
    • 2.12.3
    • 2.12.4
    • 2.12.5
    • 2.13.0
    • 2.14.0
    • 2.14.1
    • 2.14.2
    • 2.15.0
    • 2.15.1
    • 2.16.0
    • 2.16.1
    • 2.16.2
    • 2.16.3
    • 2.16.4
    • 2.16.5
    • 2.17.0
    • 2.17.1
    • 2.17.2
    • 2.17.3
    • 2.18.0
    • 2.18.1
    • 2.18.2
    • 2.18.3
    • 2.18.4
    • 2.19.0
    • 2.19.1
    • 2.20.0
    • 2.20.1
    • 2.21.0
    • 2.22.0
    • 2.23.0
    • 2.24.0
    • 2.25.0
    • 2.25.1
    • 2.26.0
    • 2.27.0
    • 2.27.1
    • 2.28.0
    • 2.28.1
    • 2.28.2
    • 2.29.0
    • 2.3.0
    • 2.30.0
    • 2.4.0
    • 2.4.1
    • 2.4.2
    • 2.4.3
    • 2.5.0
    • 2.5.1
    • 2.5.2
    • 2.5.3
    • 2.6.0
    • 2.6.1
    • 2.6.2
    • 2.7.0
    • 2.8.0
    • 2.8.1
    • 2.9.0
    • 2.9.1
    • 2.9.2
    Affected ranges
    • GIT: < 74ea7cf7a6a27a4eeb2ae24e162bcc942a6706d5
    • ECOSYSTEM: ≥ 2.3.0, < 2.31.0

    Update to 2.31.0

  • requests Ubuntu:Pro:14.04:LTS

    Versions
    • 1.2.3-1
    • 2.0.0-1
    • 2.2.1-1
    • 2.2.1-1ubuntu0.1
    • 2.2.1-1ubuntu0.2
    • 2.2.1-1ubuntu0.3
    • 2.2.1-1ubuntu0.4
    Affected ranges
    • ECOSYSTEM: < 2.2.1-1ubuntu0.4+esm1

    Update to 2.2.1-1ubuntu0.4+esm1

  • requests Ubuntu:Pro:16.04:LTS

    Versions
    • 2.7.0-3
    • 2.8.1-1
    • 2.9.1-1ubuntu1
    • 2.9.1-2
    • 2.9.1-3
    • 2.9.1-3ubuntu0.1
    Affected ranges
    • ECOSYSTEM: < 2.9.1-3ubuntu0.1+esm1

    Update to 2.9.1-3ubuntu0.1+esm1

  • requests Ubuntu:Pro:18.04:LTS

    Versions
    • 2.18.1-1
    • 2.18.4-1
    • 2.18.4-2
    • 2.18.4-2ubuntu0.1
    Affected ranges
    • ECOSYSTEM: < 2.18.4-2ubuntu0.1+esm1

    Update to 2.18.4-2ubuntu0.1+esm1

  • python-pip Ubuntu:20.04:LTS

    Versions
    • 18.1-5
    • 18.1-5build1
    • 18.1-5ubuntu1
    • 20.0.2-2
    • 20.0.2-4
    • 20.0.2-5
    • 20.0.2-5ubuntu1
    • 20.0.2-5ubuntu1.1
    • 20.0.2-5ubuntu1.3
    • 20.0.2-5ubuntu1.4
    • 20.0.2-5ubuntu1.5
    • 20.0.2-5ubuntu1.6
    • 20.0.2-5ubuntu1.7
    • 20.0.2-5ubuntu1.8
    Affected ranges
    • ECOSYSTEM: < 20.0.2-5ubuntu1.9

    Update to 20.0.2-5ubuntu1.9

  • requests Ubuntu:20.04:LTS

    Versions
    • 2.21.0-1
    • 2.22.0-2build1
    • 2.22.0-2ubuntu1
    Affected ranges
    • ECOSYSTEM: < 2.22.0-2ubuntu1.1

    Update to 2.22.0-2ubuntu1.1

  • python-pip Ubuntu:22.04:LTS

    Versions
    • 20.3.4-4
    • 21.3.1+dfsg-3
    • 22.0.2+dfsg-1
    • 22.0.2+dfsg-1ubuntu0.1
    • 22.0.2+dfsg-1ubuntu0.2
    • 22.0.2+dfsg-1ubuntu0.3
    • 22.0.2+dfsg-1ubuntu0.4
    • 22.0.2+dfsg-1ubuntu0.5
    • 22.0.2+dfsg-1ubuntu0.6
    Affected ranges
    • ECOSYSTEM: < 22.0.2+dfsg-1ubuntu0.7

    Update to 22.0.2+dfsg-1ubuntu0.7

  • requests Ubuntu:22.04:LTS

    Versions
    • 2.25.1+dfsg-2
    Affected ranges
    • ECOSYSTEM: < 2.25.1+dfsg-2ubuntu0.1

    Update to 2.25.1+dfsg-2ubuntu0.1

Original sources

Check your server →