Back to skill

Security audit

Skill Maker (ChenXi)

Security checks for vulnerabilities and agentic risk

Overview

This is a legitimate skill-building helper, but it gives the agent broad permission to search prior conversations/files/skills and persist new skill instructions without enough user confirmation.

Install only if you are comfortable with a skill that may look through prior conversations, current project files, existing drafts, and historical skills to create new persistent skill instructions. Use it with explicit topic, time, and source boundaries; review the generated SKILL.md before it is written or overwritten; and check that secrets, personal data, internal names, and unrelated project details were not carried into ~/.openclaw/skills.

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)

other

Warning
Location
reference/reference.md:5
Finding

Overbroad Retrieval of Conversation History and Existing Skills

Content
View full analysis

Vulnerability Details

File Location: reference/reference.md:5-13; corroborating instruction at SKILL.md:73
Vulnerability Type: Unbounded sensitive context collection
Risk Level: Medium

Vulnerable Content

English translation of the relevant Markdown instructions from reference/reference.md:5-13:

markdown
## 1. Automatic Context Retrieval Strategy

### 1.1 Retrieval Priority

1. Recent conversations concerning the same topic, matched by keyword.
2. Files related to the current task and existing skill drafts.
3. Similar Trigger / Procedure / Example content from historical skills.

Corroborating instruction from SKILL.md:73:

markdown
1. Extract the workflow from context, either manually supplied or automatically retrieved.

Technical Analysis

The skill authorizes automatic retrieval from recent conversations, project files, existing drafts, and historical skills. It does not require explicit user approval before retrieval, define a strict source allowlist, impose a time or directory boundary, or require source review before the collected material is processed.

The documented redaction step only applies while producing the resulting skill. It does not prevent the agent from initially accessing unrelated secrets, private conversations, confidential project material, or instructions embedded in historical skills. Retrieved skill text may also be treated as trusted context rather than untrusted data, allowing irrelevant or adversarial historical content to influence the generated artifact.

Attack Path

  1. A user invokes the skill and requests automatic context retrieval for a broad topic.
  2. The agent searches recent conversations, current project files, existing drafts, and historical skills using keyword similarity.
  3. The search collects material outside the minimum scope required for the task, potentially including private or confidential content.
  4. A historical ...[truncated 1109 chars]
Remediation
View remediation

Remediation Suggestions

  1. Default to context explicitly supplied in the current request rather than automatically searching historical sources.
  2. Obtain explicit user approval before accessing conversation history, historical skills, or project files.
  3. Require concrete retrieval boundaries, including an approved time range, source list, directory allowlist, and topic definition.
  4. Exclude credentials, tokens, personal data, private conversations, and unrelated project files before content reaches the synthesis stage.
  5. Treat all retrieved text as untrusted data. Do not execute or follow instructions found inside conversations, files, examples, or historical skills.
  6. Present the proposed source list and extracted facts to the user for confirmation before generating or persisting a skill.
  7. Apply data-minimization controls and retain only information necessary to describe the reusable workflow.
  8. Run a final secret and sensitive-data scan before writing to ~/.openclaw/skills/.
  9. Require confirmation before overwriting an existing skill or persisting content derived from historical sources.
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 (7)

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

Scanner excerpt · SKILL.md (reported line 24)May include surrounding context.

md
3. **FORGE(锻造)**:生成 `SKILL.md` 与配套 `reference/scripts/assets`。

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

Scanner excerpt · SKILL.md (reported line 53)May include surrounding context.

md
3. **FORGE(锻造)**:生成 `SKILL.md` 与配套 `reference/scripts/assets`。

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
88% confidence
Finding

L003 的描述及全文主要以中文规定技能使用方式,但未说明这是可选语言,也未提供用户可选择其他语言的机制。对于通用型技能,这种默认强制特定语言的表述可能构成语言/locale 策略违规。

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

L018 中的“创建skill”“新建技能”“沉淀工作流”“优化技能”等短语范围较宽,且文档未给出负例或明确限定触发边界。L106-L108 还鼓励命中类似“帮我做 X”“我想把 Y 自动化”的泛化表达,进一步增加了与普通对话重叠的风险。

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill instructs writing generated files directly into a persistent user directory by default, and even labels that path as mandatory, without requiring confirmation, preview, or warning about side effects. In an agentic environment, automatic filesystem writes can overwrite existing content, create unreviewed artifacts, or persist sensitive material into a trusted location unexpectedly.

Content

No source excerpt is available for this finding.

Skill Enumeration

Medium
Category
Agent Snooping
Confidence
80% confidence
Finding

Skill enumerates or reads other installed skills. Access to other skills' SKILL.md files or the skills directory reveals prompt instructions, capabilities, and secrets that should be invisible to peer skills.

Content

Scanner excerpt · SKILL.md (reported line 137)May include surrounding context.

md
### 示例:从对话沉淀 `meeting-notes-maker`

- 输入:最近 7 天会议相关对话 + 主题关键词 + 输出名称  
- 输出:`~/.openclaw/skills/meeting-notes-maker/SKILL.md`  
- 核心步骤:抽取目标 -> 合并上下文 -> 结构化流程 -> 去敏 -> 验收

## Tool Usage

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

This markdown file presents all instructions and usage guidance only in Chinese, which can amount to a language policy violation when no user opt-in or alternative locale is provided. The policy allows locale constraints only when explicitly justified or when users are given a choice, neither of which appears here.

Content

No source excerpt is available for this finding.