Back to skill

Security audit

Multi Model Orchestrator

Security checks for vulnerabilities and agentic risk

Overview

The skill is a coherent multi-agent orchestrator, but it gives agents broad automatic execution paths, including parallel work and dependency installation, without enough user confirmation or scoping.

Review this skill before installing if you do not want agents to enter autonomous, parallel, or autopilot workflows from broad phrases. Only use it in a sandboxed project environment, and require explicit approval before any dependency installation or package-manager command.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • 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)

T08 · Insecure Dependencies

Warning
Location
workflows/ralph.md:50
Finding

Automatic Installation of Untrusted Dependencies

Content
View full analysis

Vulnerability Details

File Location: workflows/ralph.md, lines 50–54
Vulnerability Type: Supply-chain compromise through automatic dependency installation
Risk Level: Medium

Vulnerable Code Snippet:

markdown
## 自动修复策略
1. 编译错误 → 自动修复语法
2. 测试失败 → 分析原因并修复
3. 依赖缺失 → 自动安装
4. 逻辑错误 → 重新分析并修复

The relevant instruction at line 53 translates to: “Missing dependency → install automatically.”

Technical Analysis

The persistent execution workflow directs the Agent to install dependencies automatically when it determines that a dependency is missing. It does not require:

  • Explicit user approval before installation
  • Validation against a reviewed dependency manifest
  • Use of an existing lockfile
  • Exact version pinning
  • Package-name verification
  • Registry or source allowlisting
  • Package integrity or signature verification
  • Disabling package-manager lifecycle scripts

An attacker-controlled repository could contain a crafted import, dependency declaration, build error, or test failure that names a malicious or typo-squatted package. When the workflow attempts to repair the reported missing dependency, it may install the attacker-controlled package.

Many package managers execute installation hooks with the permissions of the invoking process. Therefore, package installation can become a code-execution path even if the installed dependency is never imported by the application.

Attack Path

  1. An attacker prepares a repository containing a reference to a nonexistent, typo-squatted, dependency-confusion, or otherwise attacker-controlled package.
  2. The user asks the Agent to process the repository through the $ralph persistent completion workflow.
  3. A build, test, or static-analysis step reports the package as missing.
  4. The Agent follows workflows/ralph.md:53 and installs the dependency without obtaining explicit approval or validating its provenance.
  5. The package manager retrieves the attacker-controlled package.
  6. A malici ...[truncated 928 chars]
Remediation
View remediation

Remediation Suggestions

Replace automatic dependency installation with a controlled approval and verification process:

  1. Require explicit user confirmation before running any package-manager installation command.
  2. Display the exact package name, version, registry, resolved URL, and proposed command before approval.
  3. Only install dependencies declared in a reviewed project manifest.
  4. Require and enforce a committed lockfile with integrity metadata.
  5. Pin dependencies to exact reviewed versions rather than ranges or latest releases.
  6. Restrict package resolution to approved registries and reject unexpected Git, URL, local-path, or alternate-registry sources.
  7. Detect package-name similarity, dependency-confusion conditions, and unexpected namespace changes.
  8. Verify package integrity, signatures, or provenance attestations where the ecosystem supports them.
  9. Disable lifecycle scripts during initial installation where practical, then review any required scripts before allowing execution.
  10. Run package installation in a restricted sandbox with minimal filesystem access, no unnecessary credentials, and limited network access.
  11. Change the workflow instruction to state that missing dependencies must be reported to the user rather than installed automatically.

A safer replacement for line 53 would be:

markdown
3. Missing dependency → identify the exact package and version, verify it against the reviewed manifest and lockfile, and request explicit user approval before installation
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (21)

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The documented trigger phrases are broad, natural-language terms such as '前端', 'team', 'parallel', '全自动', and common request patterns that can easily appear in ordinary user prompts. In an orchestrator skill, this increases the chance of accidental activation of powerful multi-agent, autonomous, or review workflows without explicit user intent, which can lead to unintended task execution, scope expansion, or unsafe delegation.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The trigger list includes short, generic terms such as '编排', 'team', 'parallel', and '并行' that are likely to appear in ordinary user requests unrelated to this skill. In an orchestration skill, accidental invocation is more dangerous than usual because it can redirect execution into multi-agent, autopilot, or parallel workflows the user did not explicitly request.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The trigger mapping converts common natural-language phrases like '做完它', '规划一下', '同时做', and '有 bug' into workflow activation without clear exclusion criteria or user confirmation. This raises the risk that normal conversation is interpreted as a control command, causing unintended task delegation, persistent execution, or automated review loops.

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 291)May include surrounding context.

md
| **frontend-design** | UI 品质标准、AI 美学红线、双主题、移动优先 | `$frontend` 模式 + `$code-review` 中的 UI 审查 |

详细参考:
- 调试完整流程: `~/.openclaw/skills/superpowers-systematic-debugging/SKILL.md`
- UI 品质标准: `~/.openclaw/skills/frontend-design/SKILL.md`

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 292)May include surrounding context.

