T09 · Insecure Skill Coding Practices
- Location
clawhub.yaml:8- Finding
Misleading documentation-only metadata conceals executable and network-capable implementation
- Content
View full analysis
dict: proc = subprocess.run( ["python3", str(BASE / script)], input=json.dumps(payload).encode(), stdout=subprocess.PIPE, stderr=subprocess.PIPE, ) ``` The installation entry point also attempts to execute Python: ```bash SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" exec python3 "$SCRIPT_DIR/lib/run.py" "$@" ``` ### Technical Analysis The manifest and skill documentation explicitly state that the artifact is documentation-only and contains no executable implementation. In reality, the package ships multiple executable Python and shell files, including a root workflow that performs subprocess execution, network requests, credential reads, web-content retrieval, and LLM calls. This discrepancy prevents users and automated reviewers from making an informed privilege and data-processing decision. It also creates operational ambiguity because the documented and installed entry points are inconsistent: - `SKILL.md` refers to `scripts/run.py`, which does not exist. - `install.sh` refers to `lib/run.py`, which does not exist. - The actual launcher is root-level `run.py`. The executable ...[truncated 1396 chars]- Remediation
View remediation
