T03 · Remote Payload Retrieval and Execution
- Location
SKILL.md:8- Finding
Unverified Remote Installer Executed Directly by the Shell
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, line 8
Vulnerability Type: Remote payload retrieval and execution
Risk Level: HighVulnerable Code Snippet:
markdown Install the public CLI with `curl -sSL https://x402card.org/install | sh`, or use the local runtime in `packages/agent` from a source checkout. Use the public MCP only for discovery because it has no wallet authority.Technical Analysis
The installation command downloads content from an external URL and sends it directly to
sh. The remote response is executed before the user can inspect it, and the command provides no version pinning, checksum validation, or cryptographic signature verification. HTTPS protects the connection in transit but does not establish that the returned script is a reviewed or immutable artifact.The effective installer can change after this Skill has been audited. Compromise of the remote server, hosting account, DNS resolution, or associated release process could therefore turn this instruction into arbitrary command execution. The
-soption also suppresses normalcurlprogress and error output, reducing visibility during installation.This behavior exceeds the minimum privileges needed to document or use the declared API workflow: the remote response receives general shell execution authority under the invoking account. The repository contains no copy of the installer that could be audited and no integrity metadata with which to authenticate it.
Attack Path
- A user or agent follows the installation instruction in
SKILL.md. curlrequests the current response fromhttps://x402card.org/install.- The endpoint or its delivery chain serves a malicious or compromised shell script.
- The pipe passes the response directly to
shwithout inspection or integrity verification. - The script executes with the permissions and environment of the invoking user.
- It can access or alter resou ...[truncated 838 chars]
- A user or agent follows the installation instruction in
- Remediation
View remediation
Remediation Suggestions
- Remove the direct
curl | shinstallation pattern. - Publish the CLI as a versioned, immutable release through a trustworthy package or release channel.
- Pin the documented installation command to a specific version rather than a mutable endpoint.
- Provide a SHA-256 checksum or, preferably, a cryptographic signature whose verification key is distributed through a separate trusted channel.
- Require users to download the artifact first, verify its integrity and signature, and optionally inspect it before execution.
- Avoid requesting administrator privileges unless a documented installation step strictly requires them.
- Include the relevant installer or runtime source in the reviewed repository so its behavior can be audited.
- Document the exact files, commands, network destinations, and permissions used during installation.
A safer conceptual workflow is:
sh curl --fail --show-error --location --output installer.sh \ https://example.invalid/releases/x402card-agent-VERSION/install.sh echo "PINNED_SHA256 installer.sh" | sha256sum --check - less installer.sh sh installer.shThe actual release URL, version, and checksum must come from a trusted, independently verifiable source.
- Remove the direct
