T03 · Remote Payload Retrieval and Execution
- Location
SKILL.md:419- Finding
Remote Bun Installer Downloaded and Executed Without Verification
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, line 419
Vulnerability Type: Remote payload retrieval and execution
Risk Level: HighComplete Code Snippet:
markdown | Bun 1.0+ | Runtime | One of two options | `curl -fsSL https://bun.sh/install \| bash` |Technical Analysis
The installation instruction downloads a mutable script from an external URL and passes its response directly to Bash. There is no intermediate review, version pinning, cryptographic checksum validation, or signature verification.
The effective executable payload is therefore not contained in the audited project and can change after the Skill has been reviewed. Although the URL appears to be Bun's official installation endpoint, its integrity and future responses cannot be established from the project contents.
This behavior exceeds the minimum privileges required for the declared news-fetching functionality. The document already supports Node.js as an alternative runtime, so executing a remote installation script is not necessary to perform the task.
Attack Path
- A user or tool-enabled Agent follows the dependency setup instructions.
curlretrieves the current response fromhttps://bun.sh/install.- The response is streamed directly into Bash without inspection or integrity validation.
- If the distribution endpoint, domain, DNS route, TLS trust path, or hosted installer is compromised, attacker-controlled shell commands execute immediately.
- Those commands run with the privileges of the user operating the Agent and can access resources available to that account.
Impact Assessment
Successful exploitation permits arbitrary command execution under the invoking user's identity. Depending on that account's permissions, the payload could read or alter project files, access user-readable credentials, install additional software, modify shell configuration, or establish persistence.
The instruction ...[truncated 237 chars]
- Remediation
View remediation
Remediation Suggestions
- Remove the
curl | bashinstallation instruction. - Prefer the already-supported Node.js runtime when it is installed.
- Direct users to an official, version-specific release artifact rather than a mutable installer endpoint.
- Pin the required Bun version and provide an expected SHA-256 or stronger cryptographic digest.
- Download the artifact to a local file, verify its checksum or publisher signature, and only then execute or install it.
- Avoid automatically installing runtimes through the Agent; require explicit user approval for environment changes.
- Document the expected download host, version, artifact name, and verification procedure.
- Run any required installation in a restricted container or sandbox without access to credentials or unrelated files.
- Remove the
