T09 · Insecure Skill Coding Practices
- Location
SKILL.md:306- Finding
Unscoped force termination of the process owning a selected port
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This OpenClaw troubleshooting skill is purpose-aligned, but its repair instructions can force-stop processes, overwrite configuration, and uninstall skills without the safeguards it claims.
Review this skill carefully before installing. Prefer check-only mode first, manually back up openclaw.json, verify the process name and command line before stopping any PID, and avoid --yes uninstall or fix-all flows unless you have confirmed the exact targets.
SKILL.md:306Unscoped force termination of the process owning a selected port
SKILL.md:339Live configuration is destructively overwritten without backup or atomic replacement
skill.json:5Invalid JSON metadata and inconsistent license declarations
The skill recommends force-killing node.exe processes and any process bound to port 18789, and the repair script also stops processes by PID. Even if intended for OpenClaw recovery, these actions can terminate unrelated workloads, corrupt in-progress work, or disrupt other services when process selection is too broad or port ownership is misidentified.
The fix-config script programmatically rewrites openclaw.json, adding and replacing nested settings including allowedOrigins, trustedProxies, and denyCommands, but does not clearly warn that it will overwrite configuration state. In context, this is risky because operators may run a 'repair' workflow expecting additive checks, while the script silently imposes defaults that may weaken intended custom policy or break existing deployments.
The documentation promises an automatic backup before repair, but the provided fix-config script writes directly to openclaw.json with Set-Content and shows no backup step. This can permanently destroy a working or partially recoverable configuration during a repair attempt, especially when the script also normalizes multiple settings at once.
The notes claim dangerous skill uninstallation requires user confirmation, but the documented remediation uses clawhub uninstall ... --yes, which suppresses confirmation entirely. In a troubleshooting skill, this creates a mismatch between user expectations and actual destructive behavior, increasing the chance of accidental removal of software or data needed for investigation.
The manifest description and user-facing documentation are entirely in Chinese, with no indication that other languages are supported or that the skill is intentionally restricted to a Chinese-speaking audience. Under the stated policy, forcing a specific language without user opt-in can be a natural-language policy issue.