CVE-2024-10829 Overview
CVE-2024-10829 is a Denial of Service (DoS) vulnerability in eosphoros-ai/db-gpt version 0.6.0. The flaw exists in the multipart request boundary processing mechanism. The server fails to handle excessive characters appended to the end of multipart boundaries, triggering an infinite loop [CWE-835]. Unauthenticated attackers can send crafted multipart/form-data requests to exhaust server resources. The condition affects every endpoint that processes multipart requests, causing complete service unavailability for all users.
Critical Impact
An unauthenticated remote attacker can trigger an infinite loop through malformed multipart boundaries, producing complete denial of service across all db-gpt endpoints.
Affected Products
- eosphoros-ai/db-gpt version 0.6.0
- All endpoints accepting multipart/form-data requests
- Deployments exposing the db-gpt HTTP interface to untrusted networks
Discovery Timeline
- 2025-03-20 - CVE-2024-10829 published to NVD
- 2026-06-17 - Last updated in NVD database
Technical Details for CVE-2024-10829
Vulnerability Analysis
The vulnerability resides in the multipart parser used by db-gpt to process multipart/form-data HTTP requests. When a client submits a request, the parser reads the boundary parameter from the Content-Type header and uses it to delimit parts of the request body. The parser does not correctly bound its scan when excessive characters are appended after the boundary delimiter. This condition satisfies [CWE-835], a loop with an unreachable exit condition.
Because the vulnerability is reachable pre-authentication and consumes CPU indefinitely on a single request, a small number of concurrent requests exhausts worker processes. The service becomes unresponsive to legitimate traffic. All functional endpoints that accept multipart uploads share the same parser, so attackers do not need to locate a specific vulnerable route.
Root Cause
The parser lacks input length validation and termination checks on trailing boundary characters. When the boundary payload is padded beyond expected limits, the loop that scans for a valid end sequence never converges. Refer to the Huntr Vulnerability Bounty report for the disclosure details.
Attack Vector
Exploitation requires only network access to the db-gpt HTTP interface. An attacker crafts a POST request with Content-Type: multipart/form-data; boundary=<padded_boundary> where the boundary token includes excessive trailing characters. On receipt, the server enters an infinite loop while parsing the request body. Repeating this request across worker threads results in full resource exhaustion. No credentials or user interaction are required.
Detection Methods for CVE-2024-10829
Indicators of Compromise
- HTTP POST requests with Content-Type: multipart/form-data containing abnormally long boundary parameter values
- Sustained high CPU utilization on db-gpt worker processes without corresponding response traffic
- Timeouts and 5xx errors from db-gpt endpoints during periods of low legitimate load
- Multiple concurrent requests from a single source IP targeting endpoints that accept file uploads
Detection Strategies
- Inspect web server and reverse proxy access logs for POST requests with oversized Content-Type header values
- Deploy Web Application Firewall (WAF) rules that reject multipart/form-data boundary parameters exceeding RFC-recommended lengths
- Correlate process CPU spikes on db-gpt hosts with incoming HTTP request patterns using behavioral analytics
- Use SentinelOne Singularity Endpoint behavioral AI to flag anomalous CPU consumption tied to the db-gpt process on Linux hosts
Monitoring Recommendations
- Alert on sustained CPU utilization above 90% for db-gpt worker processes lasting more than 60 seconds
- Monitor HTTP request duration percentiles and flag P99 latency regressions on multipart endpoints
- Track connection counts from individual source IPs to db-gpt services and rate-limit outliers
- Ingest reverse proxy and application logs into a SIEM such as Singularity Data Lake for real-time correlation
How to Mitigate CVE-2024-10829
Immediate Actions Required
- Restrict network exposure of db-gpt version 0.6.0 to trusted internal networks only
- Place the application behind a reverse proxy or WAF that validates Content-Type header length and structure
- Enforce request rate limits and per-connection CPU timeouts at the proxy layer
- Audit exposed db-gpt instances for unauthenticated public access
Patch Information
At the time of publication, no vendor patch is referenced in the NVD entry for CVE-2024-10829. Consult the Huntr Vulnerability Bounty report and the upstream eosphoros-ai/db-gpt repository for remediation status. Upgrade to a fixed release when the maintainers publish one.
Workarounds
- Deploy a reverse proxy that enforces a maximum Content-Type header size and rejects malformed multipart boundaries before requests reach db-gpt
- Configure request body size and processing time limits in the fronting proxy (for example, client_max_body_size and client_body_timeout in nginx)
- Disable or firewall multipart-accepting endpoints when file upload functionality is not required
- Run db-gpt behind authentication so unauthenticated attackers cannot reach parser code paths
# Configuration example: nginx reverse proxy hardening for db-gpt
http {
client_max_body_size 10m;
client_body_timeout 10s;
client_header_timeout 10s;
limit_req_zone $binary_remote_addr zone=dbgpt:10m rate=10r/s;
server {
listen 443 ssl;
server_name dbgpt.example.com;
location / {
limit_req zone=dbgpt burst=20 nodelay;
# Reject Content-Type headers longer than 256 bytes
if ($http_content_type ~* ".{256,}") {
return 400;
}
proxy_pass http://127.0.0.1:5000;
proxy_read_timeout 15s;
}
}
}
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

