Unauthenticated Remote Code Execution in DB-GPT via Path Traversal
An unauthenticated path traversal vulnerability in DB-GPT allows remote attackers to write arbitrary files and achieve remote code execution by uploading malicious Python modules to the application server.
CVE search metadata
CVE search record: CVE-2026-80104. Severity: critical. CVSS: 9.8. KEV: no. Product: DB-GPT. Brief: Unauthenticated Remote Code Execution in DB-GPT via Path Traversal. Brief link: https://feed.craftedsignal.io/briefs/2026-08-dbgpt-path-traversal/
DB-GPT is susceptible to a critical path traversal vulnerability (CVE-2026-80104) arising from improper validation of multipart filenames during skill uploads. The vulnerable function, skill_upload located in packages/dbgpt-app/src/dbgpt_app/openapi/api_v1/agentic_data_api.py, constructs file paths by concatenating a base directory with the user-provided filename without performing canonicalization or restriction to the upload directory.
Crucially, an authentication bypass in dbgpt_serve/utils/auth.py allows unauthenticated users to access this API endpoint. By submitting a crafted filename containing parent directory references (e.g., ../../../) or absolute paths, an attacker can write arbitrary files to the server's filesystem. An attacker can leverage this primitive to drop a malicious Python module into an application directory. Given the application's structure, the server process will execute the attacker-controlled code upon the subsequent import of the corrupted module. This vulnerability allows for full system compromise from an unauthenticated remote position.
Attack Chain
- Attacker identifies the target DB-GPT instance reachable via the network.
- Attacker crafts a multipart HTTP request targeting the
skill_uploadAPI endpoint. - Attacker sets the multipart
filenameattribute to a path-traversal string, such as../../../path/to/malicious_module.py. - Attacker includes the payload (Python code) in the request body to be written to the target location.
- The server process, lacking filename validation, writes the file to the malicious destination on the filesystem.
- The application performs a subsequent operation or import that loads the newly created
.pyfile. - The Python interpreter executes the attacker-controlled script within the context of the server process.
- Attacker gains persistent remote code execution and potential full system compromise.
Impact
Successful exploitation of CVE-2026-80104 leads to unauthenticated Remote Code Execution (RCE) on the DB-GPT server. This allows an attacker to execute arbitrary system commands, steal sensitive data, or install persistent backdoors. Given that DB-GPT often handles AI/ML configurations and model artifacts, the impact includes potential exfiltration of proprietary datasets and credentials.
Recommendation
- Immediately restrict network access to the DB-GPT API endpoint to trusted internal networks only.
- Update DB-GPT to the patched version that implements filename canonicalization and validates that the destination path resides within the intended upload directory.
- Audit the
packages/dbgpt-app/src/dbgpt_app/openapi/api_v1/agentic_data_api.pymodule for improper path concatenation practices. - Deploy webserver logs monitoring to detect POST requests to the
skill_uploadendpoint that contain directory traversal patterns (e.g.,..%2for../). - Implement stricter authentication checks in
dbgpt_serve/utils/auth.pyto ensure only verified users can access administrative API endpoints.
Immediate actions
Patch DB-GPT instance
Monitor/block traffic to skill_upload endpoint
Mitigations
Network segmentation
CVE-2026-80104
Detection coverage 1
Detect CVE-2026-80104 Exploitation - Path Traversal in Skill Upload
criticalDetects exploitation of CVE-2026-80104 via path traversal patterns in the multipart filename during skill uploads to the DB-GPT API.
Detection queries are available on the platform. Get full rules →