Description
Vibe-Trading before 0.1.10 builds the proposal file path by joining a caller-supplied proposal identifier onto the broker proposals directory without sanitization (agent/src/live/mandate/commit.py). A proposal identifier containing path traversal sequences causes the application to load an attacker-controlled JSON file as an authoritative live trading mandate. Combined with the file upload endpoint, an admitted caller can write a JSON file to a known location and traverse to it, and because the ceilings validation is skipped when ceilings are absent, the attacker fully controls the committed mandate.
Metrics
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:H/A:HWeakness enumeration
Affected software
| Vendor | Product | Versions |
|---|---|---|
| HKUDS | Vibe-Trading | < 0.1.10 |
References
- https://github.com/HKUDS/Vibe-Trading/commit/0ab701302f90e701c9dc558a898a217a376610c3
- https://github.com/HKUDS/Vibe-Trading/pull/256
- https://github.com/HKUDS/Vibe-Trading/releases/tag/v0.1.10
- https://www.vulncheck.com/advisories/vibe-trading-path-traversal-in-proposal-identifier-allows-forging-live-trading-mandates
- https://github.com/HKUDS/Vibe-Trading/pull/256
Timeline
- Published
- Jun 30, 2026
- Last modified
- Oct 25, 2026
- NVD status
- Deferred