T08 · Insecure Dependencies
- Location
scripts/clawhub_helper.sh:26- Finding
Unpinned Remote Skill Installation Without Integrity or Trust Validation
- Content
View full analysis
Vulnerability Details
File Location:
scripts/clawhub_helper.sh, lines 26-38
Vulnerability Type: Supply-chain exposure through unverified remote Skill installation
Risk Level: Mediumbash echo "Searching for $SLUG..." clawhub search "$SLUG" if [ -z "$VERSION" ]; then echo "Installing latest version of $SLUG..." clawhub install "$SLUG" else echo "Installing $SLUG version $VERSION..." clawhub install "$SLUG" --version "$VERSION" fiTechnical Analysis
The installation workflow permits a remote Skill to be installed without an explicit version. In this case,
clawhub install "$SLUG"resolves whichever release is considered latest at execution time. The script does not verify an expected digest, cryptographic signature, publisher identity, trusted registry source, or approved package allowlist.The preceding
clawhub search "$SLUG"operation is informational rather than a security control. Its output is not parsed or validated, and the script does not terminate if the search command fails because no explicit status check or fail-fast shell option is present. Providing a version reduces unintended upgrades but still does not authenticate the downloaded content or establish its integrity.Consequently, the installed artifact can differ from the artifact previously reviewed by the user. This creates a supply-chain trust gap if the registry, publisher account, package namespace, or selected release is compromised.
Attack Path
- An attacker compromises the publisher account or registry entry associated with a requested slug, takes over an abandoned namespace, or publishes a malicious latest release under a deceptively trusted slug.
- A user invokes
clawhub_helper.sh install <slug>without supplying a version. - The wrapper performs a search but does not validate the result or stop on search failure.
...[truncated 1051 chars]
- Remediation
View remediation
Remediation Suggestions
- Require callers to provide an explicit, immutable version rather than installing the latest release by default.
- Resolve the selected release to a cryptographic digest and verify that digest before installation.
- Require valid package signatures from approved publisher identities and reject unsigned or incorrectly signed artifacts.
- Restrict installation to explicitly trusted registries and, where practical, maintain an allowlist of approved Skill slugs and publishers.
- Validate search or metadata results before installation, including the canonical slug, publisher, version, and expected source.
- Abort immediately when discovery or verification fails. Enable fail-fast behavior or explicitly check each command's exit status.
- Install newly retrieved Skills into a quarantine or staging location, inspect their instructions and scripts, and only promote them after policy checks pass.
- Record the resolved version, digest, publisher identity, and registry source in an auditable lock file so later installations reproduce the reviewed artifact.
