Back to skill

Security audit

Competitor Price Monitor

Security checks for vulnerabilities and agentic risk

Overview

This is a disclosed price-monitoring skill that scrapes e-commerce pages and writes local reports, with compliance caveats but no hidden or destructive behavior found.

Install only if you want automated scraping of product pages. Configure a small, explicit product list, review each target platform's rules, keep polling rates low, and enable the cron example only if you are comfortable with repeated background monitoring and local report files.

Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Output HandlingUnvalidated Output Injection, Cross-Context Output, Unbounded Output
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
Findings (7)

Lp3

Medium
Category
MCP Least Privilege
Confidence
94% confidence
Finding
The skill embeds code and workflow steps that read local files, write configuration/output files, and invoke external commands via subprocess, yet it declares no permissions or user-facing guardrails for those capabilities. This creates a trust and consent gap: users may trigger scraping, file modification, or shell execution without understanding the actual operational scope.

Tp4

High
Category
MCP Tool Poisoning
Confidence
96% confidence
Finding
The documented purpose is simple price monitoring, but the implementation also depends on external browser automation, writes multiple local artifacts, supports scheduled autonomous execution, and references capabilities beyond what the top-level description makes clear. This mismatch is dangerous because users and reviewers may underestimate the skill's authority, side effects, and operational risk.

Context-Inappropriate Capability

Medium
Confidence
88% confidence
Finding
Referencing anti-scraping evasion materially increases the risk profile because it suggests bypassing platform defenses rather than performing ordinary monitoring. In the context of automated scraping across e-commerce platforms, this can facilitate abusive collection practices, account bans, or policy violations and is not necessary for a minimally safe reporting skill.

Missing User Warnings

Medium
Confidence
92% confidence
Finding
The README promotes automated scraping and scheduled monitoring across multiple e-commerce platforms but provides no warning about terms-of-service restrictions, anti-bot controls, account risk, IP blocking, or legal/compliance concerns. In a skill specifically designed for repeated automated collection, this omission can lead users to deploy unsafe scraping behavior at scale without understanding operational or policy consequences.

Vague Triggers

Medium
Confidence
85% confidence
Finding
The trigger phrases are broad enough to match common requests like 'price monitoring' or 'competitive analysis,' increasing the chance of accidental activation. Because the skill can scrape external sites, write local files, and be chained into automation, overbroad invocation raises the risk of unintended execution.

Missing User Warnings

Medium
Confidence
93% confidence
Finding
The documentation does not clearly warn users that the skill performs automated scraping, writes local files, and can be configured for recurring scheduled execution. Without explicit disclosure, users may unknowingly authorize actions affecting external platforms and local data, which is especially risky in an agentic environment.

Unvalidated Output Injection

High
Category
Output Handling
Content
]
    
    # 执行命令
    result = subprocess.run(cmd, capture_output=True, text=True)
    
    if result.returncode == 0:
        data = json.loads(result.stdout)
Confidence
78% confidence
Finding
The code blindly trusts and parses stdout from an external module invoked via subprocess, then uses the returned fields to drive downstream storage and reporting without validation. If the external tool is compromised, spoofed, or returns malformed or adversarial content, the skill can ingest false data, poison reports, or trigger failures in later processing.

Static analysis

No suspicious patterns detected.