T09 · Insecure Skill Coding Practices
- Location
clawbridge.js:12- Finding
Arbitrary File Write Through Path Traversal
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill is a real Godot project generator, but its CLI has unsafe file-path and shell-command handling that users should review before installing.
Review this skill before installing in a normal development environment. Use it only in a disposable or explicitly approved workspace, avoid untrusted project paths and generation arguments, and do not run clawbridge open from untrusted directories until the shell invocation and path validation are fixed. I found no evidence of exfiltration or hidden persistence, but the local command and file-write risks are material.
clawbridge.js:12Arbitrary File Write Through Path Traversal
clawbridge.js:727Shell Command Injection Through the Current Working Directory
clawbridge.js:29Godot Script and Resource Injection Through Unescaped Generator Inputs
The code generally aligns with the broad category of a Godot project generator CLI, but the declared description significantly overstates the implemented scope and capability. The implementation supports project creation, scenes, scripts, components, UI templates, simple level editing, placeholder assets, basic material/animation generation, object insertion, opening Godot, and creating export preset config plus instructions. However, it does not substantiate the '80+ CLI commands' claim, and some listed areas are only partially implemented or inconsistent. For example, 3D support is weak: project initialization always writes a 2D main scene and does not create a true 3D project structure despite a --3d flag. Export is described as if the tool can export to many platforms, but the code does not perform exports itself; it only prints the Godot command and writes export_presets.cfg. This is a material description-to-behavior mismatch due to overstated primary capabilities, even though the code is clearly related to Godot project generation.
The open command builds a shell command with execSync('godot --path "' + PROJECT_DIR + '"'), which invokes a shell using a path derived from the current working directory. If the CLI is run from a directory whose path contains shell metacharacters such as quotes or command separators, this can lead to command injection and execution of unintended OS commands under the user's privileges.
The skill describes project generation and a save system but does not clearly warn users that it writes files to disk, which can cause unintended filesystem changes when used in automated or privileged environments. In an agentic workflow, undisclosed file creation/modification increases the risk of accidental overwrites, workspace pollution, or persistence artifacts.
Detected: suspicious.dangerous_exec