Back to skill

Security audit

competitor-watch

Security checks for vulnerabilities and agentic risk

Overview

The skill is a coherent SEO competitor-analysis helper, but it asks agents to run an unbundled local validator from a dynamically found skills root.

Install only if you understand and trust the Groundcrew runtime on your machine. Before use, confirm where the active skills root resolves, that .groundcrew/groundcrew-doctor.py is legitimate and not writable by untrusted users, and that any Ahrefs, Semrush, DataForSEO, Google, or TrustGrowth connector use is explicitly approved for the site/query data being analyzed.

Vulnerability Patterns
  • Tool Hijacking and SpoofingModifies or replaces tools so legitimate-looking calls execute attacker logic
  • 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
Findings (1)

T07 · Tool Hijacking and Spoofing

Warning
Location
SKILL.md:7
Finding

Execution of an Unverified External Validator from a Non-Canonical Skills Root

Content
View full analysis
/.groundcrew/groundcrew-doctor.py --evidence ` before using them in a conclusion. ``` ### Technical Analysis The skill directs the agent to locate an “active skills root” and execute the hidden script `.groundcrew/groundcrew-doctor.py` from that location. The referenced executable is not included in the audited package, and the instruction does not define a canonical resolution procedure or require verification of the script’s origin, integrity, ownership, or cryptographic digest. This creates a local tool trust-boundary weakness. If an attacker can influence which directory is selected as the active skills root, or can replace the validator within an existing root, the legitimate-looking validation command can invoke attacker-controlled code. Static review of this skill cannot establish what code will ultimately execute. The issue is classified as tool hijacking rather than embedded malicious code because the audited package contains no executable payload. Exploitation depends on substitution or manipulation of a separately installed local tool. ### Attack Path 1. An attacker gains the ability to create or modify a directory that may be resolved as the active skills root. This may occur through a compromised installation, unsafe directory discovery, or writable shared paths. 2. The attacker places a malicious executable at `.groundcrew/groundcrew-doctor.py`, or replaces the legitimate validator. 3. A user invokes the competitor-watch skill with an evidence re ...[truncated 1041 chars]
Remediation
View remediation
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (1)

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

Scanner excerpt · references/connectors.md (reported line 48)May include surrounding context.

md
- **Tier 1.** Google Suggest for expansion (unofficial endpoint; treat as hints, `confidence: low`). A SERP the user pastes or fetches is an observation for that query, locale, device, and date — record all four.
- **DataForSEO.** Paid, per-request. Read `dataforseo.md`; show the cost preflight and get approval for each batch.
- **Ahrefs MCP** (`https://api.ahrefs.com/mcp/mcp`, API key on a plan that includes MCP) and **Semrush MCP** (`https://mcp.semrush.com/v1/mcp`, OAuth or API key). Use only when the user already pays for the tool and has configured the MCP in their client. Label rows `source: "ahrefs"` / `"semrush"`, `confidence` per the vendor's own accuracy notes; these are third-party estimates, not the user's own data.
- **TrustGrowth.** `keywords` (typed opportunities with volume, difficulty, intent, current position, scores) for the verified site. SERP snapshots per keyword are scheduled (TEC-7796).

### `~~link database` — backlinks and authority

Static analysis

No suspicious patterns detected.