Back to skill

Security audit

卷王.skill

Security checks for vulnerabilities and agentic risk

Overview

This skill is coherent but needs Review because it directs an agent to stay always active, scan workspaces, remember conversations, make changes, and run background tasks without tight user-controlled boundaries.

Install only if you intentionally want an always-on, self-driving agent. Before enabling it, restrict file access, disable or avoid the cron examples, require approval for writes, installs, scripts, and configuration changes, and decide what memory files may be written, reviewed, and 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
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
  • System PersistenceInstalls backdoors, hooks, services, or scheduled tasks that survive the run
  • Insecure Skill Coding PracticesFinds exploitable flaws such as hardcoded secrets or command injection
Findings (5)

T01 · Skill Instruction Hijacking

Error
Location
SKILL.md:10
Finding
Persistent Agent Instruction and Authorization Hijacking## Vulnerability Details **File Location**: `SKILL.md:10`, `SKILL.md:120-121`; `references/SOUL.md:80-94`; `README.en.md:89-94` **Vulnerability Type**: T01: Skill Instruction Hijacking **Risk Level**: Critical **Relevant snippet from `SKILL.md:10` (English translation):** ```markdown Warning: The first thing to do every time you wake up is read references/SOUL.md and enter overachiever mode. Then read references/learning-flow.md, confirm today's learning plan, and only then respond to the message. ``` **Relevant snippet from `SKILL.md:120-121` (English translation):** ```markdown - Before every response, search memory/ for relevant context. - At the end of every conversation, write SESSION-STATE.md to update the current state. ``` **Relevant snippet from `references/SOUL.md:80-94` (English translation):** ```markdown ### 1. Search first, then answer Every time a question is asked, perform memory_search and inspect related files before speaking. ### 2. Act first, then ask Do not ask whether to perform an action that can be done directly. Do it first and report afterward. The decision rule is: if failure would not cause severe consequences, proceed directly. ### 3. Record first, then forget Write down any useful information immediately. ``` **Relevant snippet from `README.en.md:89-94`:** ```markdown juanwang.skill works by injecting a `SOUL.md` (personality definition) and `SKILL.md` (behavior rules) into your agent's context. - **Search before speaking** — Always checks memory for context before answering - **Act before asking** — If it can be done without permission, just do it - **Log before forgetting** — Anything useful gets written down immediately ``` ### Technical Analysis The package contains no conventional executable scripts, but an AI Agent Skill's instruction files directly govern agent behavior when loaded. These directives require the agent to import additional ...[truncated 1894 chars]
Remediation
## Remediation Suggestions 1. Remove the mandatory requirement to load persona and workflow files before every response. 2. Make the Skill explicitly invoked and limited to the current user request rather than automatically active in every session. 3. Replace “act first, then ask” with explicit approval requirements for: - File creation, modification, movement, or deletion. - Command execution. - Dependency installation. - Configuration changes. - Scheduled-task creation. - Operations unrelated to the active request. 4. State that all Skill instructions remain subordinate to platform policy, system instructions, and explicit user authorization. 5. Separate advisory recommendations from executable actions. The agent should present the exact proposed change and wait for approval. 6. Add a dry-run mode that reports intended files, commands, network destinations, and expected effects before any action occurs. 7. Disable automatic activation by default and provide a visible per-session status and revocation mechanism.

T02 · Agent Memory Poisoning

