<?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/"><channel><title>Open WebUI (0.10.0-0.10.2) - CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/products/open-webui-0.10.0-0.10.2/</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>Tue, 04 Aug 2026 20:00:53 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/products/open-webui-0.10.0-0.10.2/feed.xml" rel="self" type="application/rss+xml"/><item><title>SSRF Vulnerability in Open WebUI via NAT64-encoded URLs</title><link>https://feed.craftedsignal.io/briefs/2026-08-open-webui-ssrf/</link><pubDate>Tue, 04 Aug 2026 20:00:53 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-08-open-webui-ssrf/</guid><description>Authenticated users can bypass SSRF protection in Open WebUI by wrapping internal IPv4 addresses in NAT64 IPv6 transition prefixes, allowing unauthorized access to cloud metadata and internal network services.</description><content:encoded><![CDATA[<p>Open WebUI (v0.9.0 through v0.10.x) contains an SSRF vulnerability (CVE-2026-70485) stemming from insecure URL validation logic. When processing user-supplied URLs for RAG or web-search features, the application performs connectivity checks to ensure the destination is globally routable. However, this validation uses the <code>ipaddress.ip_address(ip).is_global</code> check on the literal IPv6 address, failing to account for embedded IPv4 addresses within NAT64 transition prefixes (specifically <code>64:ff9b::/96</code>).</p>
<p>On cloud environments or Kubernetes clusters configured with NAT64 gateways, an attacker can mask internal IPv4 addresses (such as <code>169.254.169.254</code> or <code>127.0.0.1</code>) using these prefixes. Because the literal IPv6 representation is technically globally routable, the filter is bypassed. The server subsequently fetches the internal content and returns the raw response body to the attacker via the API. This vulnerability allows low-privilege users to exfiltrate sensitive data, including IAM credentials from cloud instance metadata services or interface with admin endpoints bound to localhost.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>Attacker authenticates to an Open WebUI instance as a standard user.</li>
<li>Attacker selects a feature utilizing URL ingestion or web retrieval (e.g., <code>/api/v1/retrieval/process/web</code>).</li>
<li>Attacker identifies a target internal resource (e.g., Cloud Metadata service at 169.254.169.254).</li>
<li>Attacker encodes the target IPv4 address into the NAT64 well-known prefix (<code>64:ff9b::/96</code>) to create a literal IPv6 string.</li>
<li>Attacker submits the crafted URL (e.g., <code>http://[64:ff9b::a9fe:a9fe]/latest/meta-data/</code>) to the vulnerable API endpoint.</li>
<li>The application's <code>validate_url()</code> and <code>_ssrf_safe_new_conn()</code> logic incorrectly flag the NAT64-encoded literal as a valid global IPv6 address.</li>
<li>The backend performs an HTTP GET request to the internal destination via the NAT64 gateway.</li>
<li>The sensitive response body is returned to the attacker in the <code>content</code> field of the API response.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation leads to unauthorized read access to internal network services, private APIs, and cloud instance metadata. Attackers can retrieve IAM role credentials, allowing for potential lateral movement from the container to the broader cloud environment. The impact is restricted to deployments utilizing NAT64 gateways, which are standard in modern IPv6-only or dual-stack cloud/Kubernetes network architectures.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Upgrade Open WebUI to version 0.11.0 or later to apply the patch for CVE-2026-70485, which correctly unwraps embedded IPv4 addresses before validation.</li>
<li>Implement network-level egress filtering (Security Groups or Network Policies) to restrict the Open WebUI container from reaching internal cloud metadata IPs (e.g., 169.254.169.254) and private IP ranges.</li>
<li>Monitor logs for requests to web-retrieval endpoints that contain literal IPv6 addresses starting with <code>64:ff9b</code>.</li>
</ul>
]]></content:encoded><category domain="severity">high</category><category domain="type">advisory</category><category>ssrf</category><category>vulnerability</category><category>cloud-security</category><category>web-application</category><category>cve-2026-70479</category><category>web-vulnerability</category><category>authorization-bypass</category><category>cve-2026-70494</category><category>xss</category><category>account-takeover</category></item></channel></rss>