Back to skill

Security audit

Grafana Cloud

Security checks for vulnerabilities and agentic risk

Overview

The skill is mostly coherent for Grafana Cloud access, but its first-time setup tells users to run unverified remote installer scripts directly in a shell.

Review the first-time setup before installing. Prefer an official, version-pinned oo CLI installation method with checksum or signature verification, and do not run the curl-to-bash or PowerShell iex installer blindly. After installation, the skill should only be used with the intended Grafana Cloud account and connector permissions.

Vulnerability Patterns
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Findings (1)

T03 · Remote Payload Retrieval and Execution

Error
Location
SKILL.md:58
Finding
Unverified Remote Installer Download and Execution<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, lines 58–62 **Vulnerability Type**: Remote payload retrieval and execution **Risk Level**: High ### Vulnerable Code ```bash curl -fsSL https://cli.oomol.com/install.sh | bash # macOS / Linux ``` ```powershell irm https://cli.oomol.com/install.ps1 | iex # Windows PowerShell ``` ### Technical Analysis The setup instructions download mutable scripts from `cli.oomol.com` and immediately execute them through Bash or PowerShell. There is no version pinning, manual inspection step, cryptographic signature validation, or checksum verification between retrieval and execution. Consequently, the code that ultimately runs is not the code reviewed in this skill package and can change at any time. Compromise of the hosting service, its deployment process, domain or DNS controls, or the applicable TLS trust chain could turn these installation commands into an arbitrary-code-execution channel. Installing a CLI can be legitimate, but immediate execution of an unverified remote response is not required for the skill's declared read-only Grafana Cloud operations. It exceeds the minimum privileges necessary to document or invoke those operations. ### Attack Path 1. The `oo` CLI is unavailable, causing the agent or user to consult the first-time setup instructions. 2. The agent or user executes one of the documented installation commands. 3. The command retrieves the current installer response from `cli.oomol.com`. 4. Bash or PowerShell executes the response without first authenticating its contents against a pinned release. 5. If the distribution channel or hosted script has been compromised, attacker-controlled commands execute with the privileges of the invoking user. 6. Those commands can access files and credentials available to that user, modify the user's environment, install persistence where permissions allow, or invoke additional payloads. ### Impact Assessment Successful exploitation ...[truncated 653 chars]
Remediation
<![CDATA[ ## Remediation Suggestions 1. Remove the direct `curl | bash` and `irm | iex` installation patterns. 2. Direct users to a version-pinned release hosted on an authenticated official release channel. 3. Download the installer or binary to a local file without executing it immediately. 4. Publish a cryptographic signature or strong checksum through an independently protected channel and require verification before execution. 5. Prefer signed platform-native packages, such as notarized macOS packages, signed Windows installers, or signed Linux repository packages. 6. Display the exact version, source URL, checksum, permissions, and intended changes before requesting explicit user approval. 7. Execute installation with ordinary user privileges unless a specific operation demonstrably requires elevation. 8. Keep installation separate from normal skill execution and never install software automatically in response to an ordinary Grafana Cloud request. A safer Unix-style workflow would resemble: ```bash curl -fSLo oo-installer.sh \ https://example.invalid/releases/vX.Y.Z/install.sh echo "<published-sha256> oo-installer.sh" | sha256sum --check less oo-installer.sh bash oo-installer.sh ``` The release URL and checksum must be replaced with authenticated, version-pinned values maintained by the publisher. Windows instructions should provide equivalent signature or checksum verification before invoking the downloaded file. ]]>
Vulnerability Patterns
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (2)

External Script Fetching

High
Category
Supply Chain
Content
- **`oo: command not found`** — install the oo CLI (other platforms: <https://cli.oomol.com/install-guide.md>):

  ```bash
  curl -fsSL https://cli.oomol.com/install.sh | bash    # macOS / Linux
  ```

  ```powershell
Confidence
98% confidence
Finding
The skill instructs users to install software by piping a remotely fetched script directly into a shell (`curl ... | bash`). This creates a supply-chain and remote code execution risk: if the hosting source, transport, DNS, or upstream release pipeline is compromised, arbitrary code will execute immediately on the user's machine without inspection.

Vague Triggers

Medium
Confidence
95% confidence
Finding
The description says to use this skill for "ANY Grafana Cloud request" and "Whenever a task involves Grafana Cloud," which is a very broad activation rule without constraints or negative examples. In a manifest file, this can cause unintended invocation for loosely related mentions of Grafana Cloud rather than clearly scoped actions.

Static analysis

No suspicious patterns detected.