Back to skill

Security audit

组合测试策略

Security checks for vulnerabilities and agentic risk

Overview

The skill itself is a coherent read-only QA helper, but it repeatedly tells users to run an unpinned external skill installation command.

Review the unpinned install command before using it. The single audited skill is read-only and purpose-aligned, but installing the full external skill set through `npx` may fetch different content later; prefer a pinned version or reviewed commit and avoid running it in a sensitive workspace.

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:8
Finding
Unpinned Third-Party Skill Installation Creates a Supply-Chain Risk## Vulnerability Details **File Location**: `SKILL.md`, lines 8 and 49 **Vulnerability Type**: Unpinned third-party dependency installation **Risk Level**: Medium ### Vulnerable Code Snippet The following installation command is recommended twice: ```shell npx skills add Kokxi/qa-test-skills ``` ### Technical Analysis The documentation directs users to invoke the `skills` package through `npx` and install the external `Kokxi/qa-test-skills` collection. Neither the CLI package nor the skill collection is pinned to a reviewed version, release, commit hash, checksum, or other immutable identifier. Consequently, the content installed when the command is executed may differ from the content that existed when this artifact was audited. The effective installation behavior depends on mutable third-party package registries and repositories outside the audit scope. This is a supply-chain weakness rather than evidence that the referenced dependency is currently malicious. Exploitation would require compromise of the relevant package, repository, maintainer account, publishing process, or dependency-resolution path. ### Attack Path 1. An attacker compromises the package registry entry, upstream repository, maintainer credentials, or another component in the dependency distribution chain. 2. The attacker publishes or introduces a malicious version of the CLI or skill collection. 3. A user follows the installation recommendation in `SKILL.md`. 4. `npx` resolves the unpinned package, and the installer retrieves the mutable external skill collection. 5. The malicious content is installed or processed under the invoking user's privileges. 6. Depending on the behavior of the retrieved package, it could introduce unreviewed agent instructions or execute code through installation hooks or subsequent skill use. ### Impact Assessment The maximum practical impact depends on the privileges of the user running the installation command and the behavior permitted by the pack ...[truncated 541 chars]
Remediation
## Remediation Suggestions 1. Pin the `skills` CLI to a specific reviewed version rather than allowing `npx` to resolve the current version: ```shell npx skills@<reviewed-version> add ... ``` 2. Pin the external skill collection to an immutable release tag or, preferably, a verified commit hash supported by the installer. 3. Publish expected checksums or signatures and verify them before installation. 4. Document the canonical package registry and repository URL so users can detect dependency confusion or repository impersonation. 5. Review the complete dependency and skill contents before recommending them as part of the workflow. 6. Use lockfiles or an equivalent reproducible dependency manifest where supported. 7. Run installation in a least-privilege, isolated environment without production credentials or sensitive workspace data. 8. Clarify that installation of the external collection is optional and outside the security guarantees of this audited skill.
Vulnerability Patterns
  • 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
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (5)

Rp1

Medium
Category
MCP Rug Pull
Confidence
70% confidence
Finding
MCP server references in the skill manifest without version pinning are a rug-pull risk.

Natural-Language Policy Violations

Medium
Confidence
88% confidence
Finding
The visible skill metadata and all user-facing instructional content are presented only in Chinese, with no indication that the user may choose another language or that the locale restriction is intentional and justified. Under the stated policy, forcing a specific language without user opt-in is a natural-language policy concern.

Rp1

Medium
Category
MCP Rug Pull
Confidence
89% confidence
Finding
The skill instructs users to run `npx skills add Kokxi/qa-test-skills` without pinning a version, which makes the installed code depend on the latest package state at execution time. If the upstream package is compromised or a breaking/malicious update is published, users could fetch and run unintended code during installation.

Vague Triggers

Medium
Confidence
92% confidence
Finding
The activation description mixes specific phrases like "Pairwise" with broad conditions such as "需要简化测试组合" and "参数多环境多时". These broad natural-language triggers lack clear boundaries or exclusion conditions, so the skill could be invoked for many ordinary testing discussions that are not specifically asking for this combination-testing strategy.

Rp1

Medium
Category
MCP Rug Pull
Confidence
89% confidence
Finding
This repeated `npx skills add Kokxi/qa-test-skills` instruction again relies on an unpinned package resolution path. That creates a supply-chain exposure because `npx` may download and execute whatever version is current at the time, rather than a reviewed immutable release.

Static analysis

No suspicious patterns detected.