T08 · Insecure Dependencies
- Location
SKILL.md:124- Finding
Unpinned Global Dependency and Unverifiable External Skill Execution
- Content
View full analysis
/main.ts [options] ``` ### Technical Analysis The instructions install Bun globally through npm without specifying an exact version or validating package integrity. Dependency resolution can therefore produce a different package version over time. A global installation also has a broader effect on the user's environment than a project-local, locked dependency. The instructions subsequently execute TypeScript from `~/.openclaw/skills/baoyu-skills`, but that implementation is not included in the audited artifact. Consequently, the behavior, integrity, and provenance of the code users are directed to execute cannot be verified from this project. The artifact does not itself retrieve or install the external skill source, so remote payload retrieval is not confirmed. The identified risk is the unsafe, unpinned dependency and unverifiable execution boundary. ### Attack Path 1. A user follows the documented setup instructions. 2. `npm install -g bun` resolves the package without a pinned version or recorded integrity value. 3. npm installs the currently resolved package globally and may execute package installation logic with the invoking user's permissions. 4. The user changes to a separately installed skill directory that was not part of this audit. 5. Bun executes the selected TypeScript entry point with the user's filesystem, network, environment-variable, and process privileges. 6. If either dependency or the external skill installation has been compromised or replaced, its code can act with ...[truncated 530 chars]- Remediation
View remediation
