T03 · Remote Payload Retrieval and Execution
Error
- Location
- SKILL.md:102
- Finding
- Unverified Remote Installer Downloaded and Executed Through a Shell## Vulnerability Details **File Location**: `SKILL.md`, line 102 **Vulnerability Type**: Remote payload retrieval and execution **Risk Level**: High **Complete Code Snippet**: ```bash curl -fsSL https://llmfit.axjns.dev/install.sh | sh ``` ### Technical Analysis The installation instruction retrieves a mutable shell script from the external domain `llmfit.axjns.dev` and pipes it directly into `sh`. No version pinning, cryptographic checksum, signature verification, local review, or trusted package-manager validation occurs before execution. Consequently, the code that executes can differ from the code available when the Skill was audited. Compromise of the remote server, domain, hosting infrastructure, or release process—or intentional modification by its operator—would permit arbitrary shell commands to be delivered to users. This behavior is not required for the bundled hardware detection logic. `detect.py` performs local hardware inspection and recommendations without downloading executable content. The instruction therefore creates a code-execution channel beyond the minimum privileges necessary for that local functionality. The document also states that `llmfit` is installed at `/usr/local/bin/llmfit`, but the repository does not provide verifiable provenance for that external executable. ### Attack Path 1. A user or agent follows the installation instruction in `SKILL.md`. 2. `curl` connects to the external host and retrieves its current `install.sh` response. 3. The response is streamed directly to `sh` without being saved, inspected, or authenticated. 4. Any commands supplied by the remote host execute with the permissions of the invoking account. 5. If the command is run by an administrator or the installer invokes privilege-elevation mechanisms, the resulting impact may extend to system-wide resources. ### Impact Assessment A malicious remote response can obtain arbitrary code execution with the invoking ...[truncated 552 chars]
- Remediation
- ## Remediation Suggestions 1. Remove the direct `curl | sh` installation instruction. 2. Prefer a version-pinned package distributed through a reputable package registry with integrity metadata and reproducible release provenance. 3. Alternatively, include the installer in the repository so it can be audited alongside the Skill. 4. If downloading an installer remains necessary: - Use an immutable, version-specific release URL. - Download it to a local file rather than piping it into a shell. - Verify a cryptographic signature from a separately established trust root. - Verify a published strong checksum such as SHA-256. - Permit the user to inspect the script before execution. - Require explicit user approval before running it. 5. Avoid system-wide installation and elevated privileges unless they are demonstrably necessary. Install into a user-controlled directory where possible. 6. Document the expected files, network access, permissions, and changes performed by the installer. 7. Verify and document the provenance and integrity of the claimed `/usr/local/bin/llmfit` executable before invoking it.
