Back to skill

Security audit

Salesmate

Security checks for vulnerabilities and agentic risk

Overview

This Salesmate skill is mostly coherent, but its setup instructions tell users to run unverified remote installer scripts directly in a shell.

Review the setup path before installing. Prefer installing the oo CLI through a verified release or package manager, and do not let an agent run the curl-to-bash or irm-to-iex commands automatically. For normal Salesmate use, require explicit confirmation before creating or deleting CRM 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:57
Finding

Unverified Remote Installation Scripts Executed Directly by a Shell

Content
View full analysis
): ```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 retrieve mutable content from an external URL and execute it immediately in a local shell. The downloaded scripts are not inspected, pinned to a specific release, checked against a cryptographic digest, or verified with a trusted signature. HTTPS protects data in transit but does not establish that the current remote script is the same payload that was reviewed. Compromise of the OOMOL download service, hosting account, DNS or TLS infrastructure, build pipeline, or installation script could therefore turn these commands into arbitrary code-execution mechanisms. The commands also exceed the minimum privileges required for the Skill's declared CRM functionality. Salesmate operations only require invoking an already installed `oo` executable, while this fallback authorizes an externally controlled script to perform unrestricted operations available to the user's shell. The network transmission performed by `oo connector run` is consistent with the declared connector architecture, and the reviewed file does not show collection of local secrets or unrelated information. The confirmed vulnerability is the unverified execution of remote installation content, not the expected transmission of CRM request data. ### Attack Path 1. The `oo` CLI is absent, causing an `oo: command not found` error. 2. The user or Agent follows the documented first-time setup procedure. 3. `curl` or PowerShell downloads the current installation ...[truncated 1213 chars]
Remediation
View remediation
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
97% confidence
Finding

The skill instructs users to install software by piping a remotely fetched script directly into bash, which creates a supply-chain and remote-code-execution risk if the hosting endpoint, transport, or script content is compromised. Because this appears in an operational skill that may be followed verbatim during troubleshooting, the context makes it more dangerous by encouraging execution of unreviewed installer code on the local system.

Content

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

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The description says to use this skill for "ANY Salesmate request" and "Whenever a task involves Salesmate," which is a very broad trigger for a markdown skill description. This lacks clear boundaries or exclusion conditions, so ordinary requests loosely involving Salesmate could invoke the skill unintentionally.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.