GHSA-vmwq-8g8c-jm79High

OpenChatBI has a Path Traversal Vulnerability in save_report Tool

Published
March 2, 2026
Last Modified
March 6, 2026

🔗 CVE IDs covered (1)

📋 Description

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 products1

  • pip/openchatbi:<= 0.2.1

🔗 References (6)