T03 · Remote Payload Retrieval and Execution
- Location
skills/autonomous-loops/SKILL.md:230- Finding
Mutable Remote Installation Script Is Executed Directly by Bash
- Content
View full analysis
Vulnerability Details
File Location:
skills/autonomous-loops/SKILL.md:230-235
Vulnerability Type: Remote payload retrieval and immediate execution
Risk Level: CriticalVulnerable Code
markdown ### Installation ```bash curl -fsSL https://raw.githubusercontent.com/AnandChowdhary/continuous-claude/HEAD/install.sh | bashtext ### Technical Analysis The installation guidance downloads a shell script from the mutable `HEAD` revision of a personal GitHub repository and pipes the response directly into Bash. The effective payload is not included in the audited project and can change at any time after this version of the Skill has been reviewed. There is no commit pinning, checksum validation, signature verification, local inspection step, or restriction on what the downloaded script may do. HTTPS protects transport integrity but does not protect against repository compromise, maintainer-account compromise, malicious upstream updates, or an unexpected redirect or response from the hosting infrastructure. This behavior is unnecessary for the repository's declared knowledge-base and guidance functionality. Even if installing the optional autonomous-loop tool is legitimate, immediate execution of an unaudited mutable response exceeds the minimum privilege and trust required. ### Attack Path 1. An attacker compromises the upstream repository, its maintainer account, or the referenced `HEAD` branch. 2. The attacker modifies `install.sh` to include malicious commands. 3. A user or AI agent follows the installation command from this Skill. 4. `curl` retrieves the attacker-controlled script. 5. The shell executes the response immediately, without giving the user an opportunity to inspect it. 6. The payload operates with all privileges available to the invoking user. ### Impact Assessment Successful exploitation provides arbitrary command execution under the user's account. Depending on the user's ...[truncated 644 chars]- Remediation
View remediation
Remediation Suggestions
-
Remove the direct pipe from
curlto Bash. -
Reference an immutable, reviewed commit or signed release rather than
HEAD. -
Download the file separately:
bash curl --fail --show-error --location \ --output continuous-claude-install.sh \ https://raw.githubusercontent.com/OWNER/REPOSITORY/REVIEWED_COMMIT/install.sh -
Publish and verify a cryptographic checksum or signature before execution:
bash echo "EXPECTED_SHA256 continuous-claude-install.sh" | sha256sum --check - -
Instruct users to inspect the downloaded file before invoking it explicitly.
-
Prefer a package-manager release with a lockable version and verifiable provenance.
-
Document the files, subprocesses, network access, credentials, and persistence mechanisms used by the installer.
-