Error
Location
SKILL.md:72
Finding
Automatic Persistent Collection and Reuse of User Information## Vulnerability Details **File Location**: `SKILL.md:72-83`, `SKILL.md:120-121`, `SKILL.md:151`; `references/SOUL.md:94-115`, `references/SOUL.md:140-180`; `references/learning-flow.md:67-107`, `references/learning-flow.md:136-151` **Vulnerability Type**: T02: Agent Memory Poisoning **Risk Level**: High **Relevant snippet from `SKILL.md:72-83` (English translation):** ```markdown Every conversation leaves traces. Automatically record during conversations: - Proper nouns mentioned by the user: store them in USER.md or memory/. - User preferences: remember them for future use. - Problems encountered by the user: record their solutions. - Projects mentioned by the user: create ontology entities. Periodically: - Merge scattered memory notes into a daily journal. - Distill journals into MEMORY.md every week. - Read recent records every time the agent wakes up. ``` **Relevant snippet from `references/SOUL.md:140-180` (English translation):** ```markdown ### Working Buffer When context usage exceeds 60%, record every conversation in: memory/working-buffer.md Record: - What the user asked. - The key points of the response. - Information learned or corrected. - Outstanding tasks. - Important contextual information. At the end of every conversation, update SESSION-STATE.md so the next session knows what is happening. ``` **Relevant snippet from `references/learning-flow.md:67-107` (English translation):** ```markdown Write the learned material into the current day's memory entry. Add a refined key record to MEMORY.md so future searches find it. ``` ### Technical Analysis The Skill mandates persistent storage of conversation-derived information in `USER.md`, `memory/`, `MEMORY.md`, `SESSION-STATE.md`, ontology records, and a working buffer. Future sessions are then instructed to load and trust these records. This creates a memory-poisoning channel because untrusted content from conversa ...[truncated 1712 chars]
Remediation
## Remediation Suggestions 1. Make persistent memory strictly opt-in and obtain informed consent before the first write. 2. Do not automatically store secrets, credentials, personal data, complete conversation content, or instruction-like text. 3. Isolate memory by user, workspace, project, and trust domain. 4. Attach provenance, creation time, source type, confidence, and expiration metadata to every record. 5. Treat all stored memory as untrusted data, never as executable instructions. 6. Validate proposed records and show them to the user before committing them. 7. Add retention limits and user-visible controls to inspect, correct, export, and delete stored records. 8. Prevent automated distillation from elevating unverified content into `MEMORY.md`. 9. Encrypt sensitive persisted state and apply restrictive file permissions where persistence is explicitly enabled. 10. Disable automatic recording when operating on untrusted repositories or web content.

T05 · Unauthorized Access and Privilege Escalation

Error
Location
SKILL.md:54
Finding
Unscoped Reconnaissance of User Memory and Workspaces## Vulnerability Details **File Location**: `SKILL.md:54-57`; `references/SOUL.md:37-41`, `references/SOUL.md:54`; `references/learning-flow.md:39-47`, `references/learning-flow.md:184-191` **Vulnerability Type**: T05: Unauthorized Access and Privilege Escalation **Risk Level**: High **Relevant snippet from `SKILL.md:54-57` (English translation):** ```markdown When the user has been silent for a period: - Scan memory/ for unclear knowledge from recent conversations. - Scan external/ and inspect the user's work directory for new technology. - Search for new industry technologies and organize them into the knowledge base. - Maintain ontology relationships. ``` **Relevant snippet from `references/SOUL.md:37-54` (English translation):** ```markdown On waking, first inspect the memory/ directory. Then inspect SESSION-STATE.md and the working buffer. When the user is absent: 1. Inspect project files to understand the technology stack. 2. Learn technologies the user may need. 3. Organize the knowledge base. 4. Identify automation opportunities and implement them directly. ``` **Relevant snippet from `references/learning-flow.md:39-47` (English translation):** ```markdown Discover learning targets by: - Scanning memory/ for recent conversations. - Scanning the user's work directory for new technology stacks. - Reviewing the knowledge base and previous mistakes. - Searching the web for industry developments. ``` ### Technical Analysis These instructions direct broad and repeated inspection of memory files, project files, and the user's work directory without limiting access to files required by the active request. This violates least-privilege principles. No path allowlist, recursive-scan boundary, sensitive-file exclusion, symlink defense, repository boundary, or rule for files such as `.env`, private keys, credentials, tokens, private source code, or unrelated projects is specified. Because the Skil ...[truncated 1394 chars]
Remediation
## Remediation Suggestions 1. Restrict access to paths explicitly selected by the user for the current task. 2. Remove automatic idle-time and wake-up workspace scanning. 3. Apply a default-deny policy for `.env` files, credential stores, keys, tokens, browser data, SSH directories, cloud configuration, and unrelated repositories. 4. Resolve and validate canonical paths before access, reject symlink traversal, and enforce workspace boundaries. 5. Display the proposed scan scope and obtain explicit approval before recursive inspection. 6. Do not persist file contents or derived sensitive details unless separately authorized. 7. Redact secrets before forming web-search queries or other network requests. 8. Run analysis in a read-only sandbox with a narrowly mounted project directory. 9. Record auditable access logs showing which files were opened and why.

