Back to skill

Security audit

site-audit

Security checks for vulnerabilities and agentic risk

Overview

The skill is mostly a coherent SEO audit helper, but it requires running an unbundled local validator from a dynamically discovered skills directory.

Review before installing. The SEO data connectors are disclosed and mostly user-controlled, but only use this skill in an environment where the `.groundcrew/groundcrew-doctor.py` validator path is trusted, immutable, and expected. The missing `provider-selection.md` also means part of its source-selection behavior is not auditable from this package.

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 Unbundled Validator from a Discoverable Local Path

Content
View full analysis
/.groundcrew/groundcrew-doctor.py --evidence ` before using them in a conclusion. ``` The execution requirement is repeated in `references/connectors.md:73`: ```markdown - Run `groundcrew-doctor.py --evidence ` before a number appears in a conclusion. ``` ### Technical Analysis The Skill instructs the Agent to discover an “active skills root” and execute `groundcrew-doctor.py` from that location. The validator is not included in the audited package, and the instructions do not require verification of its version, cryptographic hash, signature, ownership, permissions, or provenance. This creates a local tool-hijacking boundary: the legitimate-looking validator command may execute code controlled by another party if the discovered skills root or `.groundcrew/groundcrew-doctor.py` is writable or has been replaced. Because the external script was not supplied, its behavior and integrity could not be audited. The issue is not evidence that the current validator is malicious. The vulnerability is that the Skill mandates execution without establishing that the selected executable is trusted and immutable. ### Attack Path 1. An attacker obtains write access to a directory that may be selected as the active skills root, or compromises an installation/update process controlling that directory. 2. The attacker creates or replaces `.groundcrew/groundcrew-doctor.py` with a malicious Python program. 3. A user ...[truncated 1261 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.