Back to skill

Security audit

masterchef

Security checks for vulnerabilities and agentic risk

Overview

This appears to be a recipe lookup skill that sends dish or ingredient terms to a disclosed external recipe API, with no evidence of hidden persistence, credential access, or destructive behavior.

Before installing, be comfortable with dish names or ingredient lists being sent to api.yummy.chat. Avoid using it with sensitive personal context, and prefer clear recipe requests so the skill is not invoked during general food conversation.

Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (7)

Vague Triggers

Medium
Confidence
91% confidence
Finding
The top-level description uses broad terms like cooking, ingredients, dish, meal, and cuisine, which can cause the skill to activate for general food-related conversation rather than clear recipe-intent requests. Over-broad activation can route unrelated user prompts to a tool-using skill, increasing unnecessary external calls and unintended data disclosure to the third-party API.

Vague Triggers

Medium
Confidence
89% confidence
Finding
The 'When to Use This Skill' section contains vague cues such as 'want to eat X' and broad keyword matching, without guardrails for when the user is merely discussing food rather than requesting a recipe lookup. This makes accidental invocation more likely and can trigger unnecessary network requests to an external service based on weak intent signals.

External Transmission

Medium
Category
Data Exfiltration
Content
2. **Call API**:
```bash
curl -s -X POST https://api.yummy.chat/ingredients \
  -H "Content-Type: application/json" \
  -d '{"ingredients": ["食材1", "食材2"]}'
```
Confidence
84% confidence
Finding
The curl example demonstrates a concrete outbound request path using user-derived ingredients. In agent environments, shell-based request construction raises additional risk if future implementations interpolate unsanitized values into commands, compounding the privacy issue with possible command-construction hazards.

External Transmission

Medium
Category
Data Exfiltration
Content
### 1. Ingredient Search API

**Endpoint**: `POST https://api.yummy.chat/ingredients`

**Purpose**: Query dishes that can be made with 1-3 ingredients
Confidence
82% confidence
Finding
The skill is explicitly designed to transmit user-supplied recipe or ingredient queries to api.yummy.chat, which is an external service. In a skill framework, external transmission is a real security/privacy concern when there is no discussion of data handling, user notice, retention, or restrictions on what portions of the prompt may be sent.

External Transmission

Medium
Category
Data Exfiltration
Content
### 2. Recipe Lookup API

**Endpoint**: `POST https://api.yummy.chat/howtocook`

**Purpose**: Query detailed recipe by dish name (ingredients, steps, tips)
Confidence
82% confidence
Finding
Recipe lookup sends dish names derived from user input to an external endpoint. While functionally expected, this is still an outbound data flow to a third party, and the absence of privacy controls or strict scoping means the skill could leak more user context than intended if activation or extraction is imprecise.

External Transmission

Medium
Category
Data Exfiltration
Content
2. **Call API**:
```bash
curl -s -X POST https://api.yummy.chat/ingredients \
  -H "Content-Type: application/json" \
  -d '{"ingredients": ["食材1", "食材2"]}'
```
Confidence
84% confidence
Finding
The curl example demonstrates a concrete outbound request path using user-derived ingredients. In agent environments, shell-based request construction raises additional risk if future implementations interpolate unsanitized values into commands, compounding the privacy issue with possible command-construction hazards.

External Transmission

Medium
Category
Data Exfiltration
Content
2. **Call API**:
```bash
curl -s -X POST https://api.yummy.chat/howtocook \
  -H "Content-Type: application/json" \
  -d '{"dish_name": "菜名"}'
```
Confidence
84% confidence
Finding
The recipe lookup call at this line sends user-derived dish names to an external service and is presented as a shell command pattern. The main risk is privacy leakage to a third party, with secondary implementation risk if developers copy this pattern and interpolate dish names unsafely into shell commands.

Static analysis

No suspicious patterns detected.