Monitor vulnerabilities like this one.
Sign up free to get alerted when software you use is affected.
9.3
CVE-2026-80104: DB-GPT 0.8.0 lets unauthenticated users write files anywhere
CVE-2026-80104 · published 9 days ago
Summary
The DB‑GPT version 0.8.0 web interface lets anyone upload a file and choose the file name, but it does not verify that the name stays inside the designated upload folder. Because the check is missing, an attacker can supply a path that points to any location the server can write to, such as system folders or the program’s own code directory, and place malicious code there. To protect your system, upgrade to a patched version, restrict file‑upload locations, and apply strict file‑name validation or disable the upload feature if it is not needed.
What to do
- Update eosphoros-ai db-gpt to version 0.8.1 or later.
Affected software
| Vendor | Product | Affected versions |
|---|---|---|
| eosphoros-ai | db-gpt | < 0.8.1 |
Original advisory text
DB-GPT 0.8.0 Path Traversal Arbitrary File Write via Skill Upload Filename
DB-GPT builds the destination path for an uploaded skill from the multipart filename without constraining it to the upload directory. skill_upload in packages/dbgpt-app/src/dbgpt_app/openapi/api_v1/agentic_data_api.py takes file.filename as given and writes the request body to upload_dir / filename. A path composed with that operator discards the left operand when the right one is absolute and follows parent references otherwise, so a filename such as ../../../tmp/x or /tmp/x resolves outside the intended directory; nothing canonicalises the result, checks that it remains under the upload root, or prevents a .py suffix. The route's only dependency is get_user_from_headers in dbgpt_serve/utils/auth.py, which returns a request carrying the admin role whether or not a user_id header is supplied, so the endpoint is reachable without credentials. A remote attacker holding no account can therefore write attacker-controlled bytes to any path the server process can write, place a new Python module inside the application package or replace one the application already imports, and obtain code execution in the server process when that module is next imported.
References
- https://github.com/eosphoros-ai/DB-GPT product
- https://github.com/eosphoros-ai/DB-GPT/blob/v0.8.0/packages/dbgpt-app/src/dbgpt_... technical-description
- https://github.com/eosphoros-ai/DB-GPT/releases/tag/v0.8.1 release-notes
- https://pypi.org/project/dbgpt-app/ product
- https://www.vulncheck.com/advisories/db-gpt-0.8.0-path-traversal-arbitrary-file-... third-party-advisory
Severity
9.3
Critical
CVSS 3.1: 9.8 (MITRE)
Exploitation
EPSS <1%
Type
CWE-22Path Traversal
Timeline
Published25 Aug 2026
Updated3 Sep 2026
First seen28 Aug 2026
Monitor software like this
Free during beta