Back to skill

Security audit

Slack

Security checks for vulnerabilities and agentic risk

Overview

This Slack skill is mostly coherent, but its setup instructions tell the agent or user to run an unverified remote installer script, which warrants careful review before installation.

Install only if you trust OOMOL and are comfortable connecting it to Slack. Do not let an agent automatically run the documented installer commands; prefer official, version-pinned, verifiable installation instructions and confirm any Slack write or delete action before it runs.

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:98
Finding
Unverified Remote Installer Scripts Executed Directly by the Shell## Vulnerability Details **File Location**: `SKILL.md`, lines 98–102 **Vulnerability Type**: Remote payload retrieval and execution **Risk Level**: Critical **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 installation instructions retrieve scripts from external URLs and immediately execute their contents with Bash or PowerShell. The payload is not pinned to a specific immutable release, saved for review, or verified using a cryptographic checksum or digital signature. HTTPS provides transport protection but does not establish that the script remains identical to the version assessed during this audit. Compromise of the hosting origin, deployment pipeline, CDN, DNS/control plane, or publisher account could cause future invocations to execute attacker-controlled content. The PowerShell `Invoke-RestMethod | Invoke-Expression` pattern presents the same underlying risk as `curl | bash`. This behavior is not necessary for the Skill's declared Slack functionality. Installing the required CLI may be necessary, but direct execution of mutable remote content exceeds the minimum privilege and integrity requirements for a safe installation process. ### Attack Path 1. The `oo` command is unavailable, causing the agent or user to consult the first-time setup instructions. 2. An attacker compromises or gains control over the remote installer, its publication pipeline, or an associated delivery component. 3. The attacker replaces the expected installer response with a malicious shell or PowerShell payload. 4. The user executes the documented command. 5. `bash` or `iex` immediately interprets the downloaded response without integrity verification or prior inspection. 6. The payload performs arbitrary actions using the permissions of the invoking account and ...[truncated 1033 chars]
Remediation
## Remediation Suggestions 1. Remove both direct execution pipelines. Do not pipe network responses into `bash`, `sh`, `iex`, or another interpreter. 2. Prefer an authenticated operating-system package manager or a signed, version-pinned release from the publisher's official distribution channel. 3. If a standalone installer is unavoidable: - Pin an explicit release version and immutable artifact URL. - Download the artifact to a local file without executing it. - Publish and verify a SHA-256 or stronger checksum obtained through a separately protected channel. - Verify a digital signature against a documented, pinned publisher key. - Abort installation if any verification fails. - Permit inspection before execution. 4. Run installation with ordinary user privileges and request elevation only for narrowly scoped operations that genuinely require it. 5. Document the files, directories, network destinations, and configuration changes made by the installer. 6. Add release-pipeline protections such as signed artifacts, protected publishing credentials, reproducible builds where practical, and monitoring for unexpected installer changes. 7. Replace the affected instructions with a workflow similar to: ```bash curl -fSLo oo-install.sh "https://trusted.example/releases/v1.0.9/install.sh" echo "<published-sha256> oo-install.sh" | sha256sum --check - less oo-install.sh bash oo-install.sh ``` The actual URL, version, checksum, and signature-verification procedure must come from a trusted, official release process rather than placeholders.
Vulnerability Patterns
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • 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
Findings (3)

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 explicitly instructs execution of a remote script via `curl -fsSL https://cli.oomol.com/install.sh | bash`, which is a classic high-risk pattern because downloaded content is executed immediately without integrity verification. In an agent context, this is more dangerous because the model may follow the instruction autonomously, turning documentation text into code execution on the host.

Vague Triggers

Medium
Confidence
97% confidence
Finding
The description says to use this skill for ANY Slack request, covering reading, creating, updating, and deleting data. That broad trigger increases the chance of automatic invocation in contexts where safer, narrower tooling or additional confirmation should apply, especially because the skill exposes write and destructive actions.

Context-Inappropriate Capability

Medium
Confidence
93% confidence
Finding
The skill includes operational instructions to execute installation and authentication commands that are not intrinsic to performing a Slack action, including `curl ... | bash`, PowerShell `iex`, and `oo auth login`. Even though presented as first-time setup, these steps expand the agent's authority from Slack operations into software installation and account sign-in, creating supply-chain and credential-handling risk if followed automatically.

Static analysis

No suspicious patterns detected.