CVE-2026-45351: Open webui Open WebUI Exposes System Prompt Vulnerability

MODERATE
Advisory Identifier: GHSA-jh9g-8jqw-m2qx
CVSS 6.5
CWE-200
Published
Advisory Summary

CVE-2026-45351 is a MODERATE (CVSS 6.5) open webui exposes system prompt vulnerability (CWE-200: Exposure of Sensitive Information to an Unauthorized Actor) affecting Open webui libraries in the PyPI ecosystem. The issue involves open webui exposes system prompt to regular user [non-admin]. Remediation is available by upgrading affected packages to version 0.8.9.

CVE-2026-45351 at a Glance

CVE Identifier CVE-2026-45351
GHSA Identifier GHSA-jh9g-8jqw-m2qx
Severity MODERATE
CVSS v3.1 Base Score 6.5
CWE Classification CWE-200: Exposure of Sensitive Information to an Unauthorized Actor
Affected Product Open webui
Package Ecosystem PyPI
Published Date
Last Updated

Security Impact

CVSS: 6.5

The security impact metrics below are parsed directly from the CVSS v3.1 vector string (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N).

Attack Vector Network (AV:N)
Attack Complexity Low (AC:L)
Privileges Required Low (PR:L)
User Interaction None (UI:N)
Scope Unchanged (S:U)
Confidentiality High (C:H)
Integrity None (I:N)
Availability None (A:N)

How to Fix CVE-2026-45351

To remediate this vulnerability, upgrade all affected Open webui dependencies to a patched release. Both direct and transitive dependencies should be checked, as frameworks or security libraries may pull in vulnerable versions transitively.

open-webui fixed: 0.8.9
pip install open-webui>=0.8.9
Verify Direct and Transitive Dependencies

Run the following command in your project directory to verify that all resolved dependencies use the patched release:

pip show open-webui

How to Check if You Are Affected

To determine whether your Python environment is affected by CVE-2026-45351, inspect your installed packages using pip:

pip show open-webui

Analyze the terminal output to locate any version of Open webui in your dependency tree. If any resolved version matches the vulnerable ranges listed in the table below (for example, versions earlier than 0.8.9), your application is affected.

Note: The pip show open-webui command checks currently installed packages in your active Python environment.

Technical Details

Vulnerability Mechanism & Technical Analysis

This vulnerability is classified under CWE-200: Exposure of Sensitive Information to an Unauthorized Actor, where the product exposes sensitive information to an actor that is not explicitly authorized to have access to that information. In Open webui, software state validation or input boundaries are circumvented during processing. Review the official source advisory statement below for specific affected components, classes, and reproduction details.

Source Advisory Statement

