提交 #857620: zhayujie CowAgent 2.1.1 Server-Side Request Forgery (CWE-918)信息

标题zhayujie CowAgent 2.1.1 Server-Side Request Forgery (CWE-918)
描述# Technical Details A Server-Side Request Forgery exists in the `WebFetch.execute` method in `agent/tools/web_fetch/web_fetch.py` of CowAgent. The application fails to validate the resolved destination host or IP for attacker-influenced `http` and `https` URLs. It only enforces a scheme check, then performs `requests.get(..., allow_redirects=True)`, which allows access to special-use, loopback, private, or internal HTTP destinations. # Vulnerable Code File: agent/tools/web_fetch/web_fetch.py Method: WebFetch.execute Why: The code checks `parsed.scheme` but does not block dangerous destinations before calling `requests.get` in both the webpage fetch path and document download path. # Reproduction 1. Download the integration PoC `verification_test.py` and the control script `control-blocked-scheme.py` from the issue-linked gists. 2. From the repository root, run `python3 verification_test.py`. 3. Observe the PoC reports `DEFECT-CONFIRMED-WITH-LIMITATIONS` and logs an outbound request toward `http://x.x.x.x:18080/special-use`; then run `python3 control-blocked-scheme.py` and observe that `file:///etc/passwd` is rejected only because of the scheme check. # Impact - An attacker who can influence tool arguments can force server-side HTTP requests to internal or special-use destinations. - This can expose internal services, metadata-style endpoints, development interfaces, and redirect-based pivots reachable from the CowAgent host.
来源⚠️ https://github.com/zhayujie/CowAgent/issues/2889
用户
 Eric-x (UID 94869)
提交2026-06-13 05時05分 (1 月前)
管理2026-07-18 04時37分 (1 month later)
状态已接受
VulDB条目380009 [zhayujie CowAgent 直到 2.1.1 web_fetch.py WebFetch.execute url 权限提升]
积分20

Interested in the pricing of exploits?

See the underground prices here!