Back to skill

Security audit

competitor-analysis

Security checks for vulnerabilities and agentic risk

Overview

This is a disclosed SEO competitor-analysis skill with no embedded executable payload; users should be cautious with its optional unpinned install-all command and connected SEO/analytics data access.

Install through the normal OpenClaw path where possible. Only connect SEO, analytics, search-console, or AI-monitor tools when you intend the skill to use those business metrics, and avoid running the optional unpinned `npx` install-all command unless you trust and verify the package source.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • 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)

T08 · Insecure Dependencies

Warning
Location
SKILL.md:51
Finding

Unpinned Third-Party Package Execution via npx

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, line 51
Vulnerability Type: Unpinned third-party dependency execution
Risk Level: Medium

Vulnerable Code:

markdown
> **[SEO & GEO Skills Library](https://skills.sh/aaron-he-zhu/seo-geo-claude-skills)** · 20 skills for SEO + GEO · Install all: `npx skills add aaron-he-zhu/seo-geo-claude-skills`

Technical Analysis

The documented installation command invokes npx skills without pinning the skills package to a reviewed version or verifying package integrity. Depending on npm and local cache behavior, npx can retrieve the currently resolved package from the configured registry and execute its command-line entry point.

Consequently, the code executed when a user follows this instruction may differ from the code available when this Skill was audited. This creates a supply-chain trust boundary outside the reviewed project. Exploitation would require compromise or malicious control of the resolved package, its publisher account, the package registry path, or a transitive dependency. The audited repository itself does not contain an active malicious payload.

Attack Path

  1. An attacker compromises the resolved skills package, its publisher account, its dependency chain, or a relevant package-distribution path.
  2. The attacker publishes a malicious version or modifies a dependency used during command execution.
  3. A user follows the installation instruction in SKILL.md.
  4. npx resolves and downloads the mutable third-party package without an explicit version or integrity constraint.
  5. The package's command-line entry point executes with the permissions and environment of the invoking user.
  6. Malicious installation logic could access files and credentials available to that user, alter the workspace, or execute additional commands.

Impact Assessment

Successful exploitation could permit arbitrary code execution under the invoking user's account. The accessible scop ...[truncated 424 chars]

Remediation
View remediation

Remediation Suggestions

  1. Pin the command-line package to a specifically reviewed version, for example by using an explicit package@version reference.
  2. Prefer a committed lockfile and an installation mechanism that enforces locked dependency versions.
  3. Verify package integrity using trusted checksums, signatures, or registry integrity metadata before execution.
  4. Document the expected package registry, publisher identity, package name, and reviewed version so users can detect substitutions.
  5. Disable or avoid automatic execution of newly downloaded packages where practical. Install the verified package first, inspect its provenance, and invoke the installed binary separately.
  6. Review transitive dependencies and use automated dependency monitoring for later security advisories or unexpected ownership changes.
  7. Warn users not to run the installation command with administrator or root privileges and to use an isolated environment with minimal credentials and filesystem access.
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 (3)

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The description contains broad activation phrases such as 'competitive analysis' and 'what are my competitors doing' that can match many ordinary requests. Over-broad triggers can cause the wrong skill to activate, unnecessarily pulling in external-data workflows or competitor-intelligence behavior when the user intended a more limited task.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
97% confidence
Finding

The explicit trigger list includes ambiguous phrases like 'who ranks for' and 'competitive analysis' without constraints. This increases the chance of accidental invocation and unintended data access or analysis scope expansion, especially in environments where skills can trigger automatically from natural-language similarity.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
92% confidence
Finding

The skill advertises installation via npx skills add ... without pinning an exact package version or integrity reference. If the upstream package changes, is republished, or a dependency is compromised, users may install unexpected code, creating a supply-chain risk during skill installation.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.