Back to skill

Security audit

Skill Publish

Security checks for vulnerabilities and agentic risk

Overview

This skill is a coherent publishing helper that requires sanitization and user approval before public release, with a supply-chain caution around unpinned npx commands.

Before installing or using this skill, make sure you are comfortable publishing the selected content publicly. Review the generated publish folder carefully, confirm sanitization, and prefer running a pinned or preinstalled trusted ClawHub CLI version instead of unversioned npx commands.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
Findings (1)

T08 · Insecure Dependencies

Warning
Location
verify.md:41
Finding
Unpinned ClawHub Package Execution Through npx<![CDATA[ ## Vulnerability Details **File Location**: `verify.md`, lines 41–44 and 51 **Vulnerability Type**: Unpinned third-party package execution **Risk Level**: Medium ### Vulnerable Code ```bash npx clawhub publish <folder> \ --slug "<slug>" \ --name "<name>" \ --version "<version>" ``` ```bash npx clawhub install <slug> --dir /tmp/verify ``` ### Technical Analysis The documented publish and verification procedures execute `clawhub` through `npx` without specifying an exact package version or validating package integrity. If no trusted local installation is available, `npx` may retrieve the package from the configured package registry and execute its lifecycle or command code. Because the package reference is mutable, the code executed at runtime may differ from the version that was previously reviewed. A compromised package release, registry account, registry endpoint, or dependency could therefore introduce arbitrary code into both the publishing and optional post-publish verification workflows. This is a supply-chain weakness rather than evidence that the current `clawhub` package is malicious. ### Attack Path 1. An attacker compromises the `clawhub` package, one of its dependencies, its publishing account, or the package registry used by the environment. 2. The attacker publishes or serves a malicious package version under the expected package name. 3. The user approves publication, causing the agent to invoke `npx clawhub publish ...`; alternatively, the optional installation verification invokes `npx clawhub install ...`. 4. `npx` resolves the unversioned package reference and retrieves the attacker-controlled release when a trusted local copy is unavailable. 5. The downloaded package executes with the privileges and environment of the user running the agent. ### Impact Assessment Successful exploitation could provide arbitrary code execution with the current user's privileges. The malicious package could access files readable by th ...[truncated 394 chars]
Remediation
<![CDATA[ ## Remediation Suggestions 1. Pin the CLI to an exact, reviewed version rather than resolving the latest available release: ```bash npx --yes clawhub@<reviewed-exact-version> publish <folder> \ --slug "<slug>" \ --name "<name>" \ --version "<version>" ``` 2. Apply the same version pin to post-publish verification: ```bash npx --yes clawhub@<reviewed-exact-version> install <slug> --dir /tmp/verify ``` 3. Prefer a preinstalled, trusted CLI whose version and source are validated before execution. Abort if its version differs from the approved version. 4. Use a lockfile and registry integrity metadata where package installation is required. Configure a trusted registry explicitly and verify package provenance or signatures when supported. 5. Run the publishing process in a restricted environment with minimal filesystem access, minimal environment variables, and credentials scoped only to the required publication operation. 6. Review version updates before changing the pin, including the CLI package, lifecycle scripts, and transitive dependencies. ]]>
Vulnerability Patterns
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (2)

Rp1

Medium
Category
MCP Rug Pull
Confidence
95% confidence
Finding
The skill instructs users to run `npx clawhub publish` without pinning an exact package version. Because `npx` resolves and executes the latest available package by default, a compromised upstream release or unexpected breaking change could cause arbitrary code execution or unsafe publishing behavior on the user's system.

Rp1

Medium
Category
MCP Rug Pull
Confidence
94% confidence
Finding
The optional verification step uses `npx clawhub install` without an explicit version, which again causes execution of whatever version `npx` resolves at runtime. An attacker who compromises the package or a malicious new release could execute code during the install/verification step, undermining the safety checks the skill is supposed to provide.

Static analysis

No suspicious patterns detected.