T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:8
- Finding
- Mandatory Execution of Unpinned External Skill Dependencies<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, lines 8–14, 33–42 **Vulnerability Type**: Unpinned third-party dependency and unaudited shell-script execution **Risk Level**: Medium ### Vulnerable Code ```bash # Method 1: Run inside the skill directory cd ~/.jvs/.openclaw/workspace/skills/<skill-name> source ../dolphindb-skills/scripts/dolphin_wrapper.sh # Method 2: Run from any location source ~/.jvs/.openclaw/workspace/skills/dolphindb-skills/scripts/dolphin_global.sh ``` ```bash clawhub install dolphindb-basic ``` ```bash # Load the environment detector source ../dolphindb-skills/scripts/load_dolphindb_env.sh ``` ### Technical Analysis The Skill requires users or agents to execute shell scripts supplied by a separate `dolphindb-skills` installation and to install `dolphindb-basic` from ClawHub. Neither dependency is pinned to an immutable version, commit, digest, or cryptographic checksum. The shell `source` command executes a referenced file in the current shell rather than an isolated subprocess. Consequently, those external scripts can execute commands with the invoking user's permissions and can modify environment variables, shell functions, aliases, working directories, or other process state. Because the referenced files are outside this audited project, their behavior and integrity cannot be verified from the submitted artifact. No evidence establishes that the current external dependencies are malicious. The vulnerability is the unaudited and mutable supply-chain trust boundary created by mandatory initialization. ### Attack Path 1. An attacker compromises the external Skill distribution, its publisher account, an update channel, or the locally installed `dolphindb-skills` directory. 2. The attacker modifies one of the referenced initialization scripts or causes an unsafe version of the unpinned dependency to be installed. 3. A user or agent follows the mandatory setup instructions in `SKILL.md`. 4. The shell evaluates the ...[truncated 611 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Pin `dolphindb-basic` and `dolphindb-skills` to immutable, reviewed versions or content digests. 2. Verify package signatures and cryptographic checksums before installation or execution. 3. Bundle the required initialization logic in the audited package where licensing and maintenance requirements permit. 4. Avoid sourcing mutable third-party scripts into the current shell. Prefer a constrained subprocess with an explicit environment and minimal filesystem permissions. 5. Validate ownership and permissions of every referenced script and reject files writable by untrusted users. 6. Document the exact trusted publisher, repository, version, and expected hashes. 7. Review dependency updates before changing the pinned version. 8. Run initialization and package installation under a least-privileged account in a sandbox or container. ]]>
