<?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>MemOS - CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/vendors/memos/</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>Mon, 17 Aug 2026 22:51:01 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/vendors/memos/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 MemOS via Internal Middleware Misconfiguration</title><link>https://feed.craftedsignal.io/briefs/2026-08-memos-auth-bypass/</link><pubDate>Mon, 17 Aug 2026 22:51:01 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-08-memos-auth-bypass/</guid><description>MemOS contains an authentication bypass vulnerability where unset environment variables cause the internal request middleware to fail open, granting unauthenticated remote attackers administrative access.</description><content:encoded><![CDATA[<p>MemOS, a memory operating system designed for LLMs and AI agents, contains a critical authentication bypass vulnerability (CVE-2026-75110). The issue resides in the <code>is_internal_request()</code> function within <code>src/memos/api/middleware/auth.py</code>. In environments where <code>AUTH_ENABLED</code> is set to <code>true</code>, the system attempts to verify internal service requests by comparing the <code>X-Internal-Service</code> header against the <code>INTERNAL_SERVICE_SECRET</code> environment variable.</p>
<p>If the <code>INTERNAL_SERVICE_SECRET</code> variable is not explicitly configured by the administrator, the <code>os.getenv</code> call returns <code>None</code>. Simultaneously, a request lacking the <code>X-Internal-Service</code> header also results in <code>None</code>. Consequently, the comparison <code>None == None</code> evaluates to <code>true</code>, causing the middleware to improperly classify an unauthenticated external request as a trusted internal principal with &quot;all&quot; scopes. This flaw grants attackers full access to sensitive administrative endpoints, including those for API-key management, allowing them to mint, enumerate, and revoke keys, or generate a master key for persistent, privileged unauthorized access to the entire data platform.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>Attacker performs reconnaissance to identify a MemOS deployment exposing the API surface.</li>
<li>Attacker probes the authentication middleware by sending arbitrary requests without the <code>X-Internal-Service</code> header.</li>
<li>The server-side <code>auth.py</code> middleware retrieves the value of the unset <code>INTERNAL_SERVICE_SECRET</code> environment variable, which resolves to <code>None</code>.</li>
<li>The middleware retrieves the missing header value from the request, which also resolves to <code>None</code>.</li>
<li>The <code>is_internal_request()</code> function executes the comparison <code>None == None</code>, returning <code>True</code>.</li>
<li>The MemOS middleware grants the request a trusted internal principal identity with broad &quot;all&quot; scopes.</li>
<li>Attacker submits requests to the <code>/api/key-management</code> endpoint to mint new administrative API keys.</li>
<li>Attacker uses the newly minted keys to exfiltrate data or gain persistent, unauthorized administrative access.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation of this vulnerability leads to complete compromise of the MemOS instance. An attacker can bypass all authentication controls, gain administrative access to API-key management, and exfiltrate or manipulate LLM/agent memory data. Given the &quot;all&quot; scope granted, attackers can generate persistent master keys, effectively providing long-term unauthorized access even if the underlying environment configuration is eventually corrected.</p>
<h2 id="recommendation">Recommendation</h2>
<p>Prioritize the immediate remediation of affected MemOS instances.</p>
<ul>
<li>Deploy an <code>INTERNAL_SERVICE_SECRET</code> environment variable with a strong, high-entropy secret key immediately to force the <code>os.getenv</code> return value to be non-null.</li>
<li>Review all logs for unauthorized access to administrative paths (e.g., <code>/api/key-management</code>) originating from external IP addresses.</li>
<li>Audit all active API keys in the MemOS deployment for unauthorized additions or modifications created since the deployment was initialized.</li>
<li>Upgrade MemOS to the patched version once released by the vendor to enforce robust header validation.</li>
</ul>
]]></content:encoded><category domain="severity">critical</category><category domain="type">advisory</category></item></channel></rss>