T08 · Insecure Dependencies
- Location
SKILL.md:6- Finding
Unpinned Third-Party Go Dependency
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 6–12
Vulnerability Type: Unpinned executable dependency
Risk Level: MediumVulnerable Code
yaml metadata: {"clawdbot":{"emoji":"📰","requires":{"bins":["blogwatcher"]},"install":[{"id":"go","kind":"go","module":"github.com/Hyaxia/blogwatcher/cmd/blogwatcher@latest","bins":["blogwatcher"],"label":"Install blogwatcher (go)"}]}}sh go install github.com/Hyaxia/blogwatcher/cmd/blogwatcher@latestTechnical Analysis
The installation metadata and documentation instruct users to install the third-party
blogwatcherexecutable using the mutable@latestversion selector. This causes Go to resolve and compile whichever upstream release is considered current at installation time, rather than a version that was reviewed alongside this skill.The dependency's source code is not included in the audited project, which contains only
SKILL.mdand_meta.json. Consequently, the effective executable payload can change after this skill has been reviewed. If the upstream repository, maintainer account, module publication process, or a future release is compromised, the installation command could retrieve and build attacker-controlled code.Attack Path
- An attacker compromises the upstream repository, a maintainer account, or its release process.
- The attacker publishes a malicious version that becomes the version resolved by
@latest. - A user follows the skill's installation instructions or invokes its installation metadata.
- Go downloads and compiles the compromised module.
- The resulting
blogwatcherbinary executes attacker-controlled behavior when the user runs it.
Exploitation depends on compromise or malicious modification of the external dependency; no evidence that the currently referenced upstream project is malicious was present in the audited artifact.
Impact Assessment
A compromised dependency could ex ...[truncated 491 chars]
- Remediation
View remediation
Remediation Suggestions
- Replace
@latestin both the installation metadata and documentation with a specific reviewed release, for example:sh go install github.com/Hyaxia/blogwatcher/cmd/blogwatcher@vX.Y.Z - Review the source code of the selected release before publishing the updated skill.
- Record and verify the expected module checksum through Go's module checksum mechanisms and retain a reviewed dependency manifest where practical.
- Prefer cryptographically signed releases or verifiable build provenance when the upstream project provides them.
- Introduce dependency update automation that opens explicit version-change reviews rather than silently resolving the newest release.
- Re-audit the dependency before changing the pinned version.
- Replace
