Back to skill

Security audit

前端设计工具

Security checks for vulnerabilities and agentic risk

Overview

This frontend design skill is mostly understandable, but it asks for broad agent capabilities and includes overly broad triggers and an unsafe optional preview command that users should review before installing.

Install only if you are comfortable with a design skill that may be invoked too broadly by an agent. Prefer using it strictly for frontend design-token, layout, and HTML/CSS work; avoid using its broad debugging/deployment trigger, and use python -m http.server instead of npx serve . unless you pin and trust the package version.

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:126
Finding

Unpinned Third-Party Package Execution via npx

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 126–130
Vulnerability Type: Insecure third-party dependency execution
Risk Level: Medium

bash
# 本地预览(任选其一)
python -m http.server 8000
npx serve .

Technical Analysis

The quick-start instructions recommend running npx serve . without specifying a package version or requiring a reviewed lockfile. If serve is not already installed locally, npx can download the package and execute it directly from the configured package registry.

Because the package version and integrity are not pinned, the code executed at audit time may differ from the code retrieved later. A compromised package release, maintainer account, transitive dependency, or package registry could therefore introduce arbitrary code into this workflow. The built-in Python server shown immediately above does not introduce the same package supply-chain exposure.

Attack Path

  1. An attacker compromises the serve package, one of its executable dependencies, its publisher account, or the configured package registry.
  2. A user or agent follows the documented quick-start workflow and executes npx serve ..
  3. When no suitable reviewed local installation is available, npx retrieves the currently resolved package and dependencies.
  4. The downloaded package code executes with the privileges and environment of the invoking user or agent.
  5. Malicious code can access resources available to that process and perform actions within its operating-system permissions.

Impact Assessment

Successful exploitation permits arbitrary code execution with the privileges of the account running npx. Depending on that account and its environment, the malicious package could read or modify accessible project files, inspect available environment variables, alter generated artifacts, initiate network connections, or compromise other data available to the process.

The impact is generally limit ...[truncated 227 chars]

Remediation
View remediation

Remediation Suggestions

  • Remove the npx serve . recommendation and retain the built-in python -m http.server 8000 option where appropriate.
  • If the Node.js server is required, declare an explicitly reviewed version in package.json, install it using a committed lockfile with integrity metadata, and invoke the local binary through a package script.
  • Use deterministic installation such as npm ci rather than resolving mutable dependency versions at execution time.
  • Review direct and transitive dependencies before upgrades, and use automated dependency and provenance scanning.
  • Run preview servers under a least-privileged account or sandbox without sensitive environment variables or unnecessary filesystem access.
  • Bind the preview server to the loopback interface unless remote access is explicitly required.
Vulnerability Patterns
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
Findings (6)

Vague Triggers

High
Category
Not specified by scanner
Confidence
96% confidence
Finding

The trigger description is overly broad and instructs invocation for coding, debugging, testing, and deployment rather than the narrow frontend design use case described in metadata. Because the skill advertises powerful tools, an overbroad trigger can route unrelated sensitive tasks into this skill and expand the attack surface for command execution or unintended modifications.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The description states '支持中文交互', and the skill content consistently presents Chinese-only interaction as the default without offering a language choice. This is a locale/language policy concern because it constrains interaction language without explicit user opt-in or documented justification.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
89% confidence
Finding

The skill is presented as a frontend design assistant, but this section expands it into generic create/query/modify/delete, import/export, and conversion operations. That scope drift can mislead an agent into treating arbitrary user input as operational commands, increasing the chance of unsafe tool use or unintended file/process manipulation beyond design generation.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The trigger conditions instruct use of this skill for broad coding, debugging, testing, and deployment tasks, which materially exceeds a frontend design assistant's declared purpose. In a skill with exec, write, and browser tools, this mismatch can cause the agent to invoke powerful capabilities in unrelated contexts, raising the risk of unsafe command execution, filesystem changes, or network activity.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
92% confidence
Finding

The documentation recommends running npx serve . without pinning a version, which causes the tool to fetch and execute the latest published package at runtime. This creates a supply-chain risk: a compromised package, typo-squat, or malicious upstream update could lead to arbitrary code execution on the user's machine.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Low
Category
Not specified by scanner
Confidence
92% confidence
Finding

The API Key section explicitly states the tool is pure Markdown instructions and requires no additional API key, while the later security section warns about API key handling through environment variables. That is an active contradiction in the documentation about whether this skill expects secret configuration.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.