Back to skill

Security audit

Obsidian Note 转导图

Security checks for vulnerabilities and agentic risk

Overview

This is a narrow Chinese-localized wrapper, but it asks users to install and delegate work to an unpinned third-party skill that was not included in this artifact review.

Review before installing because approving the first-run dependency install will add another ClawHub skill by mutable slug. Only proceed if you trust the referenced publisher and registry resolution at install time; prefer a version pinned by digest or immutable release if available.

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
SKILL.md:38
Finding

Unpinned Remote Skill Installation Creates a Supply-Chain Risk

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 38–42
Vulnerability Type: Unpinned third-party skill dependency
Risk Level: Medium

Vulnerable Code

markdown
安装规则:

- 只有在用户明确同意后,才允许通过运行时的标准 ClawHub 安装流程安装这个精确的已审核 core skill:
  `clawhub install suka233/kmind-markdown-to-mindmap --workdir ./`
- 不得替换成其他 slug,包括本地化变体。

The same unpinned installation command is also documented in README.md, lines 20–28, and README_zh_CN.md, lines 20–28.

Technical Analysis

The wrapper directs the runtime to download and install a third-party skill using only the mutable ClawHub slug suka233/kmind-markdown-to-mindmap. It does not pin an immutable version, commit identifier, or content digest. It also does not require signature or checksum verification after retrieval.

Although the instructions require explicit user consent and describe the dependency as audited, consent only informs the user that an installation will occur. It does not establish that the artifact downloaded at installation time is the same artifact that was previously audited. The dependency source is not included in this repository, so its implementation and effective runtime behavior were outside the available audit scope.

Consequently, compromise of the publisher account, registry entry, distribution infrastructure, or a later release under the same slug could cause the wrapper to retrieve and delegate execution to code different from the reviewed version.

Attack Path

  1. An attacker compromises the ClawHub publisher account, registry record, or distribution channel associated with suka233/kmind-markdown-to-mindmap.
  2. The attacker publishes or substitutes a malicious skill artifact under the same mutable slug.
  3. A user invokes this wrapper in an environment where the core skill is not installed.
  4. The wrapper requests installation approval as required.
  5. The user approves the documented installation, believing that the referenced skill is the previously audi ...[truncated 1181 chars]
Remediation
View remediation

Remediation Suggestions

  1. Pin the dependency to an immutable reviewed release, commit identifier, or registry-supported content digest rather than installing by mutable slug alone.
  2. Require cryptographic signature or checksum verification before the downloaded skill is installed or invoked.
  3. Record the expected artifact digest and reviewed version in the repository so the runtime can reject substitutions.
  4. Show the user the resolved version, publisher identity, source, digest, and verification result before requesting approval.
  5. Fail closed if the registry cannot provide the exact pinned artifact or if integrity verification fails.
  6. Vendor the reviewed dependency into the distribution when licensing and platform constraints permit, then audit and release the wrapper and dependency as one immutable unit.
  7. If dynamic installation remains necessary, install into an isolated environment with only the filesystem and network permissions required for mind-map conversion.
  8. Re-audit every intentional dependency update before changing the pinned version or digest.
Vulnerability Patterns
  • 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
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (4)

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
89% confidence
Finding

The file presents the skill documentation entirely in Chinese and describes the skill as a Chinese-facing workflow entrypoint, which indicates a language constraint. Under the policy rule, forcing a specific language without explicit user choice or a clearly justified locale restriction can be a natural-language policy violation.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The skill name suffix -cn and the entire natural-language description are Chinese-only, with no indication that users may interact in other languages or choose a locale. This can violate language/locale policy because it implicitly constrains use to a specific language without opt-in or justification.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
92% confidence
Finding

The README presents the skill as a Chinese-localized wrapper variant and links to a Chinese description, but does not indicate that users can choose another language or that the locale restriction is required for a region-specific purpose. This can violate the language/locale policy because it defaults the experience to a specific language without explicit user opt-in.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
77% confidence
Finding

The natural-language identifier obsidian-note-to-mindmap-cn includes a locale marker suggesting the skill is specifically Chinese-language or China-targeted. In this file there is no accompanying explanation, opt-in mechanism, or justification for the locale restriction, so it may indicate a language/locale policy issue.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.