Back to skill

Security audit

UI/UX开发工具免费版

Security checks for vulnerabilities and agentic risk

Overview

This skill is a local UI prototyping helper with disclosed use of local files, command-line tools, and public CDN libraries; the main risks are ordinary setup and dependency-awareness issues rather than malicious behavior.

Install only if you are comfortable with a Markdown-only UI prototyping skill that can write local project files, run user-directed local commands, and generate pages that load JavaScript from public CDNs. Treat its output as prototype code, avoid sensitive data in generated pages or callback fields, and pin or self-host dependencies before production use.

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

Mutable Third-Party JavaScript Loaded Without Integrity Verification

Content
View full analysis
``` ### Technical Analysis The Skill instructs the Agent to generate HTML pages that execute JavaScript obtained from public CDNs at runtime. The Tailwind resource has no version pin, while the React dependency is constrained only to major version 18 rather than an exact immutable release. Neither script includes a Subresource Integrity (`integrity`) hash. As a result, the effective JavaScript payload can change after the Skill has been reviewed. A CDN compromise, upstream package compromise, account takeover, or unexpected mutable-version resolution could cause generated pages to execute modified JavaScript. This is classified as `T08: Insecure Dependencies` because generated artifacts rely on mutable third-party supply-chain components loaded from external sources without integrity validation. ### Attack Path 1. An Agent follows `SKILL.md` and generates a page containing the documented external script elements. 2. The generated page is opened locally or deployed through a static web server. 3. The browser requests the JavaScript resources from `cdn.tailwindcss.com` and `unpkg.com`. 4. An attacker compromises an upstream package, CDN distribution path, or mutable dependency alias. 5. The browser accepts and executes the modified response because no integrity hash validates its contents. 6. The malicious script operates with the JavaScript privileges of the generated page's origin. ### Impact Assessment Successful exploitation permits arbitrary JavaScript execution in the generated page. Depending on how the page is deployed and used, the malicious dependency could: - Read or modify page content and ap ...[truncated 545 chars]
Remediation
View remediation
``` 5. Deploy a restrictive Content Security Policy that limits `script-src` to explicitly approved origins and avoids `unsafe-inline` and `unsafe-eval` where feasible. 6. Record approved versions and hashes in the Skill so dependency changes require an explicit review. 7. Periodically scan pinned dependencies for known vulnerabilities and update them through a controlled review process. ]]>
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
Findings (7)

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
88% confidence
Finding

The display name, summary, examples, and HTML sample are all fixed to Chinese/zh-CN, and the document does not state that language is user-selectable. This creates a locale policy concern because the skill appears to impose a specific language/locale by default without opt-in or justification.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The skill accepts an arbitrary callback_url despite being positioned as a local prototyping tool. If the agent later performs requests to attacker-controlled URLs, this can enable unintended outbound network access, data leakage in status payloads, or SSRF-style behavior against internal services reachable from the agent environment.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
89% confidence
Finding

The skill relies on external CDN resources and optionally callback_url behavior without clear warning that content and metadata may be transmitted over the network. In an agent context, undisclosed outbound connections can expose prompts, generated artifacts, project identifiers, or browsing targets to third parties and can violate user expectations for local-only prototyping.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The '触发条件' section does not provide concrete invocation phrases or boundaries, and instead contains only a fragmentary sentence. This makes activation scope unclear and increases the risk of unintended invocation because users and agents are not given specific positive or negative trigger examples.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The manifest repeatedly frames the free version as '聚焦单页面快速生成' and '适合个人快速原型', implying a constrained single-page scope. However, L410 states the free version supports creating multiple page folders under a project, which expands behavior beyond the advertised single-page limitation rather than merely implementing the stated prototype workflow.

Content

No source excerpt is available for this finding.

Sudo/Root Execution

Medium
Category
Privilege Escalation
Confidence
70% confidence
Finding

Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.

Content

Scanner excerpt · SKILL.md (reported line 456)May include surrounding context.

md
brew install webp
# .
# Ubuntu/Debian
sudo apt install webp
# .
# Windows
# 下载 libwebp 并添加到PATH

Intent-Code Divergence

Low
Category
Not specified by scanner
Confidence
78% confidence
Finding

L464 states the skill runs without additional API keys and relies on local scripts plus public CDN resources. In contrast, the error-handling guidance at L386-L393 repeatedly instructs users to verify environment variables, ping the network, and inspect firewall/proxy settings, which conflicts with the stated '无需额外API Key' and predominantly local-tool framing.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.