Back to skill

Security audit

Element UI Vue2

Security checks for vulnerabilities and agentic risk

Overview

This is a coherent Element UI Vue 2 documentation skill, with copyable dependency/CDN examples that users should pin before using in production.

Install only if you want an Element UI Vue2 reference, mainly based on zh-CN documentation. Do not blindly execute the install snippets: pin npm/CDN versions, prefer project-local dependencies over global installs, use lockfiles/SRI where practical, and keep the included upload/XSS cautions when adapting examples for production.

Vulnerability Patterns
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • 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
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
Findings (3)

T08 · Insecure Dependencies

Warning
Location
references/dev-guide/installation.md:16
Finding

Unpinned Element UI Package Installation

Content
View full analysis
Remediation
View remediation

T08 · Insecure Dependencies

Warning
Location
references/dev-guide/custom-theme.md:62
Finding

Mutable Theme Dependencies and Global Package Installation

Content
View full analysis
Remediation
View remediation
``` - Invoke local tools through an npm script or a version-pinned `npx` invocation. - Pin `element-theme-chalk` to an exact reviewed version. - If a Git dependency is necessary, pin it to a full reviewed commit hash: ```shell npm install --save-dev https://github.com/ElementUI/theme-chalk.git# ``` - Commit the lockfile and enforce lockfile integrity through `npm ci`. - Review package lifecycle scripts and provenance before installation. - Run theme-generation tooling in a restricted build environment without production secrets. ]]>

T03 · Remote Payload Retrieval and Execution

Warning
Location
references/dev-guide/installation.md:22
Finding

Versionless CDN Resources Permit Remote Script Substitution

Content
View full analysis
``` ### Technical Analysis The CDN URLs do not contain an exact package version and do not provide Subresource Integrity hashes. Each page load therefore trusts the CDN and its current package resolution to deliver executable JavaScript and CSS that may differ from the content originally reviewed. The documentation advises users to lock CDN versions, but the copyable example itself remains versionless. If the CDN, package source, DNS path, or upstream release is compromised, substituted JavaScript executes directly in the application's browser origin. This behavior is relevant to Element UI installation, but mutable remote execution exceeds the minimum privilege needed for a stable production integration. Self-hosted or cryptographically verified, immutable assets provide a narrower trust boundary. ### Attack Path 1. An attacker compromises the CDN, upstream package publication, maintainer account, or related delivery infrastructure. 2. Malicious content is served for the versionless Element UI URL. 3. A developer copies the documented tags into an application. 4. A user's browser requests the mutable CDN resource when loading the page. 5. Because no integrity hash is present, the browser accepts and executes the substituted JavaScript. 6. The malicious script operates with the privileges available to JavaScript under the application's origin. ### Impact Assessment Injected JavaScript could read application-visible data, capture form input, alter transactions, issue authenticated same-origin requests, manipulate the DOM, o ...[truncated 250 chars]
Remediation
View remediation
``` - Add verified Subresource Integrity hashes and the appropriate `crossorigin` attribute. - Prefer self-hosting reviewed assets as part of a reproducible build. - Enforce a restrictive Content Security Policy that limits approved script sources. - Monitor upstream security advisories and update assets only through a reviewed change process. - Change the documentation's primary example so that its copyable code is secure by default rather than relying on surrounding advisory text. ]]>
Vulnerability Patterns
  • 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
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (89)

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

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

md
| tree | Tree 树形控件 | [tree](references/data/tree.md) |

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

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

md
| tree | Tree 树形控件 | [tree](references/data/tree.md) |

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

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

md
| changelog | 更新日志 | [changelog](references/dev-guide/changelog.md) |

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

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

md
| changelog | 更新日志 | [changelog](references/dev-guide/changelog.md) |

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
84% confidence
Finding

The skill title and descriptive content are written entirely in Chinese, and the trigger/use sections continue in Chinese without any indication that users may choose another language. This creates a natural-language locale constraint that is not presented as optional or justified as a region-specific tool.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The documentation states that Element components internally default to Chinese, making a specific language the baseline behavior. Under the policy, forcing a locale without offering user choice or explicit opt-in is a natural-language policy concern.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The description mixes English with explicit Chinese-language labeling and points to a Chinese documentation site, but does not state that the skill is intended only for Chinese-speaking users or offer a language choice. Under the policy, forcing a specific language or locale without opt-in is a natural-language policy concern.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The description and linked documentation are explicitly tied to the Chinese Element UI site and use Chinese-language wording, but the file does not state that the skill is region-specific or offer an opt-in language choice. Under the policy, forcing a specific language or locale without user opt-in is 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
95% confidence
Finding

