T08 · Insecure Dependencies
- Location
AGENT_INSTALL.md:18- Finding
Unpinned Executable Dependencies and Mutable Global Skill Installation
- Content
View full analysis
Vulnerability Details
File Location:
AGENT_INSTALL.md, lines 18–19, 54–69, and 78–85
Vulnerability Type: Unpinned third-party executable dependencies and mutable remote installation
Risk Level: HighComplete Code Snippet
markdown Before running install commands, ask the user for permission to: - Run `npm install -g @codia-ai/codia-design-cli`. - Run `npx -y skills add https://github.com/codia-ai/codia-design-skills.git -g -y` to install the skill globally.bash npm install -g @codia-ai/codia-design-cli codia-design --helpbash npx -y @codia-ai/codia-design-cli --helpbash npx -y skills add codia-ai/codia-design-skills -g -ybash npx -y skills add https://github.com/codia-ai/codia-design-skills.git -g -yEquivalent unpinned global CLI installation instructions also occur in
SKILL.md:29–33and repeatedly in child skills, includingskills/codia-design/SKILL.md:44–51.Technical Analysis
The instructions execute npm packages and install agent instructions from a mutable Git repository without pinning an exact npm version, repository commit, or verified integrity digest. Consequently, the code executed during installation can differ from the code reviewed during this audit.
npm install -ggives package installation scripts and runtime code the permissions of the agent's operating-system account while modifying a global package location. Similarly,npx -yautomatically resolves and executes a package without an interactive approval step. Theskillspackage itself is also unpinned, and it installs content from the current state of a remote repository into global agent skill directories.GitHub is a conventional public code host rather than a pastebin, and the documentation asks for user permission before installation. These safeguards reduce accidental execution but do not establish artifact integrity or prevent a later supply-chain compromise.
Attack Path
- An attacker compromises ...[truncated 1312 chars]
- Remediation
View remediation
Remediation Suggestions
-
Pin the runtime CLI to a reviewed exact version:
bash npm install -g @codia-ai/codia-design-cli@0.1.4Replace the example version with the independently reviewed release.
-
Pin the Git repository to a full commit SHA rather than installing the mutable default branch.
-
Pin the
skillsinstaller package itself to an exact reviewed version instead of invoking an unversionednpx skills. -
Verify npm provenance, publisher identity, and package integrity before installation. Publish expected package metadata or integrity hashes through a trusted channel.
-
Prefer a project-local dependency with a lockfile over global installation. Run it with restricted filesystem and network permissions where supported.
-
Remove
-yfrom security-sensitivenpxcommands so package resolution and execution are not silently approved. -
Download and inspect remote skill files before activating them. Display the resolved commit and changed files to the user.
-
Disable or review npm lifecycle scripts where practical, and perform installation in a sandbox that does not expose unrelated credentials or files.
-