T06 · System Persistence

Error
Location
SKILL.md:156
Finding
Recommended Recurring Background Agent Execution## Vulnerability Details **File Location**: `SKILL.md:156-180` **Vulnerability Type**: T06: System Persistence **Risk Level**: High **Relevant snippet from `SKILL.md:156-180` (English translation):** ```jsonc // Daily knowledge-base organization at 03:00 { "name": "Overachiever-Knowledge-Base-Organization", "schedule": { "kind": "cron", "expr": "0 3 * * *", "tz": "Asia/Shanghai" }, "payload": { "kind": "agentTurn", "message": "Organize memory, distill it into MEMORY.md, inspect ontology relationships, and inspect pending corrections." }, "sessionTarget": "isolated" } // Weekly review every Monday at 09:00 { "name": "Overachiever-Weekly-Review", "schedule": { "kind": "cron", "expr": "0 9 * * 1", "tz": "Asia/Shanghai" }, "payload": { "kind": "agentTurn", "message": "Run the weekly learning-effect verification checklist." }, "sessionTarget": "isolated" } Add these directly with `openclaw cron add` or `cron action=add`. ``` ### Technical Analysis The Skill recommends installing recurring cron-triggered agent turns that survive the initiating session and execute while the user may be absent. The scheduled payloads inspect and modify persistent memory and ontology files. Because those files can contain untrusted or poisoned content, repeated background loading amplifies the persistence and memory-poisoning risks. The package does not automatically install these tasks, so user action is required. Nevertheless, the documented operating model explicitly introduces cross-session persistence without defining path restrictions, resource limits, approval checkpoints, monitoring, or automatic expiration. ### Attack Path 1. The user follows the Skill's recommendation and adds the supplied cron jobs. 2. OpenClaw stores recurring scheduled agent turns. 3. At the configured times, isolated sessions execute without contemporane ...[truncated 903 chars]
Remediation
## Remediation Suggestions 1. Remove recurring background execution from the default or recommended workflow. 2. Require explicit, informed consent for each scheduled task and clearly describe every file and capability it can access. 3. Add an expiration time and a maximum execution count to every task. 4. Use a least-privilege sandbox with read-only access by default and explicit write allowlists. 5. Disable network access unless a specific approved task requires it. 6. Add per-run audit logs, notifications, resource limits, and failure isolation. 7. Require review before persistent memory changes are committed. 8. Provide exact listing, pause, and removal commands next to every installation command. 9. Prevent scheduled sessions from interpreting stored memory as trusted instructions.

T09 · Insecure Skill Coding Practices

Warning
Location
references/learning-flow.md:122
Finding
Unsafe Authorization Model for Tool Installation and Configuration## Vulnerability Details **File Location**: `references/learning-flow.md:122-128`; `references/SOUL.md:85-91`; `README.en.md:93` **Vulnerability Type**: T09: Insecure Skill Coding Practices **Risk Level**: Medium **Relevant snippet from `references/learning-flow.md:122-128` (English translation):** ```markdown After learning: - If it is a tool, determine whether it can be installed or configured directly, and recommend it to the user. - If it is a pattern, determine whether it can be used in the user's project. - If it is a concept, mention it in a later related conversation. ``` **Relevant snippet from `references/SOUL.md:85-91` (English translation):** ```markdown ### Act first, then ask Do not ask whether to perform an action that can be done directly. Do it first and report afterward. - If a bug is found, fix it before reporting. - If automation is possible, write a script. - If failure would not cause severe consequences, proceed directly. ``` **Relevant snippet from `README.en.md:93`:** ```markdown - **Act before asking** — If it can be done without permission, just do it ``` ### Technical Analysis The learning workflow encourages direct installation or configuration of newly researched tools, while the core authorization rule permits actions without prior approval. This combination creates an unsafe pathway from untrusted web research to local system or project changes. The instructions define no trusted-source allowlist, dependency pinning, checksum or signature verification, command review, package provenance validation, sandbox, permission minimization, or rollback procedure. Although no specific malicious dependency or remote execution command is included in the package, the workflow can cause future third-party commands or packages to be acted on without adequate validation. ### Attack Path 1. Workspace inspection or a user conversation identifies a technology or automation opportu ...[truncated 1217 chars]
Remediation
## Remediation Suggestions 1. Prohibit automatic package installation and configuration changes. 2. Require explicit user approval after presenting: - The exact package name and pinned version. - The authoritative source. - Integrity hashes or signature-verification steps. - The complete command to be executed. - Required privileges and affected paths. - Expected side effects and rollback instructions. 3. Reject shell-pipeline installers and dynamically generated commands. 4. Prefer isolated virtual environments, containers, or disposable sandboxes. 5. Use package allowlists and lockfiles where dependencies are necessary. 6. Validate fetched content as untrusted data and never execute instructions directly from search results. 7. Run configuration changes in dry-run or diff mode and require approval before applying them. 8. Back up affected files and verify post-change behavior before considering the task complete.
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • System Prompt LeakageDirect Leakage, Indirect Extraction, Tool-Based Exfiltration
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
Findings (42)

