T03 · Remote Payload Retrieval and Execution
- Location
SKILL.md:35- Finding
Unverified Remote Installer Executed Directly by a Shell
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, line 35
Vulnerability Type: Remote payload retrieval and execution
Risk Level: CriticalVulnerable Code:
bash # Install using the recommended official installation script curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bashTechnical Analysis
The installation command streams content from an external URL directly into
bash. The downloaded script is not included in the audited project and is not pinned to an immutable release, checksum, or cryptographic signature. Consequently, the effective code executed by this instruction can change at any time after the Skill has been reviewed.HTTPS provides transport encryption and server authentication, but it does not guarantee that the hosted installer remains unchanged or benign. Compromise of the hosting service, publishing pipeline, domain, or installer source could cause arbitrary attacker-controlled shell commands to be returned and immediately executed.
This behavior is not the minimum privilege necessary to install the declared software. A safer installation flow can download a versioned artifact, verify its integrity and provenance, and execute it only after verification.
Attack Path
- An attacker compromises the installer hosting origin, its deployment pipeline, or another component capable of changing the response from the documented URL.
- The attacker modifies
install.shto include arbitrary shell commands. - A user or Agent follows the installation instruction in
SKILL.md. curldownloads the modified response and pipes it directly tobash.- The malicious commands execute with all permissions held by the invoking account.
- The payload can inspect or modify user-accessible files, install additional software, establish persistence, or access credentials available to that account.
Impact Assessment
Successful exploitation provides arbitrary co ...[truncated 705 chars]
- Remediation
View remediation
Remediation Suggestions
- Remove the direct
curl | bashinstallation command. - Prefer a version-pinned package or immutable release artifact from a verified publisher.
- If a shell installer is required, use a staged process:
- Download the installer to a local file.
- Verify a publisher signature or a SHA-256 checksum obtained through a trusted, independent channel.
- Inspect the script before execution.
- Execute it without elevated privileges unless a specific installation step requires elevation.
- Pin the installer URL to a reviewed release rather than a mutable generic endpoint.
- Publish signed release checksums and document signature verification.
- Run installation in an isolated environment with access limited to the files and credentials strictly required.
- Remove the direct
