CVE-2026-77775
Last modified
CVE-2026-77775 is a high-severity vulnerability rated 8.6/10 on the CVSS scale. Headroom's LLM proxy lets a client choose the upstream destination with the x-headroom-base-url request header. _resolve_openai_upstream_base in headroom/proxy/handlers/openai.py accepts the header value, requires only that it parse with an http or https scheme and a hostname, and returns it for use as the upstream base; _select_passthrough_base_url in headroom/providers/proxy_routes.py reads the same header for the passthrough routes. EPSS estimates a 0.59% chance of exploitation in the next 30 days.
Description
Headroom's LLM proxy lets a client choose the upstream destination with the x-headroom-base-url request header. _resolve_openai_upstream_base in headroom/proxy/handlers/openai.py accepts the header value, requires only that it parse with an http or https scheme and a hostname, and returns it for use as the upstream base; _select_passthrough_base_url in headroom/providers/proxy_routes.py reads the same header for the passthrough routes. No check rejects loopback, link-local, or RFC 1918 destinations, and because the component is a proxy the upstream response is returned to the caller, so the request reaches internal services and cloud metadata addresses and their responses are disclosed. The Authorization header accompanying the request is forwarded unchanged to the caller-designated host. The pip console script binds 127.0.0.1 by default, but the reference docker-compose.yml ships --host 0.0.0.0 with published ports and no required HEADROOM_PROXY_TOKEN, which the server itself warns about at startup, so a deployment following the shipped compose exposes the affected data-plane routes to the network without authentication.
Metrics
Weakness Enumeration
Affected Software
Source: CNA advisory (CVE.org). NVD analysis pending.
| Vendor | Product | Versions |
|---|---|---|
| Headroom Labs | Headroom | < 0.36.1 |
References
Timeline
- Published
- Last Modified
- Status
- Deferred
Frequently Asked Questions
What is CVE-2026-77775?
How severe is CVE-2026-77775?
How do I fix CVE-2026-77775?
How Strix Helps
- One Click Account Takeover in GranolaHow a notification link broke out of Electron and led to a one-click account takeover.
- Autonomous PentestingAI agents that find and validate exploitable vulnerabilities like this one across your applications.
- PR ReviewsPentest every pull request so vulnerable code is caught before it ships to production.
- AI Penetration TestingHow AI-driven penetration testing continuously covers your attack surface.
Related CVEs from 2026
- CVE-2026-77768The report.get procedure in packages/trpc/src/routers/report…6.5
- CVE-2026-77769The report.list procedure in packages/trpc/src/routers/repor…6.5
- CVE-2026-77770The miniOrange 2FA WordPress plugin before 6.3.1, miniOrang…10
- CVE-2026-77771The miniOrange 2FA WordPress plugin before 6.3.1, miniOrang…7.5
- CVE-2026-77773The Contact Form to Chat Apps | Click to Chat to Order Word…5.3
- CVE-2026-77774Adobe Commerce is affected by an Incorrect Authorization vul…8.6
- CVE-2026-77776Headroom's LLM proxy derives the memory owner from the x-hea…9.1
- CVE-2026-7778An issue that could allow a dashboard configuration to be vi…5
- CVE-2026-77780Authorization Bypass Through User-Controlled Key in the tran…5.3
- CVE-2026-77781Tie::Hash::Regex versions before 2.0.0 for Perl will throw a…7.5
- CVE-2026-77782The Rank Math SEO WordPress plugin before 1.0.277.1 does no…5.3
- CVE-2026-77783The Rank Math SEO WordPress plugin before 1.0.277 does not …3.7
Are you affected by CVE-2026-77775?
Run a free Strix scan to check your systems for this vulnerability.
Scan your code nowSource: NVD / NIST
