Back to skill

Security audit

Technical Seo Checker

Security checks for vulnerabilities and agentic risk

Overview

This skill is a disclosed technical SEO audit guide; the main caution is an optional unpinned npx install command users should treat carefully.

Before installing the broader skills library, avoid blindly running the unpinned npx command; prefer a pinned, trusted version of the installer. During use, only provide site URLs and SEO data you are comfortable sharing with the connected crawler, page-speed, search-console, or CDN tools.

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:27
Finding

Unpinned Package Execution Through npx

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, line 27
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 specifying a reviewed package version or integrity value. When the command is executed, npm may resolve and run the package version currently available from the configured registry. The effective executable can therefore change after this skill has been reviewed.

This creates a supply-chain risk because execution is delegated to a mutable third-party package. If the package, publisher account, registry resolution, or a transitive dependency is compromised, attacker-controlled JavaScript may run through the package CLI or npm lifecycle behavior. The repository itself does not contain an embedded malicious payload; exploitation depends on compromise or malicious alteration of the external dependency.

Attack Path

  1. An attacker compromises the package publisher, registry resolution path, or a dependency used by the skills package.
  2. The attacker publishes or causes resolution of a malicious package version.
  3. A user follows the installation instruction and runs:
    bash
    npx skills add aaron-he-zhu/seo-geo-claude-skills
    
  4. npx resolves the mutable package version and executes its CLI or applicable lifecycle code.
  5. The malicious code runs with the permissions and environment access of the user who invoked the command.

Impact Assessment

Successful exploitation could provide code execution with the invoking user's privileges. Depending on the local environment and available permissions, the malicious package could read or modify user-acc ...[truncated 279 chars]

Remediation
View remediation

Remediation Suggestions

  1. Pin the CLI to a specifically reviewed version, for example:
    bash
    npx --yes skills@<reviewed-version> add aaron-he-zhu/seo-geo-claude-skills
    
  2. Verify and document the official package name, publisher, registry, and expected package provenance.
  3. Use a lockfile and npm integrity metadata where the installation workflow permits it.
  4. Review the pinned package, its lifecycle scripts, and its transitive dependencies before recommending execution.
  5. Run installation with a non-privileged account and avoid sudo or administrator execution.
  6. In automated environments, restrict filesystem permissions, network access, environment secrets, and package lifecycle scripts according to operational requirements.
  7. Establish a controlled process for testing and approving dependency version updates rather than automatically executing the latest available release.
Vulnerability Patterns
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (2)

Rp1

Medium
Category
MCP Rug Pull
Confidence
84% confidence
Finding

The skill instructs users to install a package via npx skills add ... without pinning an exact package version. Because npx resolves and executes the package version it fetches at runtime, a future malicious or compromised release of the CLI or dependency chain could execute unintended code on the user's machine. In a markdown skill file, this is especially relevant because users may copy-paste the command directly.

Content

No source excerpt is available for this finding.

Sudo/Root Execution

Medium
Category
Privilege Escalation
Confidence
80% confidence
Finding

Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.

Content

Scanner excerpt · references/http-status-codes.md (reported line 278)May include surrounding context.

md
4. Test with different IPs/user-agents

**How to fix**:
1. Adjust file permissions: `chmod 644 filename`
2. Remove blocking rules from .htaccess
3. Whitelist search engine bots
4. Review server firewall rules

Static analysis

No suspicious patterns detected.