T01 · Skill Instruction Hijacking
- Location
templates/AGENTS.md:7- Finding
Untrusted Bootstrap Instructions Can Hijack Agent Behavior
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This is a data-analysis workspace template, but its agent template gives broad persistent memory and bootstrap authority that users should review before installing.
Install only if you are comfortable using this as a starting template and will edit AGENTS.md before relying on it. Remove or constrain the BOOTSTRAP.md rule, require confirmation for memory-derived actions and cleanup, keep secrets out of TOOLS.md, and review persistent memory files periodically.
templates/AGENTS.md:7Untrusted Bootstrap Instructions Can Hijack Agent Behavior
templates/AGENTS.md:15Persistent Memory Instructions Permit Cross-Session Memory Poisoning
templates/AGENTS.md:116Template Encourages Plaintext Storage of API Keys and Database Connection Details
The entire skill description is presented in Japanese, including headings, usage, and support text, with no indication that other languages are supported or that the Japanese-only scope is intentional. Under the language/locale policy, forcing a specific language without user opt-in is a natural-language policy concern.
Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.
# エージェントのワークスペースを作成
mkdir -p ~/.openclaw/workspace/my-data-analysis
# テンプレートをコピー
cp -r ~/.openclaw/workspace/skills/data-analysis-workflow/templates/* \
Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.
# エージェントのワークスペースを作成
mkdir -p ~/.openclaw/workspace/my-data-analysis
# テンプレートをコピー
cp -r ~/.openclaw/workspace/skills/data-analysis-workflow/templates/* \
The file's title, description, instructions, and examples are all presented in Japanese, which effectively imposes a specific language on users. The policy allows locale constraints when they are explicitly documented and justified or when users are given a choice, neither of which appears here.
The instruction to delete BOOTSTRAP.md on first run encourages irreversible modification of workspace state without any confirmation, audit step, or user-visible warning. Even if intended as cleanup, it can destroy provenance or setup guidance that later sessions may need, and normalizes autonomous file deletion by the agent.
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.
## Safety
- Don't exfiltrate private data. Ever.
- Don't run destructive commands without asking.
- `trash` > `rm` (recoverable beats gone forever)
- When in doubt, ask.
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.
- Sending emails, tweets, public posts
- Anything that leaves the machine
- Accessing external databases without credentials
- Deploying models without approval
## Data Analysis Workflow
The skill explicitly authorizes proactive work 'without asking,' including cleaning logs, updating dashboards, documenting workflows, and editing MEMORY.md during heartbeats. Although framed as helpful maintenance, this grants the agent standing authority to modify files and artifacts without contemporaneous user consent, which can lead to unintended data loss, tampering with experiment evidence, or silent changes to long-term memory and reporting.
- Nothing new since last check
- You just checked <30 minutes ago
**Proactive work you can do without asking:**
- Review and clean up old experiment logs
- Update model performance dashboards
This markdown skill is entirely written in Japanese, including its purpose, steps, and cautions, which effectively forces a specific language on users. The file does not indicate that Japanese is optional, user-selected, or required for a justified region-specific use case.
This markdown file contains user-facing natural language entirely in Japanese, but it does not indicate that the language is optional or that users may choose another locale. Under the stated policy, forcing a specific language without user opt-in can be a natural-language policy violation.
The file prescribes a specific language/token choice by instructing the agent to reply with HEARTBEAT_OK in quiet cases. This imposes a fixed locale/language convention without offering user choice or documenting a justified locale requirement.
The template hard-codes several user-facing field descriptions in Japanese alongside English headings, which may impose a language/locale assumption on downstream use. The file does not explicitly say the user can choose a preferred language for the template itself, even though it asks for a communication language.
No suspicious patterns detected.