T03 · Remote Payload Retrieval and Execution
- Location
SKILL.md:28- Finding
Unverified Remote Installation Scripts Are Downloaded and Executed Directly
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 28–33
Vulnerability Type: Remote payload retrieval and execution
Risk Level: Criticalbash # macOS /bin/bash -c "$(curl -fsSL https://dp-public.oss-cn-beijing.aliyuncs.com/bohrctl/1.0.0/install_bohr_mac_curl.sh)" # Linux /bin/bash -c "$(curl -fsSL https://dp-public.oss-cn-beijing.aliyuncs.com/bohrctl/1.0.0/install_bohr_linux_curl.sh)"Technical Analysis
The installation instructions retrieve shell scripts from an external object-storage URL and pass the returned content directly to Bash. The downloaded content is not verified using a cryptographic signature, pinned digest, or published checksum before execution.
Although HTTPS and version-specific paths provide some protection, they do not guarantee that the server-side content remains immutable after the Skill has been reviewed. Anyone who compromises the hosting account, hosted object, DNS resolution, or relevant TLS trust infrastructure could alter the effective payload without modifying the audited Skill package.
This behavior exceeds the minimum privileges necessary for project management. Installing a prerequisite may be legitimate, but executing mutable network content without verification is not required to provide that functionality.
Attack Path
- An attacker compromises the object-storage account, distribution infrastructure, or another component capable of changing the installer response.
- The attacker replaces one of the installation scripts with a malicious shell payload.
- A user or agent follows the documented prerequisite instructions.
curlretrieves the modified script.- Command substitution passes the response directly to
/bin/bash. - The malicious script executes with all privileges and data access available to the invoking user.
Impact Assessment
Successful exploitation permits arbitrary command execution under the invoking user's account ...[truncated 316 chars]
- Remediation
View remediation
Remediation Suggestions
- Do not pipe or interpolate remote responses directly into a command interpreter.
- Distribute the CLI through a trusted package manager or a signed, version-pinned release artifact.
- Download the artifact to a local file before execution.
- Publish and verify a SHA-256 digest obtained through an independently trusted channel.
- Prefer cryptographic signature verification with a pinned vendor public key.
- Fail closed if checksum or signature verification fails.
- Present the downloaded script for inspection before execution when a package-based installation is unavailable.
- Run installation with the lowest necessary privileges and avoid requesting administrative access unless strictly required.
- Ensure release artifacts are immutable and protect the hosting account with strong access controls, audit logging, and multifactor authentication.
