T08 · Insecure Dependencies
- Location
SKILL.md:15- Finding
Unpinned Third-Party CLI Installation Creates a Supply-Chain Risk
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:15-18,references/setup.md:37-56
Vulnerability Type: Unpinned and insufficiently verified third-party dependencies
Risk Level: MediumVulnerable Code
SKILL.md:15-18yaml install: - kind: node package: "@eat-pray-ai/yutu" bins: [yutu]references/setup.md:37-56bash ```bash # Node.js (all platforms) npm i -g @eat-pray-ai/yutu # macOS brew install yutu # Linux brew install yutu # Windows winget install yutu # Gopher go install github.com/eat-pray-ai/yutu@latestTechnical Analysis
The skill directs users and compatible agent runtimes to install the external
yutuCLI without pinning an audited version, immutable commit, package digest, or release checksum. The Go installation explicitly uses the mutable@latestreference, while the npm, Homebrew, and Winget instructions similarly resolve whatever version is current when installation occurs.The commands also perform global or system-level installation. Consequently, the code reviewed during the skill audit is not necessarily the code later executed by users. Although no evidence shows that the referenced package is currently malicious, compromise of a package registry account, upstream repository, release pipeline, or package source could replace the effective executable after this skill has been reviewed.
Attack Path
- An attacker compromises an upstream package account, repository, build pipeline, or distribution source used for
yutu. - The attacker publishes a malicious release under the expected package or application identity.
- A user or agent follows one of the unpinned installation commands.
- The package manager resolves and globally installs the attacker-controlled release.
- When
yutuis installed or invoked, malicious package lifecycle logic or executable code runs with the installing user's p ...[truncated 773 chars]
- An attacker compromises an upstream package account, repository, build pipeline, or distribution source used for
- Remediation
View remediation
Remediation Suggestions
- Pin
@eat-pray-ai/yututo a specific audited version rather than allowing the package manager to resolve the latest release. - Replace
github.com/eat-pray-ai/yutu@latestwith an immutable version or audited commit hash. - Identify the expected Homebrew tap, Winget publisher, package identifier, and official distribution source explicitly.
- Publish and verify SHA-256 checksums or cryptographic signatures for downloaded binaries.
- Use package-manager lock or integrity metadata where supported.
- Prefer local, isolated installation over global installation when operationally possible.
- Document a trusted upgrade process that requires review before changing the pinned release.
- Run the CLI with only the filesystem and credential access required for the requested operation.
- Pin