### Summary _A regular user [non-admin] can view the system prompt of the model which is set by an admin._ ### Details _When a regular user [non-admin] logs into the application, a http://IP:8080/api/models? web request is initiated by the application and in response, it reveals the system prompt of available models set by admin on models pages in workspace affecting the confidentiality of application_ ### Affected System _Open WebUI v0.6.40 "main" branch_ ### Vulnerability Details and Advisory from OWASP LLM07:2025 System Prompt Leakage - https://genai.owasp.org/llmrisk/llm072025-system-prompt-leakage/ ### PoC _1. Regular User [Non-Admin] login on Open WebUI application._ _2. A series of web requests get generated by the application, and the http://IP:8080/api/models? is also gets generated by application ._ _3. The response of http://IP:8080/api/models? web request reveals the system prompt of all the available models which is set is by the admin on models pages in workspace._ <img width="940" height="352" alt="system prompt leak" src="https://github.com/user-attachments/assets/bd2c76f1-398f-4bc8-a8b2-5e14a768c560" /> ### Web Request GET /api/models? HTTP/1.1 Host: localhost:8080 sec-ch-ua-platform: "Linux" authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjdmYjUxMmFhLTBmMTAtNDRkZi1iOWY1LThmNDg2MWFhNWFmOCIsImV4cCI6MTc2NjU2MjE5OH0.yJpavBynKItPQv76SMGKK012JIf29PVUv9sjuCDuRGQ Accept-Language: en-US,en;q=0.9 sec-ch-ua: "Chromium";v="141", "Not?A_Brand";v="8" sec-ch-ua-mobile: ?0 User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36 Accept: application/json Content-Type: application/json Sec-Fetch-Site: same-origin Sec-Fetch-Mode: cors Sec-Fetch-Dest: empty Referer: http://localhost:8080/ Accept-Encoding: gzip, deflate, br Cookie: token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjdmYjUxMmFhLTBmMTAtNDRkZi1iOWY1LThmNDg2MWFhNWFmOCIsImV4cCI6MTc2NjU2MjE5OH0.yJpavBynKItPQv76SMGKK012JIf29PVUv9sjuCDuRGQ Connection: keep-alive ### Impact _1. System prompts can reveal the model instructions, providing an attackers with inside knowledge about the system capabilities and bypass restrictions._ _2. Attacker can perform content manipulation affecting the input/output of the model._ ### Details from MITRE ATLAS Discover LLM System Information - https://atlas.mitre.org/techniques/AML.T0069 Discover LLM System Information: System Instruction Keywords - https://atlas.mitre.org/techniques/AML.T0069.001 Discover LLM System Information: System Prompt - https://atlas.mitre.org/techniques/AML.T0069.002 ### Recommendation _1. The web response should not reveal system prompt and related internal/back-end details regarding the model to the regular user._ _2. Only the model name and non-sensitive details should be revealed to regular user and internal/back-end details should not be disclosed._

CVE-2026-45351 Affected Open webui Versions

1 component(s)
Fixed Versions:
0.8.9
Product / Package Ecosystem Affected Versions Fixed Version
open-webui
PyPI
< 0.8.9
0.8.9

References

Frequently Asked Questions

