Back to skill

Security audit

Shopping List

Security checks for vulnerabilities and agentic risk

Overview

This is a coherent shopping-list skill that stores and edits local list data, with minor privacy and accidental-trigger risks but no evidence of hidden, destructive, network, credential, or deceptive behavior.

Install only if you are comfortable with a local skill keeping your shopping items, purchase history, and a saved name or nickname for attribution. Use explicit commands for add, remove, check, and switch-user actions if you want to reduce accidental changes in normal conversation.

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
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • 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 (6)

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill advertises broad trigger phrases like general shopping-list language, which can cause the agent to activate during ordinary conversation not clearly intended to invoke this skill. That can lead to unintended file writes, list modifications, or identity prompts in contexts where the user did not knowingly consent to using persistent shopping-list functionality.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The skill persistently stores the user's name in config.json and instructs the agent to collect it if missing, but does not require any explicit notice that this identity data will be retained across sessions. This creates a privacy risk because users may disclose identifying information without understanding the retention behavior or where it is stored.

Content

No source excerpt is available for this finding.

Autonomous Decision Making

Medium
Category
Excessive Agency
Confidence
80% confidence
Finding

Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.

Content

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

md
Parse the user's natural language into name, quantity, and unit for each item.

**Category inference:** Silently infer the category from the item name. Common mappings: milk/cheese/yogurt/butter go to Dairy, chicken/beef/fish to Meat, bananas/lettuce/onions to Produce, rice/pasta/flour to Pantry, dish soap/paper towels to Household, shampoo/toothpaste to Personal, beer/wine/juice to Beverages, frozen pizza/ice cream to Frozen. If the mapping is not obvious, assign "Uncategorized". Never prompt the user for a category. If the user wants to change it, they can say "move X to Y category".

**Multi-item input:** The user may add several items at once: "add eggs, bread, and 2 gallons milk" should produce 3 separate items. Parse commas and "and" as item separators. When the parsing is ambiguous (compound item names like "hot dog buns" near separators), ask the user rather than guessing wrong.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The shopping switch-user command changes identity context between named users but the reference gives no warning, authorization requirement, or verification step. In a shared/family shopping skill, this could let one person view, alter, remove, or check off another user's data simply by invoking a command, creating an access-control and privacy risk.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The trigger mapping includes broad everyday phrases such as "we need...", "what do we need from the store?", and "history" that can easily occur in normal conversation without an explicit intent to invoke the skill. In a conversational assistant, this can cause unintended reads or writes to the shopping list, especially because some mapped phrases perform mutating actions like add, remove, or check-off.

Content

No source excerpt is available for this finding.

Autonomous Decision Making

Medium
Category
Excessive Agency
Confidence
75% confidence
Finding

Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.

Content

Scanner excerpt · references/commands.md (reported line 170)May include surrounding context.

md
### Fuzzy matching

- `"milk"` matches `"whole milk"` if it is the only milk on the list. Proceed without asking.
- `"milk"` matches both `"whole milk"` and `"oat milk"`. Ask: "Which one — whole milk or oat milk?"
- `"xyz"` matches nothing. Respond: "I don't see xyz on the list." Then show current items so the user can pick.

Static analysis

No suspicious patterns detected.