Back to skill

Security audit

稽影 · 多Agent信任基础设施

Security checks for vulnerabilities and agentic risk

Overview

The skill describes a coherent AI orchestration tool, but its install path asks users to run mutable external code and configure sensitive model/audit data without enough scoping or privacy guidance.

Install only if you are comfortable auditing or sandboxing the referenced GitHub/npm code yourself. Prefer a pinned release or commit, avoid entering secrets or sensitive business data until logging and DeepSeek data flows are clear, and run it with a narrowly scoped API key in an isolated environment.

Vulnerability Patterns
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • 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
  • 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)

T03 · Remote Payload Retrieval and Execution

Warning
Location
SKILL.md:28
Finding

Unpinned Remote Code and Dependency Execution

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 28–37
Vulnerability Type: Mutable remote payload retrieval and insecure software supply chain
Risk Level: Medium

bash
# Install
npx clawhub install jiying

# Start the server
cd jiying && node server/index.js

# Or development mode (including frontend UI)
git clone https://github.com/Vane1981-2011/jiying.git
cd jiying
npm install
npm run dev

Technical Analysis

The documented installation procedures retrieve code from externally controlled, mutable sources and subsequently execute it without pinning or integrity verification.

The npx clawhub install jiying command does not identify an immutable package version or verified artifact digest. The alternative procedure clones the repository's current default branch rather than a specific audited commit. It then invokes npm install, which resolves third-party packages and may execute package lifecycle scripts, followed by npm run dev, which executes repository-defined commands.

Consequently, the code ultimately executed can differ from the content available when this skill was reviewed. The artifact contains only SKILL.md; it does not include the referenced application source, dependency lockfile, scripts, or server implementation. Therefore, the security claims and runtime behavior of the external implementation cannot be validated from the audited artifact.

This finding does not establish that the current remote repository or package is malicious. It identifies a supply-chain execution path through which a future malicious update, compromised publisher account, compromised dependency, or altered default branch could introduce executable code after review.

Attack Path

  1. An attacker compromises the ClawHub package, its publisher account, the linked GitHub repository, or a resolved npm dependency. Alternatively, a maintainer unknowingly publishes a malicious or vulnerabl ...[truncated 1264 chars]
Remediation
View remediation

Remediation Suggestions

  1. Pin the installation to an immutable, reviewed release or full Git commit hash instead of the current default branch.
  2. Pin the ClawHub package to an exact version and document the expected publisher identity.
  3. Publish cryptographic checksums or signed release attestations and require verification before execution.
  4. Include a committed dependency lockfile and use npm ci so dependency resolution is reproducible.
  5. Initially install dependencies with lifecycle scripts disabled, such as npm ci --ignore-scripts, and separately audit every lifecycle script that is genuinely required.
  6. Audit the repository-defined server/index.js, package.json scripts, transitive dependencies, and lockfile before recommending execution.
  7. Run the application under a dedicated low-privilege account or isolated container with restricted filesystem and network access.
  8. Avoid exposing unrelated credentials to the process. Supply the DeepSeek API key through a narrowly scoped secret mechanism and rotate it if compromise is suspected.
  9. Bundle the reviewed implementation with the skill when feasible, allowing reviewers to assess the actual executed code rather than relying solely on external documentation.
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (4)

Tp2

High
Category
MCP Tool Poisoning
Confidence
85% confidence
Finding

Mixing characters from multiple Unicode scripts in a single identifier is a common technique to create visually ambiguous tool names.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
88% confidence
Finding

The install command uses npx clawhub without pinning a specific package version, so users may fetch whatever version is current at execution time. This creates a supply-chain risk where a compromised upstream release or namespace takeover could cause execution of unintended code on the user's system.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
87% confidence
Finding

The documentation tells users to configure an API key and exposes an audit-log write endpoint, but does not warn what data may be transmitted, stored, or retained. In a multi-agent and audit-heavy system, users may unknowingly submit sensitive prompts, credentials, or business data that are then persisted or sent to third-party model providers.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
80% confidence
Finding

The manifest and entire skill description are presented only in Chinese, with no indication that another language is supported or that the Chinese-only presentation is a justified region-specific constraint. Under SQP-3, forcing a specific language without user opt-in can be a natural-language policy violation.

Content

No source excerpt is available for this finding.