Vulnerability advisory

CVE-2023-32681

Unintended leak of Proxy-Authorization header in requests

Published Updated OSV record ↗

Also known as GHSA-j8r2-6x86-q33qPYSEC-2023-74

Severity
  • CVSS 3.xCVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:N/A:N

Affected versions

Repository

Affected commitsFixed by commit
GIT github.com/psf/requests ↗
6366d3dd190a9e58ca582955cddf7e2ac5f32dcc to before 147c8511ddbfa5e8f71bbf5c18ede0c4ceb3bba4147c8511ddbfa5e8f71bbf5c18ede0c4ceb3bba4
Not specified74ea7cf7a6a27a4eeb2ae24e162bcc942a6706d5
Also listed as affected (53)
  • v2.30.0
  • v2.29.0
  • v2.28.2
  • v2.28.1
  • v2.28.0
  • v2.27.1
  • v2.27.0
  • v2.26.0
  • v2.25.1
  • v2.25.0
  • v2.24.0
  • v2.20.1
  • v2.19.1
  • v2.19.0
  • v2.18.3
  • v2.18.2
  • v2.17.3
  • v2.17.1
  • v2.17.0
  • v2.16.5
  • v2.16.4
  • v2.16.2
  • v2.16.1
  • v2.16.0
  • v2.15.1
  • v2.16.3
  • v2.15.0
  • v2.14.2
  • v2.14.1
  • v2.14.0
  • v2.12.5
  • v2.12.4
  • v2.12.3
  • v2.12.2
  • v2.12.0
  • v2.12.1
  • v2.11.1
  • v2.11.0
  • v2.10.0
  • v2.9.2
  • v2.9.1
  • v2.9.0
  • v2.8.1
  • v2.8.0
  • v2.6.0
  • v2.5.2
  • v2.5.1
  • v2.5.0
  • v2.4.3
  • v2.4.2
  • v2.4.1
  • v2.4.0
  • v2.3.0

Description

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.

References

  • Codex
  • Claude Code
  • VS Code
  • GitHub Copilot
  • Cursor
  • Cline
  • Windsurf
  • Google Anti-gravity
  • OpenCode
  • Pi
  • Gemini CLI
  • Hermes Agent
  • Zed
  • Junie
  • Qwen Code
  • Kiro
  • Kilo Code
  • Factory Droid

Set up GitHits for your agents

Run this command:

<> bash
npx githits@latest init

What happens next:

  1. Opens your browser to authorize GitHits
  2. Asks whether to set up GitHits at the user or project level
  3. Detects your supported AI coding tools
  4. Lets you choose which tools to configure
  5. Configures the selected tools