Back to skill

Security audit

Chargebee

Security checks for vulnerabilities and agentic risk

Overview

This Chargebee skill is mostly coherent, but its first-time setup tells users to execute an unverified remote installer, which deserves review before installation.

Install only if you trust OOMOL to mediate Chargebee access and avoid running the documented remote installer commands blindly. Prefer a signed or package-manager install path for the oo CLI, verify any installer first, and confirm write actions carefully because Chargebee data can affect billing and customer records.

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 Installer Download and Immediate Execution

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 60–67
Vulnerability Type: Remote payload retrieval and execution
Risk Level: High

The first-time setup instructions download mutable scripts from an external service and execute them immediately:

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

Both installation commands combine network retrieval with immediate shell execution. The downloaded content is not pinned to a reviewed version, saved for inspection, or validated using a cryptographic checksum or signature. Consequently, the effective installer payload can change after the Skill itself has been reviewed.

The domain is consistent with the declared OOMOL service, and installation is only presented as a fallback when the oo command is unavailable. Nevertheless, trusting the service does not eliminate the risks associated with endpoint compromise, publishing-account compromise, DNS or TLS trust-chain failure, or an unintentionally unsafe installer update. Immediate execution is also unnecessary because the installer can be obtained, authenticated, and reviewed separately.

The Skill otherwise limits its declared local tool access to Bash(oo *). Its network transmission of Chargebee request data through oo connector run is disclosed and required for the connector functionality. No evidence was found that it reads local secrets or sends unrelated information. The excessive behavior is therefore specifically the unverified installation channel.

Attack Path

  1. The oo CLI is absent, causing the user or agent to consult the first-time setup instructions.
  2. An attacker compromises the installer endpoint, its publishing process, the associated account, or another relevant delivery-chain component.
  3. The attacker replaces the remotely served installer with malicious shell or Powe ...[truncated 1213 chars]
Remediation
View remediation

Remediation Suggestions

  1. Remove the direct curl | bash and irm | iex installation instructions.
  2. Prefer a signed package distributed through a trusted operating-system package manager or another installation mechanism that performs signature verification.
  3. Pin the installer or release artifact to a specific reviewed version rather than using a mutable generic URL.
  4. Publish expected SHA-256 checksums or cryptographic signatures through an independently protected channel.
  5. Separate download, verification, and execution. For example:
    • Download the installer to a local file.
    • Verify its checksum and publisher signature.
    • Review or display the script before execution.
    • Execute it only after verification succeeds.
  6. Ensure verification failures stop installation rather than falling back to unverified execution.
  7. Document whether installation requires elevated privileges and avoid administrator or root execution unless strictly necessary.
  8. Keep the existing behavior of attempting connector actions first and presenting installation only after a genuine “command not found” error.
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
Confidence
98% confidence
Finding

The skill instructs users to install software via a network-fetched shell script piped directly into bash, which executes remote code without prior verification. If the install endpoint, CDN, transport chain, or upstream release process is compromised, this can lead to arbitrary code execution on the user's machine.

Content

Scanner excerpt · SKILL.md (reported line 63)May include surrounding context.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The description says to use this skill for "ANY Chargebee request" and "Whenever a task involves Chargebee," which creates an extremely broad activation condition with no limiting examples or exclusions. In a manifest/markdown context, this can cause unintended invocation for casual references or tasks where Chargebee is only tangentially involved.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.