md
详细参考:
- 调试完整流程: `~/.openclaw/skills/superpowers-systematic-debugging/SKILL.md`
- UI 品质标准: `~/.openclaw/skills/frontend-design/SKILL.md`

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
88% confidence
Finding

This JSON manifest defines a dedicated "Chinese Expert" agent and describes its role exclusively in Chinese-language outputs and localization. Because the configuration does not indicate that language selection is optional or user-driven, it may violate language/locale policy by steering tasks into a specific language without explicit opt-in.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
85% confidence
Finding

The skill is written to operate in Chinese and presents fixed Chinese-language headings and output structure without indicating fallback to the user's preferred language. While not directly a security exploit, forced locale behavior can cause misunderstanding of review results, reduce operator awareness, and increase the chance that important warnings are missed in multilingual environments.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The trigger conditions are broad and generic (e.g., phrases equivalent to 'review code' and lifecycle moments like 'before PR submission'), which can cause the skill to activate unintentionally in unrelated conversations or workflows. In an orchestration system, unintended invocation can misroute user requests, trigger unnecessary multi-model execution, and expose code or context to additional agents without clear user intent.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The trigger phrase “帮我分析一下” is extremely broad and can match routine conversational requests that are not intended to invoke a specialized orchestration workflow. This increases the chance of accidental skill activation, causing the system to route ordinary user input into a multi-step process that may consume extra resources or alter expected behavior.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
89% confidence
Finding

The condition “任务复杂度高,需要先理解再行动” is subjective and lacks measurable boundaries, leaving activation up to inconsistent interpretation by the agent. Ambiguous gating can cause the workflow to trigger on tasks that do not require it, leading to unexpected orchestration behavior, excess model usage, and reduced predictability.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
88% confidence
Finding

The activation criteria are loosely defined with subjective conditions like '任务明确' and '适合单 Agent 可以独立完成', leaving significant room for inconsistent interpretation by the agent. In practice, ambiguous gating can cause the workflow to self-select into a high-autonomy mode when the user did not clearly intend sustained execution, raising the risk of overreach and unsafe actions.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The trigger phrase includes very broad natural-language expressions such as '做完它' and '持续执行', which can easily appear in ordinary conversation and unintentionally activate a persistent execution workflow. In an orchestration skill that authorizes continued autonomous action, accidental triggering increases the chance of unintended code changes, repeated actions, or excessive tool use without clear user consent.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The workflow explicitly states that missing dependencies will be 'automatically installed' but does not warn about the security and environment risks of modifying the system. Automatic package installation can introduce supply-chain exposure, alter runtime behavior, and make persistent changes to the host without informed approval, which is especially risky in an autonomous self-repair loop.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The trigger list includes very generic phrases such as “规划一下”, “制定计划”, “team”, and “parallel”, which can easily appear in normal user conversation and unintentionally activate this workflow. In a multi-model orchestration skill, accidental invocation can cause unintended delegation, extra model calls, unexpected planning behavior, and possible exposure of user content to additional internal agents.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The trigger list includes broad natural-language phrases like '并行执行' and '同时做', plus generic terms such as 'team' and 'parallel', which can overlap with ordinary user conversation and unintentionally activate the workflow. In an orchestration skill that can spawn multiple sub-agents or sessions, accidental activation can lead to unintended task decomposition, expanded tool usage, and higher operational risk or cost.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
78% confidence
Finding

The natural-language instructions, trigger descriptions, and usage examples are presented in Chinese, which effectively imposes a specific language on users reading or invoking the skill. The file does not indicate that other languages are supported or that Chinese is an optional or region-specific setting.

Content

No source excerpt is available for this finding.

Overly Broad Trigger

Low
Category
Trigger Abuse
Confidence
88% confidence
Finding

The trigger '编排' is extremely short and semantically broad, making accidental matches likely in routine requests. Because this skill can initiate orchestration behavior, even a low-specificity trigger can unexpectedly alter agent behavior or route the session into more powerful workflows.

Content

No source excerpt is available for this finding.

Overly Broad Trigger

Low
Category
Trigger Abuse
Confidence
88% confidence
Finding

The trigger '并行' is a common word that can appear in many benign contexts, so it is prone to false activation. In this skill's context, unintended invocation could cause parallel-agent execution when the user only meant parallelism conceptually, increasing operational risk.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
86% confidence
Finding

Natural-language policy review applies to all file types. The workflow instructions and output format are entirely in Chinese, which can effectively force a language/locale without stating that the skill is Chinese-only or offering users an opt-in or alternative language.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
86% confidence
Finding

文件标题和整体说明直接以中文呈现“持久完成工作流”,未见提供语言选择、双语支持或声明仅适用于中文用户。按规则,若技能默认强制特定语言而没有用户选择或合理地域限定,属于自然语言策略问题。

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
84% confidence
Finding

The file presents all instructions, trigger conditions, and usage examples exclusively in Chinese, which can amount to a language/locale constraint if the organization expects language neutrality or user choice. There is no indication that users may opt into Chinese or that the skill is intentionally limited to a Chinese-language context.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.