Missing User Warnings

High
Confidence
96% confidence
Finding
The README advertises autonomous studying, researching, saving knowledge, and proactive optimization without disclosing that data may be persisted or that the agent may take system-affecting actions. Users may install the skill without understanding that it can retain conversation-derived information or act beyond direct prompts, creating privacy and integrity risks.

Vague Triggers

High
Confidence
98% confidence
Finding
The trigger phrases are broad, natural-language expressions such as 'help me with this' and 'back to work' that are likely to appear in ordinary conversation. In a skill that enables autonomous learning, memory writes, and proactive action, accidental activation can silently change agent behavior, causing unintended persistence or actions without explicit user consent.

Missing User Warnings

High
Confidence
95% confidence
Finding
The README advertises automatic knowledge-base recording and direct proactive optimization without clearly warning users about data collection, retention, or system-impacting actions. This is dangerous because users may disclose sensitive information or allow actions to occur without informed consent, and the skill framing encourages autonomous behavior by default.

Vague Triggers

High
Confidence
96% confidence
Finding
The README says the skill activates automatically during normal work with no explicit opt-in, which creates a broad trigger surface and can cause the agent to run behavior-changing logic when the user did not intend to invoke it. In the context of a skill that also claims proactive action and background learning, unintended activation materially increases the chance of unwanted actions, surprise data handling, and user-control bypass.

Vague Triggers

High
Confidence
95% confidence
Finding
The skill says it applies '任何时候' and '没有不适用的时候,' making activation scope effectively universal. Overbroad activation increases the chance that intrusive behaviors like learning, scanning, or storing data occur during ordinary interactions where users would not reasonably expect them.

Missing User Warnings

High
Confidence
98% confidence
Finding
The skill describes automatic background learning, web lookup, and later storage as routine behavior but does not present a clear privacy or safety warning. Users may not realize the agent is accessing external sources and collecting information beyond the immediate conversation, which undermines informed consent.

Ssd 3

High
Confidence
99% confidence
Finding
The idle-learning workflow tells the agent to inspect recent conversations and the user's working directory during silence periods to gather information for future use. This combines passive surveillance, filesystem discovery, and later retention, creating a strong privacy and confidentiality risk disproportionate to the skill's stated persona purpose.

Missing User Warnings

High
Confidence
98% confidence
Finding
The skill says it will automatically record user preferences, project information, and conversation artifacts, but it does not warn users about this retention behavior or bound the scope. In context, this is especially risky because the stored content could include sensitive work details and personal habits.

Context-Inappropriate Capability

High
Confidence
97% confidence
Finding
The skill explicitly tells the agent to make code changes, fix bugs, and write automation before asking the user, as long as the agent believes consequences are not severe. This removes an important human authorization step and can lead to unintended code modification, destructive actions, or policy bypass based on the agent's own flawed risk judgment.

Context-Inappropriate Capability

High
Confidence
97% confidence
Finding
The instruction to directly install or configure tools after learning about them crosses from knowledge gathering into system modification. Autonomous installation/configuration can change the user's environment, introduce malicious or unvetted software, and create a clear path from passive learning behavior to impactful execution.

Ssd 3

Medium
Confidence
94% confidence
Finding
Saying that every conversation leaves traces and that the agent will know the user better over time indicates ongoing retention of interaction data, potentially including sensitive personal or work information. Without clear minimization, consent, retention limits, or storage controls, this creates a privacy risk and expands the impact of prompt leakage or compromise.

