T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:59
- Finding
- Execution of an Unpinned and Unaudited External Runner## Vulnerability Details **File Location**: `SKILL.md`, lines 59-78 **Vulnerability Type**: Unpinned external dependency and supply-chain exposure **Risk Level**: Medium The relevant instructions state that an installer should obtain a runner from an external repository and subsequently execute that runner: ```bash # The document identifies these mutable runner sources: # https://github.com/sensedeal/cue-skills # https://gitee.com/sensedeal/cue-skills python3 ~/.cue/cue-skills/cue-research/scripts/research_run.py \ --query "Target region policy opportunity brief: policy releases, investment developments, compliance leads, prospect list" \ --template-id template_30MSWO \ --output ~/cue-reports/$(date +%Y-%m-%d-%H%M)-regional-policy-brief.md ``` ### Technical Analysis The project does not contain the referenced installer or runner. The installation code block is empty, while the documentation points users to mutable GitHub and Gitee repositories without specifying an immutable commit, release digest, checksum, or signature. Consequently, the effective executable code is outside the reviewed artifact. A repository compromise, malicious update, account takeover, or unsafe installation process could alter the runner after this Skill has been reviewed. Executing the runner with `python3` grants it the permissions of the invoking user. This is an insecure dependency rather than a confirmed malicious payload: the audited file does not itself download or execute a response through `curl | bash`, and no malicious runner code was available in the project. ### Attack Path 1. An attacker compromises or gains publishing access to one of the referenced runner repositories or its distribution path. 2. The attacker modifies the runner or installer while preserving the expected filename and command-line interface. 3. A user installs or updates the runner without verifying an immutable revision or cryptographic digest. 4. ...[truncated 824 chars]
- Remediation
- ## Remediation Suggestions 1. Bundle the complete runner and installer in the Skill so they can be reviewed with the documentation. 2. If external distribution is necessary, pin an immutable commit or version and publish a verified SHA-256 digest or cryptographic signature. 3. Provide an explicit installation command that checks the digest before executing any downloaded content. 4. Never use a remote-script-to-shell pipeline such as `curl URL | bash`. 5. Run the dependency with ordinary user privileges and, where practical, isolate it in a container or sandbox with access limited to the required output directory and Cue endpoint. 6. Restrict the runner's access to the API credential and avoid exposing unrelated environment variables or files. 7. Document the repository ownership, release process, update policy, and incident-response procedure.
