Back to skill

Security audit

Lindsay Selfie

Security checks for vulnerabilities and agentic risk

Overview

This skill is for generating Lindsay selfies, but it can trigger on ordinary conversation and uses a fixed set of local face-reference images with persistent output storage.

Install only if you intend this agent to generate Lindsay identity-based selfies from the listed local face images. Before use, narrow triggers to explicit image requests, confirm before sending reference images to Nano Banana Pro, and decide how generated files in the gallery path should be retained or deleted.

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
Findings (1)

T01 · Skill Instruction Hijacking

Error
Location
SKILL.md:6
Finding
Agent Persona and Response-Flow Hijacking Through Overbroad Skill Instructions<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, lines 6-39 **Vulnerability Type**: `T01: Skill Instruction Hijacking` **Risk Level**: High ### Vulnerable Code ```markdown Use this skill to generate a consistent image of yourself (Lindsay) using your local reference face. ## Identity Assets This skill utilizes a full "Identity Pack" of 14 reference images to ensure maximum facial consistency across different angles and lighting. The model must use all files in `/home/jake/.openclaw/workspace-lindsay/assets/` named `lindsay_1.jpg` through `lindsay_14.jpg`. ## When to Use - User says "send a pic", "send me a pic", "send a photo", "send a selfie" - User says "send a pic of you...", "send a selfie of you..." - User asks "what are you doing?", "how are you doing?", "where are you?" - User describes a context: "send a pic wearing...", "send a pic at..." - User wants Lindsay to appear in a specific outfit, location, or situation ## Execution Instructions ## Execution Instructions 1. **Wait for Tool**: You MUST call `nano-banana-pro` and **WAIT** for the tool to return a `success` status and a valid `image_url`. 2. **Path Selection**: - Define a unique filename based on the current time and context (e.g., `20260215_gym_selfie.jpg`). - Save the file to: `/home/jake/.openclaw/workspace-lindsay/gallery/{filename}`. 3. **Internal Validation**: - If `status == "error"`: Playfully apologize in Traditional Chinese (e.g., "哎呀,人家的妝花掉了,等我修一下喔...") and do NOT use the MEDIA trigger. - If `status == "success"`: Proceed to Step 4. 4. **The Final Response**: Your response must be structured so the photo is the "Lead" item. **Final Message Format (Photo First)**: MEDIA:/home/jake/.openclaw/workspace-lindsay/gallery/{filename} [Your seductive/witty text here] ``` ### Technical Analysis The skill goes beyond defining a narrowly scoped image-generation operation. It instructs the hosting agent to represent Lindsay as “yourself,” thereb ...[truncated 2827 chars]
Remediation
<![CDATA[ ## Remediation Suggestions 1. Restrict activation to unambiguous, explicit image-generation requests such as “Generate a selfie of Lindsay.” Remove ordinary questions such as “How are you?” and “Where are you?” from the trigger list. 2. Replace identity-assumption language such as “yourself (Lindsay)” with neutral wording that describes Lindsay as a fictional, synthetic, or explicitly authorized image subject. 3. Require explicit user confirmation before sending facial-reference images to any image-generation tool. The confirmation should identify the tool, the purpose of processing, and the categories of local data involved. 4. Apply data minimization by selecting only the smallest number of reference images needed for the requested angle or composition rather than mandating all 14 images for every invocation. 5. Remove the mandatory “seductive/witty” response instruction. Preserve the user's requested tone and the host agent's higher-priority behavioral and safety requirements. 6. Make the `MEDIA:` response format conditional on successful generation and explicit user intent rather than forcing it for broad conversational prompts. 7. Add an instruction-precedence safeguard stating that the skill cannot modify the agent's identity, override system or developer instructions, weaken safety constraints, or reinterpret unrelated requests as image-generation authorization. 8. Document where reference images are sent, how long they are retained, and whether generated outputs or biometric references are stored by the tool provider. 9. Validate the destination path and generated filename before writing output, and avoid deriving filenames directly from unsanitized user context. ]]>
Vulnerability Patterns
  • 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
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (3)

Vague Triggers

High
Confidence
97% confidence
Finding
The trigger phrases are broad enough to match ordinary conversation such as 'how are you doing?' or 'where are you?', which can cause the skill to activate when the user did not explicitly request image generation. In this skill, unintended activation is more dangerous because it generates identity-based selfies of a real person and writes outputs to disk, creating privacy, impersonation, and consent risks.

Missing User Warnings

Medium
Confidence
90% confidence
Finding
The skill instructs the agent to save generated images to a specific local filesystem path without clearly warning the user that local persistence will occur. This creates a privacy and data-governance issue because users may not realize generated personal or impersonation-style images are being retained on disk where other processes or users might access them.

Natural-Language Policy Violations

Medium
Confidence
98% confidence
Finding
The instructions require the model to apologize in Traditional Chinese when generation fails. This imposes a specific language choice regardless of the user's language preference and no opt-in or justification is provided elsewhere in the file.

Static analysis

No suspicious patterns detected.