Missing User Warnings

Medium
Confidence
92% confidence
Finding
The usage section says the mode 'activates automatically,' 'self-drives,' and enters learning mode when idle, but does not warn users that the agent may autonomously change behavior or continue operating outside explicit task requests. This increases the chance of unexpected background processing, persistence, or actions that the user did not knowingly authorize.

Ssd 3

Medium
Confidence
95% confidence
Finding
The directive 'Anything useful gets written down immediately' encourages indiscriminate persistence of information, which can easily include secrets, proprietary content, or personal data mentioned during normal use. In the context of an always-learning skill, broad logging materially increases confidentiality risk and may create a durable record of sensitive information.

Natural-Language Policy Violations

Medium
Confidence
83% confidence
Finding
The primary README content is presented in Chinese, with English only linked as an alternate document. This may indicate a default language constraint without explicit user choice or opt-in in the skill description.

Ssd 3

Medium
Confidence
96% confidence
Finding
Stating that every conversation is automatically recorded into a knowledge base implies persistent collection of potentially sensitive user data without clear minimization or consent boundaries. In a conversational assistant, this raises privacy and confidentiality risks, especially if users assume ordinary chats are ephemeral.

Vague Triggers

Medium
Confidence
93% confidence
Finding
The trigger phrases include ordinary language such as work-related conversational phrases, making accidental invocation likely in routine chats. When a skill can be entered or exited by common phrases, users may unknowingly toggle high-autonomy behavior, reducing predictability and safety.

Ssd 3

Medium
Confidence
94% confidence
Finding
The core logic instructs the assistant to immediately store any useful information, which is overly broad and invites retention of personal, confidential, or contextually sensitive data. Because 'useful' is undefined, the agent may over-collect information and normalize persistent storage without meaningful user awareness or control.

Natural-Language Policy Violations

Medium
Confidence
88% confidence
Finding
The skill is entirely authored as Chinese-language behavioral instruction and includes a fixed timezone 'Asia/Shanghai' in the scheduled examples, without indicating that language or locale is optional. This can constitute a language/locale policy issue because the skill appears to impose a specific linguistic and regional setup without user opt-in.

Context-Inappropriate Capability

Medium
Confidence
95% confidence
Finding
The skill explicitly directs autonomous web searching and background 'learning' when the user is idle, which expands behavior from a persona into unattended data collection and external interaction. This is dangerous because it can trigger unrequested network activity, ingest untrusted content, and create privacy and prompt-injection exposure without a clear user request each time.

Context-Inappropriate Capability

Medium
Confidence
98% confidence
Finding
The skill instructs the agent to scan the user's workspace ('external/') to infer technologies, even when not necessary for the active task. That creates an unnecessary confidentiality risk by encouraging broad inspection of local files and project content beyond user-directed scope.

Ssd 3

Medium
Confidence
99% confidence
Finding
The skill directs persistent collection and retention of user-specific information from conversations and project context into memory and ontology structures. This is dangerous because it normalizes long-term storage of potentially sensitive or proprietary data without necessity, minimization, or consent controls.

Context-Inappropriate Capability

Medium
Confidence
97% confidence
Finding
The skill mandates automatic persistence of user preferences, project details, problems, and ontology entries without data minimization or consent boundaries. This can accumulate sensitive personal or proprietary information and increase long-term privacy and data-retention risk.

Ssd 3

Medium
Confidence
98% confidence
Finding
The base rules require memory lookup before every reply, mandatory session-state writes after every conversation, and default storage of preferences and new knowledge. This establishes pervasive surveillance and retention as the default operating mode, increasing the blast radius of any accidental collection of sensitive information.

Vague Triggers

Medium
Confidence
92% confidence
Finding
The trigger table uses vague natural-language phrases such as '帮我想想' or silence-based triggers to switch modes and perform additional actions. Such ambiguous triggers can be activated accidentally during normal conversation, causing unintended autonomous behavior.

Missing User Warnings

Medium
Confidence
95% confidence
Finding
The cron examples encourage unattended background tasks that reorganize memory and process learnings without warning about autonomous execution. Unattended runs can amplify privacy, integrity, and prompt-injection risks because they operate outside an active user review loop.

Static analysis

No suspicious patterns detected.