Security Policy & Vulnerability Reporting
TraceForge takes security, defensive safety, and responsible disclosure seriously.
1. Reporting a Security Vulnerability
[!CAUTION] DO NOT report security vulnerabilities via public GitHub issues, pull requests, or public discussions.
Preferred Reporting Method
Submit a confidential vulnerability report via GitHub Private Vulnerability Reporting:
Navigate to the Security tab of the repository at https://github.com/paman7647/TraceForge/security.
Click “Report a vulnerability” to open a private advisory.
What to Include in Your Report
Summary of the vulnerability and its potential impact.
Affected component, module, or CLI subcommand.
Step-by-step reproduction instructions or proof-of-concept (PoC).
Recommended mitigation or defensive patch if available.
2. Defensive Security Architecture
TraceForge implements defensive coding practices throughout its codebase:
Zero Command Injection
All external tool executions in Python use structured argument lists (
subprocess.run(["tool", arg1, arg2])) withshell=False.All shell executions in Bash use structured array expansion (
"${cmd[@]}").
Zero Secret Exposure
No credentials, tokens, or private keys are hardcoded in the codebase.
Application logs strictly avoid printing raw secrets or authorization headers.
CSV Formula Injection Mitigation
Exported spreadsheet cells are sanitized against spreadsheet formula injection (
=,+,-,@).
Path Traversal Defense
Ingested evidence filenames and case identifiers are strictly validated and canonicalized to prevent directory climbing (
../).