Back to skill

Security audit

skill-manager

Security checks for vulnerabilities and agentic risk

Overview

This skill appears to be a benign local skill inventory helper, with some incomplete documentation but no evidence of harmful behavior.

Before installing, understand that running the helper will inspect local OpenClaw skill folders and execute `clawhub list`. The skill is mainly Chinese-language and some advertised features appear incomplete, but the inspected artifacts show no credential handling, persistence, writes, exfiltration, or destructive behavior.

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
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Behavioral ASTexec() Call, eval() Call, Dynamic Import
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
Findings (6)

Tp4

High
Category
MCP Tool Poisoning
Confidence
93% confidence
Finding
The documented purpose is inventory and categorization of installed skills, but the finding indicates the implementation also runs an external command (`clawhub list`) and does not faithfully implement some advertised behavior. Description-behavior mismatches are dangerous because users and orchestrators may grant trust based on the declared benign purpose while hidden or undeclared actions execute under the hood.

Lp3

Medium
Category
MCP Least Privilege
Confidence
83% confidence
Finding
The skill advertises shell and file-reading related behavior via example commands, but it does not declare any explicit tool scope such as permissions or allowed-tools. In a skill-management context, undeclared command execution increases the chance that the agent can invoke filesystem or shell capabilities without transparent user or platform controls, which weakens least-privilege boundaries.

Vague Triggers

Medium
Confidence
94% confidence
Finding
The manifest description says to use the skill when a user wants to know which skills are installed, what a skill does, or to find duplicate-function skills. These are broad intent descriptions rather than specific trigger phrases or constrained activation conditions, which can overlap with common help or discovery requests and lead to unintended invocation.

Natural-Language Policy Violations

Medium
Confidence
97% confidence
Finding
The description is written to present and explain the skill in Chinese, with no indication that the user can choose another language. This creates a locale/language policy issue because it implicitly constrains interaction language without opt-in or justification.

Natural-Language Policy Violations

Medium
Confidence
95% confidence
Finding
This Python file contains natural-language strings and docstrings exclusively in Chinese, including the top-level description and user-facing output. Under the policy, forcing a specific language without user opt-in is a locale/language policy violation unless the constraint is explicitly documented and justified, which is not present here.

subprocess module call

Medium
Category
Dangerous Code Execution
Content
# 也显示 clawhub 安装的
    print("\n\n📦 ClawHub 安装的 Skills:")
    print("=" * 70)
    result = subprocess.run(['clawhub', 'list'], capture_output=True, text=True)
    print(result.stdout)

if __name__ == "__main__":
Confidence
70% confidence
Finding
subprocess module calls execute external commands. Without careful input validation, this enables command injection.

Static analysis

No suspicious patterns detected.