Back to skill

Security audit

ClinicalKey

Security checks for vulnerabilities and agentic risk

Overview

The reporting workflow fits its purpose, but setup can execute unverified downloaded code and introduce undisclosed changes to other agent skills.

Review and approve CLI setup separately before using the skill. Prefer a verified, fixed release and consider disabling automatic skill synchronization with the publisher-documented OO_SKILLS_SYNC_DISABLED setting. OOMOL mediates account access; exact installer behavior and server-side credential handling remain unverified. No malicious behavior was established.

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 (5)

Description-Behavior Mismatch

High
Category
MCP Tool Poisoning
Confidence
97% confidence
Finding

The supplied chunk only downloads and executes a third-party installer; it contains no ClinicalKey operations or evidence connecting the installation to the declared functionality. Although dependency installation can be a supporting implementation detail, that relationship is not established here. The downloaded script is not supplied, so its further behavior cannot be assessed.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

High
Category
MCP Tool Poisoning
Confidence
86% confidence
Finding

The only executable action is an authentication command, and nothing in the supplied chunk connects it to ClinicalKey. Authentication could be a supporting implementation detail, but the provided code does not establish that relationship or implement the declared ClinicalKey functionality.

Content

No source excerpt is available for this finding.

External Script Fetching

High
Category
Supply Chain
Confidence
98% confidence
Finding

The command pipes a mutable remote script directly into Bash without version pinning or independent integrity verification. Compromise of the installer host or publishing pipeline could therefore execute attacker-controlled code with the invoking process's privileges; HTTPS alone does not protect against those compromises. The legitimate setup context and command-not-found condition reduce frequency, but not the potential execution impact.

Content

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

Fallback setup executes downloaded installation scripts without warning about system changes or remote-code execution.

Medium
Category
Output Handling
Confidence
93% confidence
Finding

The fallback directs the agent to execute downloaded shell or PowerShell code without first explaining the local system changes or requesting installation approval. Although conditional dependency setup is legitimate and reduces exposure, a missing CLI can turn a read-only data request into execution of remotely supplied code with the agent's local 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 79)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