v5.8.4 — blackboard.py path-traversal fix (CWE-22)
Arbitrary file read/write via --path in blackboard.py (Description-Behavior Mismatch, 96% confidence)
Network-AI v5.8.4 — blackboard.py path-traversal fix (CWE-22)
Security
Arbitrary file read/write via --path in blackboard.py (Description-Behavior Mismatch, 96% confidence)
The --path CLI argument was forwarded to SharedBlackboard without any boundary check, allowing an agent or operator to read or write arbitrary local files outside the project directory. This contradicts the documented storage boundary and could be abused to overwrite sensitive project files or operate on attacker-chosen state.
Fix: Added a runtime path-traversal check immediately after argument parsing. args.path.resolve() is tested with relative_to(project_root); any path that escapes the project directory causes the script to exit with a clear error message. Symlink traversal is also blocked because resolve() is called before the comparison. The --path help text and script header comment both document this restriction. SKILL.md capabilities.filesystem updated to reflect the enforcement.
Files changed
scripts/blackboard.py, SKILL.md, CHANGELOG.md, package.json, skill.json, openapi.yaml, README.md, and all version-bearing doc files.