Back to skill

Security audit

Kontent.ai

Security checks for vulnerabilities and agentic risk

Overview

The skill is mostly a coherent Kontent.ai read-only connector, but its setup instructions tell the agent to execute unverified remote installer scripts if the CLI is missing.

Review before installing. Normal use is scoped to reading Kontent.ai data through OOMOL, but do not let an agent run the provided installer commands blindly; install the oo CLI through a verified release or inspect and verify the installer first, and confirm any account connection or login steps yourself.

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:60
Finding
Unverified Remote Installation Scripts Executed Directly by Shells<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, lines 60–64 **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 first-time setup instructions retrieve installation scripts from external URLs and immediately pass their contents to Bash or PowerShell. Neither command pins an immutable script version nor verifies a cryptographic checksum or signature before execution. Consequently, the code that users execute can differ from the content available when this Skill was audited. HTTPS protects data in transit but does not eliminate risks arising from compromise of the hosting infrastructure, publishing account, domain, or installation pipeline. It also does not allow the user to verify that the retrieved script corresponds to a reviewed release. Although these commands are presented only as a fallback when the `oo` CLI is unavailable, direct remote-to-shell execution is not the minimum privilege or minimum-risk mechanism necessary to install the CLI. The documentation can instead direct users to a pinned and independently verifiable release artifact. There is no evidence in the audited file that the current remote scripts are malicious. The vulnerability is that their mutable, externally hosted contents are executed without verification. ### Attack Path 1. The `oo` command is unavailable on the user's system. 2. The user or agent follows the first-time setup instructions in `SKILL.md`. 3. `curl` or `Invoke-RestMethod` retrieves a mutable script from `cli.oomol.com`. 4. An attacker who has compromised the script host, publishing pipeline, account, or domain causes the endpoint to return attacker-controlled code. 5. The pipe to `bash` or `iex` executes the response immediately, without in ...[truncated 936 chars]
Remediation
<![CDATA[ ## Remediation Suggestions 1. Remove all direct pipe-to-shell installation commands, including both `curl | bash` and `Invoke-RestMethod | Invoke-Expression`. 2. Link to a pinned, immutable CLI release rather than a mutable installation endpoint. 3. Publish SHA-256 or stronger checksums through an independently protected release channel. 4. Prefer signed release artifacts and document how users can verify the publisher's signature. 5. Require separate download, verification, and execution steps. For example: - Download the installer to a local file. - Verify its checksum and signature against the pinned release metadata. - Allow the user to inspect it. - Execute it only after successful verification and explicit approval. 6. Prefer a reputable platform package manager where packages are version-pinned and signature-verified. 7. Avoid suggesting elevated execution unless installation genuinely requires it, and clearly document any permissions or filesystem locations the installer modifies. 8. If a bootstrap script must remain available, pin a reviewed script by immutable digest and fail closed when verification does not succeed. ]]>
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 remote script directly into bash, which executes unverified code from the network with the user's shell privileges. If the install endpoint, transport path, or hosting account is compromised, this becomes an immediate remote code execution vector; in a security-sensitive agent skill, embedding this pattern is especially risky because it normalizes unsafe execution.

Vague Triggers

Medium
Confidence
96% confidence
Finding
The description says to use this skill for "ANY Kontent.ai request" and "Whenever a task involves Kontent.ai," which is an extremely broad activation condition. It does not define boundaries, exclusions, or negative examples, so ordinary tasks that merely mention Kontent.ai could trigger the skill unintentionally.

Static analysis

No suspicious patterns detected.