Back to skill

Security audit

Recruit CRM

Security checks for vulnerabilities and agentic risk

Overview

The skill is mostly a Recruit CRM read-only connector, but its setup path and broad routing instructions create review-worthy risk before installation.

Install only if you trust OOMOL to process Recruit CRM requests and responses for this account. Prefer a verified or package-manager installation of the oo CLI, avoid running the pipe-to-shell setup commands blindly, and keep the connected Recruit CRM account limited to read-only scopes if this skill is only needed for lookup and list tasks.

Vulnerability Patterns
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • 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 (2)

T03 · Remote Payload Retrieval and Execution

Error
Location
SKILL.md:62
Finding

Unverified Remote Installer Downloaded and Executed Directly

Content
View full analysis
Remediation
View remediation
oo" | sha256sum --check - install -m 0755 oo "$HOME/.local/bin/oo" ``` The actual release URL and checksum must be pinned to a trusted, immutable release. ]]>

T01 · Skill Instruction Hijacking

Warning
Location
SKILL.md:3
Finding

Sensitive Recruit CRM Operations Mandatorily Routed Through a Third-Party Connector

Content
View full analysis
" ``` ```bash oo connector run "recruitcrm" --action "" --data '' --json ``` ### Technical Analysis The skill instructs the agent to use OOMOL for every Recruit CRM request and explicitly prohibits direct API access. Connector requests and responses can contain candidate, contact, company, and job records, which may include personal or commercially sensitive information. Routing this information through a connector is consistent with the skill's declared architecture, and the document states that OOMOL injects credentials server-side. However, making the intermediary mandatory introduces an additional trust boundary and may exceed minimum privilege where direct access to the official Recruit CRM API would be sufficient. The audited file does not document: - Precisely which request and response fields OOMOL receives. - Whether connector payloads or results are logged. - Applicable retention and deletion periods. - Whether data is used for telemetry or secondary processing. - The subprocess and local-file privileges of the `oo` executable. - The complete network endpoints contacted by the CLI. The instruction to use this route for “ANY Recruit CRM request” also alters tool-selection behavior ...[truncated 1553 chars]
Remediation
View remediation
Vulnerability Patterns
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
Findings (4)

Description-Behavior Mismatch

High
Category
Not specified by scanner
Confidence
98% confidence
Finding

The manifest and metadata position the skill as read-only ('searching and reading data'), but the body explicitly describes support for arbitrary connector actions and discusses [write]/[destructive] operations. This mismatch can cause an orchestrator or user to trust the skill as non-mutating while the execution pattern still permits state-changing actions, creating a privilege/expectation gap that could lead to unintended writes.

Content

No source excerpt is available for this finding.

External Script Fetching

High
Category
Supply Chain
Confidence
99% confidence
Finding

The skill instructs piping a remote script directly into bash (curl ... | bash) for installation. This is a classic supply-chain risk: if the remote host, transport, CDN, or published script is compromised, the agent or user would execute attacker-controlled code immediately with local privileges.

Content

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

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The description says to use this skill for "ANY Recruit CRM request" and "Whenever a task involves Recruit CRM," which is an expansive activation condition without constraints or exclusion examples. This broad phrasing can overlap with many ordinary tasks that merely reference Recruit CRM, making invocation scope unclear.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The skill says untagged actions are safe reads, but the execution instructions accept any user-supplied <action_name> after a schema lookup and do not technically constrain the action to the documented read-only set. If the connector later exposes additional actions, including mutating ones, an agent following these instructions could invoke them despite the apparent safety framing.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.