Back to skill

Security audit

Best Product

Security checks for vulnerabilities and agentic risk

Overview

This shopping recommendation skill is coherent and disclosed: it searches public product sources, creates Google search links, and uses a small local cache.

Before installing, expect product search terms to be sent through the built-in web search/fetch tools and product names to appear in generated Google search URLs. Override the default region if you are not shopping in the Netherlands, and clear the documented cache folder if you do not want cached product results kept locally.

Vulnerability Patterns
  • 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
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Vulnerability Patterns
  • Tool MisuseTool Parameter Abuse, Chaining Abuse, Unsafe Defaults
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (5)

Tool Parameter Abuse

High
Category
Tool Misuse
Confidence
90% confidence
Finding

Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).

Content

Scanner excerpt · SKILL.md (reported line 238)May include surrounding context.

md
- **Format:** `{product}-{region}.json` (e.g., `earbuds-nl.json`)
- **TTL:** 6 hours
- **Check:** Always check cache first; if stale/missing, fetch fresh data
- **To disable/clear:** `rm -rf ~/.openclaw/cache/best-products/` — cache is optional, not required
- **Privacy note:** Cached data is only product names and prices, no personal information

## Link Verification (MANDATORY)

Tool Parameter Abuse

High
Category
Tool Misuse
Confidence
85% confidence
Finding

Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).

Content

Scanner excerpt · SKILL.md (reported line 238)May include surrounding context.

md
- **Format:** `{product}-{region}.json` (e.g., `earbuds-nl.json`)
- **TTL:** 6 hours
- **Check:** Always check cache first; if stale/missing, fetch fresh data
- **To disable/clear:** `rm -rf ~/.openclaw/cache/best-products/` — cache is optional, not required
- **Privacy note:** Cached data is only product names and prices, no personal information

## Link Verification (MANDATORY)

Tool Parameter Abuse

High
Category
Tool Misuse
Confidence
90% confidence
Finding

Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).

Content

Scanner excerpt · SKILL.md (reported line 238)May include surrounding context.

md
- **Format:** `{product}-{region}.json` (e.g., `earbuds-nl.json`)
- **TTL:** 6 hours
- **Check:** Always check cache first; if stale/missing, fetch fresh data
- **To disable/clear:** `rm -rf ~/.openclaw/cache/best-products/` — cache is optional, not required
- **Privacy note:** Cached data is only product names and prices, no personal information

## Link Verification (MANDATORY)

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
88% confidence
Finding

The usage section states 'Netherlands (default — Ralph is based in NL)', making a specific locale the default based on the author's location rather than the user's preference. The document also demonstrates Dutch output as the default behavior, which can violate language/locale policy when no user opt-in is obtained first.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The language rule says 'For all other regions, use English,' which forces a specific output language based on region rather than the user's preference. This is a natural-language policy issue because it removes language choice except in limited NL/BE cases.

Content

No source excerpt is available for this finding.

Static analysis

Detected: suspicious.destructive_delete_command

Documentation contains a destructive delete command without an explicit confirmation gate.

Warn
Code
suspicious.destructive_delete_command
Location
SKILL.md:238