T03 · Remote Payload Retrieval and Execution
Error
- Location
- README.md:40
- Finding
- Mutable Remote Script Is Downloaded and Executed Without Verification<![CDATA[ ## Vulnerability Details **File Location**: `README.md:40-43` **Vulnerability Type**: `T03: Remote Payload Retrieval and Execution` **Risk Level**: High ### Vulnerable Code ```bash **One-liner (curl):** ```bash curl -fsSL https://app.twzrd.xyz/raw/wzrd-trade.sh | bash ``` ``` ### Technical Analysis The documented quick-start procedure pipes a remotely downloaded script directly into `bash`. The script is not included in the audited project, pinned to an immutable version, or protected by a published checksum or cryptographic signature. Consequently, the code executed by users can differ from the code available at audit time. TLS protects the connection in transit but does not protect users if the remote application, hosting account, DNS configuration, or deployment pipeline is compromised. The use of `curl -fsSL` also suppresses normal output and follows redirects, while piping directly to `bash` prevents users from reviewing the effective payload before execution. Executing an installer is not inherently unnecessary for setup, but dynamically executing an unverified and mutable remote payload exceeds the minimum privileges required to install the four documented Python dependencies and run the local agent. ### Attack Path 1. An attacker compromises `app.twzrd.xyz`, its deployment infrastructure, DNS, or the endpoint serving `/raw/wzrd-trade.sh`. 2. The attacker replaces the installer or redirects the request to a malicious payload. 3. A user follows the README quick-start command. 4. `curl` retrieves the attacker-controlled content and sends it directly to `bash`. 5. The payload executes with all permissions of the invoking user. 6. The payload can inspect local files and environment variables, including wallet material configured for this project, modify the user account, or install additional malicious software. ### Impact Assessment The remote payload obtains arbitrary code execution with the privileges of the user running the command. Po ...[truncated 679 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Remove the `curl | bash` installation command. 2. Include the installer in the repository so it can be audited alongside the Skill. 3. Publish installers only through versioned, immutable releases. 4. Provide a detached cryptographic signature and SHA-256 checksum for each release. 5. Require users to download and verify the installer before execution, for example: ```bash curl -fSLO https://example.invalid/releases/v0.5.0/wzrd-trade.sh curl -fSLO https://example.invalid/releases/v0.5.0/SHA256SUMS sha256sum --check SHA256SUMS less wzrd-trade.sh bash wzrd-trade.sh ``` 6. Document manual installation as the preferred path. 7. Explicitly warn users never to run the installer as root. 8. Ensure the installer does not read or transmit wallet private keys and operates only within a dedicated virtual environment. ]]>
