T05 · Unauthorized Access and Privilege Escalation
- Location
scripts/sync.py:181- Finding
Unvalidated State Paths Permit Filesystem Access Outside Synchronization Roots
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This file-sync skill does what it claims, but its bundled sync script can be tricked into reading, copying, or moving files outside the chosen folders.
Review this skill carefully before installing. It is not trying to hide what it does, but it should only be used on folders you fully trust and control; avoid syncing attacker-controlled USB drives or shared folders until path validation and symlink rejection are added.
scripts/sync.py:181Unvalidated State Paths Permit Filesystem Access Outside Synchronization Roots
scripts/sync.py:78Symbolic-Link Following Permits Reads and Writes Outside Synchronization Roots
scripts/sync.py:62Collision-Broken MD5 Is Used for File Integrity and Conflict Decisions
The section says move_to_trash is triggered 'only when both sides delete', but the very code snippet immediately below shows move_to_trash being called when only one side deleted and the other side is unchanged. This is an active contradiction in the file's own behavioral documentation, not merely an omission.
This code file contains user- and maintainer-facing natural-language comments entirely in Chinese, including the behavioral description and sync rules. Under the policy rule, forcing a specific language without opt-in or justification is a locale/language policy concern.