{"id":"CVE-2026-70491","summary":"Open WebUI: Tool source code disclosed to read-only users via the tool list and get endpoints","details":"Open WebUI is an extensible, feature-rich, and user-friendly self-hosted AI platform. In 0.10.2 and earlier, the GET /api/v1/tools/, GET /api/v1/tools/list, and GET /api/v1/tools/id/{id} endpoints in backend/open_webui/routers/tools.py returned full Python tool source to authenticated non-admin read-only users. ToolResponse deliberately omitted source and specs, but ToolUserResponse permitted extra fields and handlers spread a full tool model dump into the response, re-admitting omitted fields. A non-admin with a read grant can obtain another user's server-side tool source, which commonly embeds hard-coded API keys, credentials, and internal service URLs. This issue is fixed in 0.11.0.","aliases":["GHSA-3r7g-q6cg-q2vx","PYSEC-2026-3639"],"modified":"2026-08-10T11:40:31.158190468Z","published":"2026-08-04T20:51:27.840Z","database_specific":{"cwe_ids":["CWE-200"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/70xxx/CVE-2026-70491.json","cna_assigner":"GitHub_M"},"references":[{"type":"WEB","url":"https://github.com/open-webui/open-webui/releases/tag/v0.11.0"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/70xxx/CVE-2026-70491.json"},{"type":"ADVISORY","url":"https://github.com/open-webui/open-webui/security/advisories/GHSA-3r7g-q6cg-q2vx"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-70491"},{"type":"FIX","url":"https://github.com/open-webui/open-webui/commit/c05de13b4fca1ac8a17153782b46b3d0aacf491c"},{"type":"FIX","url":"https://github.com/open-webui/open-webui/pull/27005"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/open-webui/open-webui","events":[{"introduced":"0"},{"fixed":"c05de13b4fca1ac8a17153782b46b3d0aacf491c"},{"fixed":"f9590b8017199e56d5e953657e6498e3cef1d246"}],"database_specific":{"extracted_events":[{"introduced":"0"},{"fixed":"0.11.0"}],"source":["AFFECTED_FIELD","REFERENCES"]}}],"versions":["v0.10.2","v0.10.1","v0.10.0","v0.9.6","v0.9.5","v0.9.4","v0.9.3","v0.9.2","v0.9.1","v0.9.0","v0.8.12","v0.8.11","v0.8.10","v0.8.9","v0.8.8","v0.8.7","v0.8.6","v0.8.5","v0.8.4","v0.8.3","v0.8.2","v0.8.1","v0.8.0","v0.7.2","v0.7.1","v0.7.0","v0.6.43","v0.6.42","v0.6.41","v0.6.40","v0.6.39","v0.6.38","v0.6.37","v0.6.36","v0.6.34","v0.6.35","v0.6.33","v0.6.32","v0.6.31","v0.6.30","v0.6.29","v0.6.28","v0.6.27","v0.6.26","v0.6.25","v0.6.24","v0.6.23","v0.6.22","v0.6.21","v0.6.20","v0.6.19","v0.6.18","v0.6.17","v0.6.16","v0.6.15","v0.6.14","v0.6.13","v0.6.12","v0.6.11","v0.6.10","v0.6.9","v0.6.8","v0.6.7","v0.6.6","v0.6.5","v0.6.4","v0.6.3","v0.6.2","v0.6.1","v0.6.0","v0.5.16","v0.5.20","v0.5.19","v0.5.18","v0.5.17","v0.5.15","v0.5.14","v0.5.12","v0.5.13","v0.5.11","v0.5.10","v0.5.9","v0.5.8","v0.5.7","v0.5.6","v0.5.5","v0.5.4","v0.5.3","v0.5.2","v0.5.1","v0.5.0","v0.4.8","v0.4.7","v0.4.6","v0.4.5","v0.4.4","v0.4.3","v0.4.2","v0.4.1","v0.4.0","v0.3.35","v0.3.34","v0.3.33","v0.3.32","v0.3.31","v0.3.30","v0.3.29","v0.3.28","v0.3.27","v0.3.26","v0.3.25","v0.3.24","v0.3.23","v0.3.22","v0.3.21","v0.3.20","v0.3.19","v0.3.18","v0.3.17","v0.3.16","v0.3.15","v0.3.14","v0.3.13","v0.3.12","v0.3.11","v0.3.10","v0.3.9","v0.3.8","v0.3.7","v0.3.6","v0.3.5","v0.3.4","v0.3.3","v0.3.2","v0.3.1","v0.3.0","v0.2.5","v0.2.4","v0.2.3","v0.2.2","v0.2.1","v0.2.0","v0.1.125","v0.1.124","v0.1.123","v0.1.122","v0.1.114","v0.1.121","v0.1.120","v0.1.119","v0.1.118","v0.1.117","v0.1.116","v0.1.115","v0.1.108","v0.1.113","v0.1.112","v0.1.111","v0.1.110","v0.1.109","v0.1.107","v0.1.106","v0.1.105","v0.1.104","v0.1.103","v0.1.102"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-70491.json"}}],"schema_version":"1.8.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N"}]}