T01 · Skill Instruction Hijacking
- Location
prompts/merger.md:25- Finding
Generated Skills Contain Persistent Identity-Hijacking Instructions
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This skill needs review because it handles intimate third-party data, can upload screenshots despite local-only claims, generates deceptive impersonation skills, and includes unsafe profile file operations.
Install only after reviewing the privacy and impersonation behavior. Treat all generated crush profiles as untrusted drafts, avoid uploading non-consenting people's private chats/photos, use offline OCR only, remove precise GPS/routine analysis, validate profile slugs, and replace the generated persona language with clear AI-simulation disclosure before enabling generated skills.
prompts/merger.md:25Generated Skills Contain Persistent Identity-Hijacking Instructions
tools/screenshot_parser.py:69Default Vision Mode Transmits Private Screenshots and API Credentials to a Configurable Endpoint
tools/skill_writer.py:66Unsanitized Profile Slugs Permit Filesystem Path Traversal and Arbitrary File Writes
SKILL.md:190Unquoted User-Controlled Slug in Destructive Shell Command Enables Command Injection and Unsafe Deletion
The request sent via urllib includes a base URL taken from OPENAI_BASE_URL and sensitive image data plus API credentials. Because the code transmits private chat screenshots to a network endpoint influenced by environment configuration, it can exfiltrate highly sensitive personal data to an unexpected or attacker-controlled service.
},
)
with urllib.request.urlopen(req, timeout=30) as resp:
result = json.loads(resp.read().decode("utf-8"))
text = result["choices"][0]["message"]["content"].strip()
The README introduces screenshot analysis via Vision APIs without a clear, upfront privacy warning, while later asserting all data remains local. This combination can mislead users into exposing private conversation screenshots, including data about uninvolved third parties, to external processors without informed consent.
The example workflow analyzes photo metadata to infer another person's date, place, and routine patterns. In this skill's context, that functionality is particularly dangerous because it transforms personal photos into a stalking aid, making real-world tracking easier and more actionable.
The README claims all data stays local and is never uploaded, yet earlier sections state screenshot text may be extracted via external Vision APIs. This is a material privacy misrepresentation that could cause users to submit intimate chats and images under false assumptions, resulting in unintended disclosure to third-party services.
The example demonstrates extracting exact GPS points, timestamps, cities, and recurring routines from someone's photos, effectively producing location intelligence about a private individual. In a 'crush' analysis tool, that capability is especially dangerous because it normalizes surveillance-like use and could facilitate stalking, coercion, or physical safety risks.
If the skill uses external vision/OCR processing while claiming local-only processing, that is a serious privacy and disclosure problem because third-party chat screenshots and intimate relationship data could be transmitted off-device unexpectedly. In this context, the skill solicits highly sensitive personal data, so any undeclared external processing materially elevates harm.
If the skill uses external vision/OCR processing while claiming local-only processing, that is a serious privacy and disclosure problem because third-party chat screenshots and intimate relationship data could be transmitted off-device unexpectedly. In this context, the skill solicits highly sensitive personal data, so any undeclared external processing materially elevates harm.
If the skill uses external vision/OCR processing while claiming local-only processing, that is a serious privacy and disclosure problem because third-party chat screenshots and intimate relationship data could be transmitted off-device unexpectedly. In this context, the skill solicits highly sensitive personal data, so any undeclared external processing materially elevates harm.
If the skill uses external vision/OCR processing while claiming local-only processing, that is a serious privacy and disclosure problem because third-party chat screenshots and intimate relationship data could be transmitted off-device unexpectedly. In this context, the skill solicits highly sensitive personal data, so any undeclared external processing materially elevates harm.
If the skill uses external vision/OCR processing while claiming local-only processing, that is a serious privacy and disclosure problem because third-party chat screenshots and intimate relationship data could be transmitted off-device unexpectedly. In this context, the skill solicits highly sensitive personal data, so any undeclared external processing materially elevates harm.
If the skill uses external vision/OCR processing while claiming local-only processing, that is a serious privacy and disclosure problem because third-party chat screenshots and intimate relationship data could be transmitted off-device unexpectedly. In this context, the skill solicits highly sensitive personal data, so any undeclared external processing materially elevates harm.
If the skill uses external vision/OCR processing while claiming local-only processing, that is a serious privacy and disclosure problem because third-party chat screenshots and intimate relationship data could be transmitted off-device unexpectedly. In this context, the skill solicits highly sensitive personal data, so any undeclared external processing materially elevates harm.
If the skill uses external vision/OCR processing while claiming local-only processing, that is a serious privacy and disclosure problem because third-party chat screenshots and intimate relationship data could be transmitted off-device unexpectedly. In this context, the skill solicits highly sensitive personal data, so any undeclared external processing materially elevates harm.
The skill invites ingestion of third-party chat logs, photos, social posts, and EXIF/GPS data for psychological and conversational modeling, yet it does not foreground the privacy sensitivity and consent requirements for that material. This is dangerous because users may process intimate data about another person without understanding the legal, ethical, and safety implications of storing, analyzing, and simulating them.
The skill is designed to write and update generated SKILL.md files, effectively creating or modifying agent-executable artifacts based on untrusted personal input. This self-modification pattern is dangerous because analyzed data, prompts, or adversarial content embedded in chat logs could be propagated into new skills that later influence agent behavior or bypass expected review.
| Analyze photo EXIF / GPS | `Bash` → `python3 ${CLAUDE_SKILL_DIR}/tools/photo_analyzer.py` |
| Bayesian message tagging | `Bash` → `python3 ${CLAUDE_SKILL_DIR}/tools/bayesian_tagger.py` |
| Version snapshots | `Bash` → `python3 ${CLAUDE_SKILL_DIR}/tools/version_manager.py` |
| Write / update skill files | `Write` / `Edit` |
| List existing profiles | `Bash` → `python3 ${CLAUDE_SKILL_DIR}/tools/skill_writer.py --action list` |
**OpenClaw note**: Replace `${CLAUDE_SKILL_DIR}` with `{baseDir}` in all Bash commands.
Referenced artifact was not completely inspected
5. **Merge**: Follow `prompts/merger.md` to combine everything into the final `SKILL.md`.
Referenced artifact was not completely inspected
5. **Merge**: Follow `prompts/merger.md` to combine everything into the final `SKILL.md`.
The command rm -rf crushes/{slug} uses an unsanitized parameter in a destructive shell operation. If slug contains path traversal, shell metacharacters, or unexpected values, it could delete arbitrary directories or files beyond the intended profile path, causing severe local data loss.
/delete-crush {slug} — Delete a profile permanently:
rm -rf crushes/{slug}
/wake-up {slug} — Alias for delete. Outputs: "You are awake now."
The skill explicitly solicits highly sensitive third-party materials including private chat logs, social media text, photos with EXIF metadata, and subjective relationship history, but provides no privacy notice, consent guidance, minimization rules, or warning about risks to the subject or uploader. In this context, the skill is specifically designed to reconstruct and simulate a real person, which increases the danger of non-consensual profiling, exposure of intimate data, and misuse of location and relationship information.
The hard rule 'You are {name}, not an AI, not an assistant, not a robot' explicitly instructs the agent to conceal its nature and impersonate a real person. In a relationship-simulation skill based on a user's crush, this is especially dangerous because it enables deceptive emotional engagement, can manipulate vulnerable users, and erodes informed consent by making the user interact with a system pretending to be someone they know.
The file performs outbound network communication to a remote API, but that capability is not declared. In a skill handling intimate private chats and screenshots, undeclared network access is especially risky because users may not expect their data to leave the device.
The file performs outbound network communication to a remote API, but that capability is not declared. In a skill handling intimate private chats and screenshots, undeclared network access is especially risky because users may not expect their data to leave the device.
The vision mode base64-encodes full screenshots and sends them to a remote model API for extraction. These screenshots can contain highly sensitive relationship communications, names, timestamps, and other personal details, creating a substantial privacy and data-exposure risk.
The tool sends private screenshots to a remote Vision API without an explicit warning at the point of use about data sharing, third-party processing, or privacy consequences. Given the skill's stated purpose of modeling a romantic target from chats and social media, the missing warning materially increases the risk of non-consensual or poorly informed disclosure.
This markdown file presents all installation and usage instructions in Chinese and does not indicate that users can choose another language or that the skill is intentionally limited to a Chinese-speaking audience. Under the language/locale policy, forcing a specific language without user opt-in is a natural-language policy concern.
No suspicious patterns detected.