The description mixes English with Chinese and points to a Chinese-language documentation URL, indicating the skill is intended to operate in Chinese without stating any user language choice. This can violate language/locale policy because the skill does not offer an opt-in or alternative locale.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The description is written to target Chinese-language content specifically ("Link 文字链接" and a Chinese documentation URL) without indicating any user choice or opt-in for language/locale. The policy for this audit flags skills that impose a language or locale constraint unless it is explicitly optional or justified as region-specific.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
89% confidence
Finding

The description advertises the skill entirely in Chinese and points to the zh-CN documentation variant, indicating a Chinese-locale-specific experience without stating that language choice is optional. This can violate language/locale policy when users are not explicitly offered an alternative or informed that the skill is region/language-specific.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The only referenced documentation URL is the zh-CN locale, and the skill content is presented in Chinese without indicating that language choice is optional. This can violate language/locale policy when the skill implicitly constrains users to a specific locale without opt-in or justification.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The description explicitly identifies the skill as a Chinese-language Element UI Vue2 desktop component reference ("分页", linking to the zh-CN documentation) without offering any language choice or noting that the locale is fixed. This can violate language/locale policy when users have not opted into Chinese output or documentation.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The description and linked documentation explicitly present this skill as Chinese-language content for Element UI Vue2, with no indication that users can choose another language or locale. This creates a natural-language policy concern because the skill appears to impose a specific language context rather than offering user choice.

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 explicitly directs use of the skill for a Chinese-language Element UI Vue2 resource ("结果" and a zh-CN URL) without offering any language or locale choice. This creates a natural-language locale policy issue because the skill appears constrained to Chinese content by default rather than documenting an opt-in or justified region-specific limitation.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
98% confidence
Finding

The description states the skill is for an Element UI Vue2 component and links to a Chinese-language documentation page, with the content throughout the file presented only in Chinese. This creates a language/locale constraint without offering the user a choice or documenting that the skill is intentionally region-specific.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The description and referenced documentation are explicitly Chinese-language/zh-CN content for Element UI Vue2, with no indication that users can choose another language or locale. This creates a natural-language policy concern because the skill appears to enforce a locale-specific experience without documenting user choice or justification.

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 explicitly presents the skill as a Chinese-language Element UI component reference ("Tag 标签") and the body content is entirely in Chinese, but there is no indication that the user can choose another language or that the locale restriction is intentionally limited to a Chinese-specific audience. This creates a natural-language locale policy issue because the skill effectively imposes a specific language by default.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

The activation text is broad enough to match many ordinary Vue 2 or Element UI component requests, which can cause the skill to be invoked outside its narrow intended scope. Over-triggering increases the chance that unrelated user requests are steered toward this specific reference content, reducing routing precision and potentially causing unsafe or low-quality tool selection in larger agent workflows.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
84% confidence
Finding

The skill metadata points users to a Chinese-language resource without indicating that the content is language-specific or offering alternatives. In multilingual agent environments, this can misroute users to documentation they cannot verify, increasing the risk of misunderstanding implementation details or blindly copying code they do not fully understand.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

This is a markdown file, so vague-trigger checks apply. The description says "Invoke when user needs 更新日志 in Vue 2.x project," which does not define specific trigger phrases or clear activation boundaries, making invocation depend on a broad notion of "needs changelog" that could overlap with general discussion rather than explicit intent to use this skill.

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 mixes English with Chinese and points to a zh-CN documentation URL, indicating the skill is oriented to Chinese-language output or Chinese locale content without stating that this is optional. Under the language/locale policy, forcing a specific locale without user choice is a natural-language policy concern unless clearly justified or offered as an opt-in.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The manifest description is written to invoke the skill when a user needs '自定义主题' in a Vue 2.x project, and the linked documentation content is entirely Chinese. This creates a language-specific constraint without indicating any user choice, alternative locale, or explicit justification for requiring Chinese.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The invocation description is broad and mixes English and Chinese trigger terms, which can cause the skill to activate for loosely related user requests. Over-broad activation increases the chance that this skill is selected outside its intended scope, leading to incorrect guidance, unintended context capture, or routing users into a specialized skill they did not ask for.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The manifest-style description says to invoke the skill when the user 'needs 快速上手 in Vue 2.x project,' but it does not define specific trigger phrases, exclusions, or boundaries for when this quickstart skill should versus should not activate. '快速上手' is a generic onboarding/help concept that could overlap with many normal requests about getting started, increasing the chance of unintended invocation.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.