Back to skill

Security audit

SheetDB

Security checks for vulnerabilities and agentic risk

Overview

The skill is mostly a coherent SheetDB connector, but its first-time setup tells the agent to run unverified remote installer scripts, which is too much trust for automatic setup.

Review this before installing. The SheetDB actions are clearly described and destructive actions require confirmation, but do not let an agent run the remote installer commands automatically. Install the oo CLI through a verified, version-pinned, or vendor-documented method you trust, then use the skill for SheetDB operations.

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:62
Finding
Unverified Remote Installation Scripts Are Executed Directly## Vulnerability Details **File Location**: `SKILL.md`, lines 62–66 **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 first-time setup instructions download scripts from an external server and pass their contents directly to a command interpreter. Neither installation path pins a specific release nor verifies a cryptographic signature or checksum before execution. Consequently, the effective code executed by these commands can change after the Skill has been reviewed. Although the scripts are hosted on an apparently vendor-related HTTPS domain, HTTPS alone does not protect against compromise of the vendor server, deployment pipeline, CDN, DNS infrastructure, or publishing credentials. It also does not establish that a subsequently modified script matches the version audited by the user. This behavior is not required for normal SheetDB operations when the CLI is already installed. For initial installation, it also exceeds the minimum safe behavior because the remote response can be downloaded and verified without immediately executing it. ### Attack Path 1. The `oo` CLI is absent, causing an `oo: command not found` error. 2. A user or agent follows the first-time setup instructions in `SKILL.md`. 3. An attacker compromises the remote script host, its delivery infrastructure, or its release pipeline and replaces the installation response with malicious code. 4. `curl | bash` or `irm | iex` passes the response directly to the local shell without integrity or authenticity verification. 5. The malicious script executes with all permissions held by the user who initiated installation. ### Impact Assessment Successful exploitation provides arbitrary command execut ...[truncated 642 chars]
Remediation
## Remediation Suggestions - Remove both direct pipe-to-shell installation commands. - Prefer an official operating-system package manager or a signed, version-pinned release package. - Pin the installer or CLI to an explicit version rather than retrieving a mutable installation endpoint. - Download the artifact to a local file without executing it automatically. - Publish and verify a cryptographic signature using a trusted public key. If signatures are unavailable, verify a checksum obtained through a separately authenticated channel. - Present the artifact version, source, checksum, and intended effects to the user and obtain explicit approval before execution. - Run installation with ordinary user privileges unless a documented installation step strictly requires elevation. - Consider sandboxing the installer and documenting the files, network destinations, and configuration changes it is expected to create.
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
97% confidence
Finding
The skill instructs users to install software via a remote shell pipeline (`curl ... | bash`), which executes network-fetched code without verification. If the install endpoint, CDN path, or transport chain is compromised, this can lead to arbitrary code execution on the host running the skill or following its instructions.

Vague Triggers

Medium
Confidence
92% confidence
Finding
The description says to use this skill for "ANY SheetDB request" and "Whenever a task involves SheetDB," which is a very broad activation condition for a markdown/manifest file. It does not provide limiting conditions or negative examples, so ordinary mentions of SheetDB could be interpreted as a trigger.

Static analysis

No suspicious patterns detected.