<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:webfeeds="http://webfeeds.org/rss/1.0"><channel><title>Headroom - CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/vendors/headroom/</link><description>Trending threats, MITRE ATT&amp;CK coverage, and detection metadata. Fed continuously.</description><generator>Hugo</generator><language>en</language><managingEditor>hello@craftedsignal.io</managingEditor><webMaster>hello@craftedsignal.io</webMaster><lastBuildDate>Fri, 21 Aug 2026 13:24:19 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/vendors/headroom/feed.xml" rel="self" type="application/rss+xml"/><image><url>https://feed.craftedsignal.io/favicon-32x32.png</url><title>CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/</link><width>32</width><height>32</height></image><webfeeds:icon>https://feed.craftedsignal.io/favicon.svg</webfeeds:icon><item><title>Authentication Bypass in Headroom LLM Proxy via Header Spoofing</title><link>https://feed.craftedsignal.io/briefs/2026-08-headroom-identity-spoofing/</link><pubDate>Fri, 21 Aug 2026 13:24:19 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-08-headroom-identity-spoofing/</guid><description>The Headroom LLM proxy improperly derives memory ownership from the unauthenticated 'x-headroom-user-id' request header, allowing attackers to perform unauthorized read and write operations on arbitrary user LLM memory.</description><content:encoded><![CDATA[<p>CVE-2026-77776 is an authentication and authorization vulnerability in the Headroom LLM proxy. The application derives memory ownership directly from the 'x-headroom-user-id' HTTP header in 'headroom/proxy/handlers/openai.py' without verifying the caller's identity. This allows an attacker to manipulate the header to impersonate any user, resulting in unauthorized access to sensitive stored LLM memory.</p>
<p>The risk is significantly amplified by the provided 'docker-compose.yml' file, which defaults to binding the service to '0.0.0.0' and fails to enforce the 'HEADROOM_PROXY_TOKEN' environment variable. When deployed using this configuration, the service exposes its data-plane endpoints to the network, enabling unauthenticated attackers to perform identity spoofing remotely. Defenders must ensure that the proxy is bound to local interfaces only or that the 'HEADROOM_PROXY_TOKEN' is strictly enforced for all inbound requests.</p>
<h2 id="impact">Impact</h2>
<p>Successful exploitation allows unauthenticated attackers to read or write the LLM memory of any user registered within the Headroom instance. This could lead to the exposure of proprietary data, sensitive user conversations, or the injection of malicious context into future LLM interactions, compromising the integrity of all stored assistant memory.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Immediately update the 'docker-compose.yml' configuration to bind the proxy to '127.0.0.1' and verify that 'HEADROOM_PROXY_TOKEN' is enabled and non-default.</li>
<li>Implement network-level access controls to restrict access to the LLM proxy port to authorized internal IP addresses only.</li>
<li>Patch the Headroom LLM proxy to the version where the 'resolve_memory_identity' seam is introduced in 'headroom/proxy/identity.py'.</li>
<li>Audit logs for suspicious 'x-headroom-user-id' header patterns that deviate from expected user identification formats.</li>
</ul>
]]></content:encoded><category domain="severity">critical</category><category domain="type">advisory</category><category>identity-spoofing</category><category>cve</category><category>web-application-vulnerability</category><category>web-application</category><category>ssrf</category><category>vulnerability</category></item></channel></rss>