What is CVE-2026-45351?
CVE-2026-45351 is a security vulnerability in Open webui involving Open WebUI Exposes System Prompt to Regular User [Non-Admin] under CWE-200: Exposure of Sensitive Information to an Unauthorized Actor.
Which Open webui versions are affected?
Affected versions include releases prior to 0.8.9 across affected packages: open-webui.
What version fixes CVE-2026-45351?
Upgrading to 0.8.9 (or the latest patched release for your respective branch) resolves the vulnerability.
Is open-webui affected?
Yes, open-webui is affected in releases prior to 0.8.9. Upgrade your dependency to 0.8.9 or later.
What is the CVSS score of CVE-2026-45351?
CVE-2026-45351 has a CVSS v3.1 base score of 6.5 (MODERATE) with vector string CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N.
What CWE is associated with CVE-2026-45351?
CVE-2026-45351 is classified under CWE-200: Exposure of Sensitive Information to an Unauthorized Actor (The product exposes sensitive information to an actor that is not explicitly authorized to have access to that information.).
How can I check PyPI dependencies for CVE-2026-45351?
Run the dependency tree command: 'pip show open-webui'. This command lists direct and transitive dependencies in your build configuration so you can verify if a vulnerable version is resolved.
Machine-readable OSV JSON OSV v1.5 Schema
Normalized schema output
{
  "schema_version" : "1.4.0",
  "id" : "GHSA-jh9g-8jqw-m2qx",
  "modified" : "2026-05-19T15:59:58Z",
  "published" : "2026-05-14T20:25:04Z",
  "aliases" : [ "CVE-2026-45351" ],
  "summary" : "Open WebUI Exposes System Prompt to Regular User [Non-Admin]",
  "details" : "### Summary\n_A regular user [non-admin] can view the system prompt of the model which is set by an admin._\n\n### Details\n_When a regular user [non-admin] logs into the application, a http://IP:8080/api/models? web request is initiated by the application and in response, it reveals the system prompt of available models set by admin on models pages in workspace affecting the confidentiality of application_\n\n### Affected System\n_Open WebUI v0.6.40 \"main\" branch_\n\n### Vulnerability Details and Advisory from OWASP\nLLM07:2025 System Prompt Leakage - https://genai.owasp.org/llmrisk/llm072025-system-prompt-leakage/\n\n\n### PoC\n_1. Regular User [Non-Admin] login on Open WebUI application._\n_2. A series of web requests get generated by the application, and the http://IP:8080/api/models? is also gets generated by application ._\n_3. The response of http://IP:8080/api/models? web request reveals the system prompt of all the available models which is set is by the admin on models pages in workspace._\n<img width=\"940\" height=\"352\" alt=\"system prompt leak\" src=\"https://github.com/user-attachments/assets/bd2c76f1-398f-4bc8-a8b2-5e14a768c560\" />\n\n### Web Request\nGET /api/models? HTTP/1.1\nHost: localhost:8080\nsec-ch-ua-platform: \"Linux\"\nauthorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjdmYjUxMmFhLTBmMTAtNDRkZi1iOWY1LThmNDg2MWFhNWFmOCIsImV4cCI6MTc2NjU2MjE5OH0.yJpavBynKItPQv76SMGKK012JIf29PVUv9sjuCDuRGQ\nAccept-Language: en-US,en;q=0.9\nsec-ch-ua: \"Chromium\";v=\"141\", \"Not?A_Brand\";v=\"8\"\nsec-ch-ua-mobile: ?0\nUser-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36\nAccept: application/json\nContent-Type: application/json\nSec-Fetch-Site: same-origin\nSec-Fetch-Mode: cors\nSec-Fetch-Dest: empty\nReferer: http://localhost:8080/\nAccept-Encoding: gzip, deflate, br\nCookie: token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjdmYjUxMmFhLTBmMTAtNDRkZi1iOWY1LThmNDg2MWFhNWFmOCIsImV4cCI6MTc2NjU2MjE5OH0.yJpavBynKItPQv76SMGKK012JIf29PVUv9sjuCDuRGQ\nConnection: keep-alive\n\n\n### Impact\n_1. System prompts can reveal the model instructions, providing an attackers with inside knowledge about the system capabilities and bypass restrictions._\n_2. Attacker can perform content manipulation affecting the input/output of the model._\n\n### Details from MITRE ATLAS\nDiscover LLM System Information - https://atlas.mitre.org/techniques/AML.T0069\nDiscover LLM System Information: System Instruction Keywords - https://atlas.mitre.org/techniques/AML.T0069.001\nDiscover LLM System Information: System Prompt - https://atlas.mitre.org/techniques/AML.T0069.002\n\n\n### Recommendation\n_1. The web response should not reveal system prompt and related internal/back-end details regarding the model to the regular user._\n_2. Only the model name and non-sensitive details should be revealed to regular user and internal/back-end details should not be disclosed._",
  "severity" : [ {
    "type" : "CVSS_V3",
    "score" : "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N"
  } ],
  "affected" : [ {
    "package" : {
      "ecosystem" : "PyPI",
      "name" : "open-webui"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "0"
      }, {
        "fixed" : "0.8.9"
      } ]
    } ],
    "database_specific" : {
      "last_known_affected_version_range" : "<= 0.8.8"
    }
  } ],
  "references" : [ {
    "type" : "WEB",
    "url" : "https://github.com/open-webui/open-webui/security/advisories/GHSA-jh9g-8jqw-m2qx"
  }, {
    "type" : "ADVISORY",
    "url" : "https://nvd.nist.gov/vuln/detail/CVE-2026-45351"
  }, {
    "type" : "PACKAGE",
    "url" : "https://github.com/open-webui/open-webui"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/open-webui/open-webui/releases/tag/v0.8.9"
  } ],
  "database_specific" : {
    "cwe_ids" : [ "CWE-200" ],
    "severity" : "MODERATE",
    "github_reviewed" : true,
    "github_reviewed_at" : "2026-05-14T20:25:04Z",
    "nvd_published_at" : "2026-05-15T22:16:55Z"
  }
}