T03 · Remote Payload Retrieval and Execution
Error
- Location
- SKILL.md:59
- Finding
- Unverified Remote Bash Installer Execution## Vulnerability Details **File Location**: `SKILL.md`, line 59 **Vulnerability Type**: Remote payload retrieval and execution **Risk Level**: High ### Vulnerable Code ```bash curl -fsSL https://cli.oomol.com/install.sh | bash # macOS / Linux ``` ### Technical Analysis The installation instruction retrieves a mutable shell script from an external server and pipes it directly into Bash. The downloaded content is not pinned to a specific release and is not subject to checksum, signature, or local inspection before execution. HTTPS protects the connection in transit but does not establish that the current server-side payload is the same code that was reviewed. Compromise of the hosting infrastructure, domain, distribution account, or installer-generation process could therefore turn this instruction into an arbitrary-code execution channel. The command appears only as a first-time setup fallback when the `oo` CLI is unavailable, rather than as part of every Novu operation. Nevertheless, executing a remote installer is broader than the minimum privilege needed to operate Novu through an already installed CLI. ### Attack Path 1. The `oo` command is unavailable and an installation fallback is initiated. 2. An attacker compromises the installer host, its deployment pipeline, or another component capable of changing `https://cli.oomol.com/install.sh`. 3. The Agent or user runs the documented command. 4. `curl` downloads the attacker-controlled response without saving it for review or verifying its integrity. 5. Bash immediately interprets the response as shell commands. 6. The malicious installer executes with all permissions available to the invoking Agent or user. ### Impact Assessment Successful exploitation provides arbitrary command execution under the invoking account. Depending on that account's permissions and the installer's use of privilege elevation, an attacker could read or modify accessible files, steal ...[truncated 318 chars]
- Remediation
- ## Remediation Suggestions - Replace the pipe-to-shell command with installation from a version-pinned, trusted release artifact. - Download the installer to a local file without executing it immediately. - Publish and verify a cryptographic checksum and, preferably, a signature rooted in a separately distributed trusted key. - Display the artifact source, version, and verification result before execution. - Require explicit user approval before installing software or running any downloaded script. - Execute the installer with ordinary user privileges unless a narrowly scoped operation demonstrably requires elevation. - Prefer a signed operating-system package or trusted package manager with lockable versions and provenance verification.
