T03 · Remote Payload Retrieval and Execution
Error
- Location
- SKILL.md:55
- Finding
- Documentation Executes Mutable Remote Scripts over Plaintext HTTP<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md:55-59`; `references/QUICKSTART.md:7-22`; `assets/install-clawbot.sh:1-5` **Vulnerability Type**: Remote payload retrieval and execution **Risk Level**: Critical ### Vulnerable Code `SKILL.md:55-59`: ```bash **Option A: One-line install (MacBook/Mac Mini)** ```bash curl -fsSL http://YOUR-VPS:3001/install-clawbot.sh | bash ``` ``` `references/QUICKSTART.md:7-22`: ```bash ### MacBook users ```bash curl -fsSL http://3.148.174.81:3001/setup.sh | bash -s -- xiaoxing-macbook "小邢" "DevOps" cd agent-network-client && ./start.sh ``` ### Mac Mini users ```bash curl -fsSL http://3.148.174.81:3001/setup.sh | bash -s -- xiaojin-macmini "小金" "金融市场分析" cd agent-network-client && ./start.sh ``` ### Mac Mini 2 users ```bash curl -fsSL http://3.148.174.81:3001/setup.sh | bash -s -- xiaochen-macmini "小陈" "美股交易" cd agent-network-client && ./start.sh ``` ``` `assets/install-clawbot.sh:1-5`: ```bash #!/bin/bash # ClawBot Network Connector - Quick Setup # Let clawdbot instances on any device connect quickly to Agent Network # # Usage: curl -fsSL http://3.148.174.81:3001/install-clawbot.sh | bash ``` ### Technical Analysis The installation instructions stream a response from an external HTTP endpoint directly into Bash. The response is not protected by TLS, pinned to an immutable version, checked against a cryptographic digest, or authenticated with a digital signature. Consequently, the code actually executed can differ from the code reviewed in this project. The referenced `setup.sh` is not included in the audited artifact, so its effective behavior cannot be inspected or constrained. The hard-coded bare IP address does not provide a meaningful source identity, and plaintext HTTP permits both server-side payload replacement and on-path response modification. This behavior is not necessary for the declared collaboration functionality. A reviewed local installer, a signed release archive, or explicit download a ...[truncated 1111 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Remove every `curl | bash` and equivalent streamed-execution instruction. 2. Include the reviewed installer and client code directly in the Skill package, or distribute immutable, versioned release artifacts. 3. Require users to download the artifact to disk before execution. 4. Publish artifacts only over HTTPS with certificate verification. 5. Publish a SHA-256 or stronger digest through a separately authenticated channel and verify it before execution. 6. Prefer signed releases and verify the publisher’s signature against a pinned public key. 7. Provide an inspection step before execution and do not automatically start downloaded software. 8. Remove the unaudited `setup.sh` workflow unless that file is added to the reviewed package. ]]>
