T08 · Insecure Dependencies
- Location
SKILL.md:8- Finding
Mandatory Execution of Unverified External Initialization Scripts
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 8-14
Vulnerability Type: Unverified local dependency execution
Risk Level: Highbash # 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 # Method 3: Manual detection python3 ~/.jvs/.openclaw/workspace/skills/dolphindb-skills/scripts/init_dolphindb_env.pyTechnical Analysis
The skill requires users or agents to source or execute initialization files from a separate
dolphindb-skillsdirectory that is not included in the audited project. Consequently, the contents, version, provenance, integrity, ownership, and permissions of those files cannot be verified from this package.The shell
sourcecommand is particularly sensitive because it executes the referenced file in the current shell rather than an isolated child process. Such a script can modify environment variables, redefine commands or functions, change the working directory, access credentials available to the process, and execute arbitrary commands with the invoking user's permissions. The Python initialization script similarly represents an unaudited execution dependency.The same mandatory procedure is duplicated at lines 29-35, increasing the likelihood that an agent will execute it without validating the referenced files.
Attack Path
- An attacker gains write access to the referenced sibling skill directory, replaces one of the initialization files, or causes an untrusted version of
dolphindb-skillsto be installed at the expected path. - The user or agent follows the mandatory setup instructions.
- The shell sources
dolphin_wrapper.shordolphin_global.sh, or Python executesinit_dolphindb_env.py. - The modified dependency executes attacke ...[truncated 724 chars]
- An attacker gains write access to the referenced sibling skill directory, replaces one of the initialization files, or causes an untrusted version of
- Remediation
View remediation
Remediation Suggestions
- Bundle all required initialization scripts with the skill so they can be reviewed and versioned together.
- Pin the expected dependency version and publish cryptographic hashes for every executable file.
- Verify each file's hash, canonical path, owner, and permissions before execution; reject files writable by untrusted users.
- Avoid
sourcewhere possible. Execute initialization in a restricted subprocess and import only a documented allowlist of resulting environment values. - If sourcing is unavoidable, validate the script first and run the skill under a dedicated least-privileged account.
- Use an explicit trusted installation root rather than resolving dependencies from mutable sibling directories.
- Document the dependency's provenance and provide a secure installation and update procedure.
