CVE-2026-28795
OpenChatBI has a Path Traversal Vulnerability in save_report Tool
Impact
### Impact The `save_report` tool in `openchatbi/tool/save_report.py` suffers from a critical path traversal vulnerability due to insufficient input sanitization of the `file_format` parameter. The function only removes leading dots of `file_format` using `file_format.lstrip(".")` but allows path traversal sequences like `/../../` to pass through unchanged. When the filename is constructed via string concatenation in f"{timestamp}_{clean_title}.{file_format}" malicious path sequences are preserved, enabling attackers to write files outside the designated report directory. An attacker can manipulate the LLM to call the tool with a specific `file_format` to overwrite critical system files like `__init__.py`, potentially leading to remote code execution. ### Patches - Affected versions: <=0.2.1 - Patched versions: 0.2.2 (includes fix from PR #12: https://github.com/zhongyu09/openchatbi/pull/12) ### Workarounds No ### References - Issue #10: https://github.com/zhongyu09/openchatbi/issues/10 - PR #12: https://github.com/zhongyu09/openchatbi/pull/12
Affected packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| pip | openchatbi | <= 0.2.1 | 0.2.2 |
Affected products
| Vendor | Product | Affected versions |
|---|---|---|
| Zhongyu09 | Openchatbi | before 0.2.2 |
Weakness classification
References
- NVD record
- CVE.org record
- GitHub advisory
- https://github.com/zhongyu09/openchatbi/commit/372a7e861da5159c3106d64d6f6edf8284db8c75
- https://github.com/zhongyu09/openchatbi/issues/10
- https://github.com/zhongyu09/openchatbi/pull/12
- https://github.com/zhongyu09/openchatbi/security/advisories/GHSA-vmwq-8g8c-jm79
- https://github.com/advisories/GHSA-vmwq-8g8c-jm79
- https://nvd.nist.gov/vuln/detail/CVE-2026-28795