T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:38
- Finding
- Unpinned Third-Party Package Installation and Build<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md:38-61` **Vulnerability Type**: Unpinned and mutable third-party dependencies **Risk Level**: Medium ### Vulnerable Code ```bash npm install -g one-wallet # or yarn global add one-wallet # or pnpm add -g one-wallet ``` ```bash git clone https://github.com/viyozc/one-wallet.git cd one-wallet yarn install yarn build ./bin/run.js --help ``` ### Technical Analysis The documented installation workflows retrieve and execute mutable third-party content without pinning an audited package version, Git commit, or dependency set. The global package installation commands resolve the package version available from the registry at installation time. The repository workflow clones the current default branch and then runs dependency installation and build operations. Package-manager lifecycle scripts and build scripts can execute code with the privileges of the user running the commands. No malicious package or repository content was found in the audited project itself. The risk arises because the skill directs an agent or user to trust external content whose effective implementation can change after this skill has been reviewed. ### Attack Path 1. An attacker compromises the package registry entry, upstream repository, maintainer account, release process, or a transitive dependency. 2. The attacker publishes a modified package, changes the repository's default branch, or introduces a malicious dependency or lifecycle script. 3. A user or agent follows the skill instructions and runs the unpinned installation or build command. 4. The package manager retrieves the attacker-controlled version and executes installation, lifecycle, or build scripts. 5. The malicious code executes with the installing user's privileges and may access files, environment variables, wallet configuration, or credentials available to that account. ### Impact Assessment Successful exploitation could provide arbitrary code execution u ...[truncated 358 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions - Pin `one-wallet` to a reviewed, immutable version rather than installing the latest available release. - For source installations, check out a specific reviewed commit hash or signed release tag before installing dependencies or building. - Verify package integrity, provenance, and release signatures where supported. - Use a committed lockfile and an immutable or frozen-lockfile installation mode. - Review package lifecycle and build scripts before execution. - Prefer a local, isolated installation over a global installation. - Run installation and wallet tooling in a dedicated, least-privileged environment that does not expose unrelated credentials or wallet secrets. - Periodically reassess the pinned version and its transitive dependencies before upgrading. ]]>
