CVE-2026-77775
Received Received - Intake

SSRF via Unrestricted X-Headroom-Base-Url Header in Headroom LLM Proxy

Vulnerability report for CVE-2026-77775, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-08-21

Last updated on: 2026-08-21

Assigner: VulnCheck

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.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-08-21
Last Modified
2026-08-21
Generated
2026-08-21
AI Q&A
2026-08-21
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 3 associated CPEs
Vendor Product Version / Range
headroomlabs-ai headroom 0.36.1
headroomlabs-ai headroom 0.29.0
headroomlabs-ai headroom From 0.0.0 (inc) to 0.36.1 (exc)

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-918 The web server receives a URL or similar request from an upstream component and retrieves the contents of this URL, but it does not sufficiently ensure that the request is being sent to the expected destination.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This is a Server-Side Request Forgery (SSRF) vulnerability in Headroom's LLM proxy. It allows a client to specify an upstream destination URL via the x-headroom-base-url header without proper validation. The proxy forwards requests to internal services, cloud metadata addresses, and returns their responses to the client. The Authorization header is also forwarded unchanged.

Detection Guidance

Check if Headroom proxy is running on 0.0.0.0 with published ports and no authentication token. Inspect HTTP headers for x-headroom-base-url usage. Test if internal or cloud metadata endpoints are accessible via the proxy.

Impact Analysis

An attacker could exploit this to access internal network services, cloud metadata endpoints (like AWS IMDS), or private IP addresses. Sensitive data from these services could be exposed. If the proxy is exposed to the network without authentication, unauthorized access is possible.

Compliance Impact

This vulnerability could lead to unauthorized access to sensitive data, violating confidentiality requirements in GDPR and HIPAA. Exposure of internal services or cloud metadata may result in non-compliance with data protection and security standards.

Mitigation Strategies

Upgrade Headroom proxy to version 0.36.1 or later. Disable the proxy binding to 0.0.0.0 and restrict to 127.0.0.1. Enforce authentication via HEADROOM_PROXY_TOKEN. Validate and restrict allowed upstream URLs using HEADROOM_ALLOWED_BASE_URLS.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-77775. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart