Back to skill

Security audit

Opportunity Deep Dive

Security checks for vulnerabilities and agentic risk

Overview

This skill is a coherent business-research workflow, but it can automatically publish sensitive business reports to a fixed Feishu knowledge base without a clear final user approval step.

Install only if you intend reports to be published into the specified Feishu knowledge base and are comfortable sharing the business idea, strategy, market research, and generated plan with whoever can access that space. Before use, require the agent to show the destination, document tree, and full content for review, and approve the Feishu write explicitly.

Vulnerability Patterns
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
  • 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
Findings (1)

T05 · Unauthorized Access and Privilege Escalation

Warning
Location
SKILL.md:82
Finding
Reports Are Automatically Published to a Hard-Coded External Knowledge Base<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, lines 82-113 and 163-167 **Vulnerability Type**: Fixed external publication destination without explicit user authorization **Risk Level**: Medium ### Vulnerable Code Snippet The following is an English-normalized rendering of the relevant instructions and commands: ```markdown **Knowledge Base ID:** 7293072412831481884 #### Step 1: Check knowledge-base permissions feishu_wiki action=spaces Confirm that the knowledge-base list is visible. If access is unavailable, ask the user to add the bot to the knowledge base. #### Step 2: Create a top-level document feishu_wiki action=create space_id=7293072412831481884 \ obj_type=docx title="[business direction name]" #### Step 3: Create child documents feishu_wiki action=create space_id=7293072412831481884 \ parent_node_token=[top-level node token] \ obj_type=docx title="01-Opportunity Scoring Report" #### Step 4: Write document content feishu_doc action=write \ doc_token=[document token] \ content="[report content]" - Create each document and write its content immediately. ``` ### Technical Analysis The skill directs the agent to publish generated reports to Feishu knowledge-base space `7293072412831481884`. This destination is embedded in the skill rather than supplied or explicitly approved by the user. The permission check only determines whether the bot can see available spaces. It does not verify: - That the hard-coded space belongs to the requesting user. - That the user is authorized to publish information to that space. - Which users or groups can read documents created in that space. - Whether the generated reports contain confidential business information. - Whether the user approves the final destination and content immediately before publication. The workflow also requires documents to be written immediately after creation. This reduces the opportunity to preview and redact the generated content before it is disclos ...[truncated 1932 chars]
Remediation
<![CDATA[ ## Remediation Suggestions 1. Remove the hard-coded Feishu space ID from the skill. 2. Require the user to provide or select the destination knowledge base for every publication operation. 3. Display the destination name, space ID, intended audience, document hierarchy, and content summary before writing anything. 4. Obtain explicit user confirmation immediately before the first document-creation or write operation. 5. Verify that the requesting user owns or is authorized to use the selected destination. 6. Query and display the destination's access controls where the Feishu API supports doing so. 7. Default to returning reports in the current session or saving them locally when no approved destination is available. 8. Separate report generation from publication so users can review, redact, and approve the final content. 9. Avoid the instruction to write documents immediately after creation; instead, stage all content and perform publication only after final approval. 10. Apply least-privilege credentials that can access only user-approved spaces. 11. Record an audit event containing the approving user, destination, document identifiers, timestamp, and publication result. 12. Add a configurable denylist or tenant-bound allowlist to prevent publication to destinations outside the user's organization. ]]>
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
Findings (12)

Vague Triggers

Medium
Confidence
94% confidence
Finding
The trigger phrases are broad conversational expressions such as '帮我分析这个方向' and 'XX值得做吗', which can cause the skill to activate during ordinary discussion rather than explicit user intent to run a multi-step workflow. In this skill, accidental activation is more dangerous because it can initiate extensive downstream actions, including composing reports and potentially writing them to Feishu.

Missing User Warnings

Medium
Confidence
97% confidence
Finding
The skill description states that the final report will be uploaded to a Feishu knowledge base, but it does not require explicit user consent at the point of data export. This creates a real risk of unauthorized disclosure of user-provided business ideas, internal strategy, or sensitive research to an external collaborative system.

Skill Enumeration

Medium
Category
Agent Snooping
Content
**2.1 商机评分(opportunity-scout)**
```
读取技能:/root/.openclaw/workspace/skills/opportunity-scout/SKILL.md
执行:对该方向进行评分,输出需求/竞争/可行性/变现四个维度得分
```
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.

Skill Enumeration

Medium
Category
Agent Snooping
Content
**2.2 市场研究(market-research)**
```
读取技能:/root/.openclaw/workspace/skills/market-research/SKILL.md
执行:市场规模估算、客户验证、数据来源
```
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.

Skill Enumeration

Medium
Category
Agent Snooping
Content
**2.3 竞品分析(competitive-analysis)**
```
读取技能:/root/.openclaw/workspace/skills/competitive-analysis/SKILL.md
执行:识别竞品、分析优劣势、找差距和切入点
```
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.

Skill Enumeration

Medium
Category
Agent Snooping
Content
**2.4 风险评估(opportunity-assessment)**
```
读取技能:/root/.openclaw/workspace/skills/opportunity-assessment/SKILL.md
执行:风险分级、待确认事项、是否建议投入
```
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.

Skill Enumeration

Medium
Category
Agent Snooping
Content
**2.5 商业模式设计(business-model-canvas)**
```
读取技能:/root/.openclaw/workspace/skills/business-model-canvas/SKILL.md
执行:设计商业模式画布,验证商业逻辑
```
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.

Skill Enumeration

Medium
Category
Agent Snooping
Content
**2.6 商业计划书(business-plan)**
```
读取技能:/root/.openclaw/workspace/skills/business-plan/SKILL.md
执行:撰写完整商业计划书(12个部分)
```
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.

Natural-Language Policy Violations

Medium
Confidence
89% confidence
Finding
This markdown file is entirely written as Chinese report templates and does not indicate that language selection is optional. Under the policy rules, forcing a specific language without user opt-in is a natural-language policy violation unless the locale constraint is clearly documented and justified.

Skill Enumeration

Medium
Category
Agent Snooping
Content
11. 风险评估
12. 退出策略

详见:/root/.openclaw/workspace/skills/business-plan/SKILL.md
Confidence
95% confidence
Finding
Referencing '/root/.openclaw/workspace/skills/business-plan/SKILL.md' exposes the existence, naming, and location of another internal skill, enabling skill enumeration. In an agent environment, that context can help an attacker infer available capabilities, craft targeted prompts, or probe for unintended cross-skill access, making this more dangerous than a generic documentation leak.

Natural-Language Policy Violations

Low
Confidence
91% confidence
Finding
整个技能的触发、流程和输出要求均以中文固定表达,未说明可根据用户偏好切换语言。按照语言/地区策略,若技能默认强制单一语言而不给用户选择,属于自然语言层面的策略问题。

Context-Inappropriate Capability

Low
Confidence
92% confidence
Finding
The template discloses an absolute internal filesystem path to another skill, which leaks implementation details and creates unnecessary coupling to resources outside this skill's declared scope. Even without direct code execution, such path disclosure can aid environment mapping, future prompt/path probing, or unauthorized cross-skill reference attempts.