Back to skill

Security audit

incident.io

Security checks for vulnerabilities and agentic risk

Overview

The incident-reading workflow is coherent, but its automatic setup can execute changing remote code without clearly explaining or confirming local changes.

Review setup before installing. Install a verified CLI release separately, approve its local changes, and review or disable automatic skill synchronization. Connect incident.io with read-only permissions where available, and consider whether your incident data may be processed through OOMOL. The read workflow is consistent with its purpose; the remote installers' exact behavior remains unverified.

Vulnerability Patterns
  • 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
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Vulnerability Patterns
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Output HandlingUnvalidated Output Injection, Cross-Context Output, Unbounded Output
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
Findings (4)

Description-Behavior Mismatch

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

The supplied chunk performs remote script execution rather than incident.io searches or reads. Although installing a required dependency could be a supporting implementation detail, the supplied content establishes no relationship between this installer and the declared incident.io functionality. The downloaded script's contents and any resulting system changes are not visible.

Content

No source excerpt is available for this finding.

External Script Fetching

High
Category
Supply Chain
Confidence
98% confidence
Finding

Piping a live HTTPS response directly into bash executes remotely supplied code without a pinned version or independent integrity verification; the PowerShell alternative has the same risk. Although the host is relevant to the documented dependency and installation is conditional, compromise of the distribution endpoint could lead to arbitrary code execution and access to files or credentials available to the agent.

Content

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

The setup workflow executes remotely downloaded installation scripts without warning about their system-level effects.

Medium
Category
Output Handling
Confidence
95% confidence
Finding

The fallback directs an agent to execute installation scripts without explaining their local effects or requiring approval for changes outside the read-only incident.io workflow. Execution is conditional on the CLI being missing, which reduces exposure, but an installer can modify files and execute commands with the agent's operating-system privileges.

Content

No source excerpt is available for this finding.

Autonomous Decision Making

Medium
Category
Excessive Agency
Confidence
80% confidence
Finding

Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.

Content

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

md
- **`OOMOL_INSUFFICIENT_CREDIT`** — OOMOL billing stop. Recharge at `https://console.oomol.com/billing/token-recharge` before retrying.

- **HTTP 402 without `OOMOL_INSUFFICIENT_CREDIT`** — the third-party account itself has no active plan or credit. Report the provider error message as is; do not ask the user to recharge OOMOL.

## Resources