Back to skill

Security audit

AI半导体工程师

Security checks for vulnerabilities and agentic risk

Overview

The skill is mostly a semiconductor reference and calculator, but it asks the agent to use web searches and CDN-loaded reports in contexts that may include sensitive chip-design details without clear consent or data-minimization controls.

Review this before installing if you work with proprietary chip designs, process data, tool logs, or yield reports. Use the local calculator and bundled references freely, but require confirmation before any web search, avoid sending confidential design details externally, and prefer self-contained reports or pinned/vendored Chart.js for HTML output.

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

Unpinned Remote JavaScript Dependency in Generated HTML Reports

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, line 154
Vulnerability Type: Unpinned third-party JavaScript loaded from a CDN
Risk Level: Medium

Relevant instruction, translated into English from the source:

text
Reports use pure HTML, CSS, and Chart.js from a CDN and can be opened directly as a single file.

Technical Analysis

The Skill instructs the Agent to generate HTML reports that load Chart.js from a CDN, but it does not require an official source, an exact dependency version, a cryptographic integrity hash, or local vendoring. Consequently, the executable JavaScript retrieved when a report is opened may differ from the component that was understood or reviewed when the Skill package was audited.

This creates a supply-chain trust boundary outside the audited project. A compromised CDN, mutable dependency URL, malicious package release, DNS or hosting compromise, or model-selected unofficial source could cause attacker-controlled JavaScript to execute in the generated report.

The project does not itself contain a remote script URL or code that automatically downloads and executes Chart.js. Exploitation therefore depends on the Agent following this report-generation instruction and producing a report with an unsafe remote script reference.

Attack Path

  1. A user requests a comprehensive or interactive HTML report.
  2. The Agent follows SKILL.md and generates an HTML document containing a CDN-hosted Chart.js script.
  3. The selected URL is unversioned, mutable, compromised, or points to an untrusted CDN.
  4. The user opens the generated report in a browser.
  5. The browser downloads and executes the remote JavaScript.
  6. The malicious dependency reads or modifies report content and performs actions available to JavaScript within the report's browser context.

Impact Assessment

Successful exploitation grants code execution in the generated report's browser page context. The ...[truncated 636 chars]

Remediation
View remediation

Remediation Suggestions

  1. Vendor a reviewed Chart.js release inside the Skill package and reference the local file from generated reports.
  2. If a CDN is necessary, require an official HTTPS endpoint pinned to an exact immutable version.
  3. Require Subresource Integrity and anonymous cross-origin validation:
    html
    <script
      src="https://trusted.example/chart.js/exact-version/chart.min.js"
      integrity="sha384-REVIEWED_HASH"
      crossorigin="anonymous"></script>
    
  4. Do not allow the Agent to select arbitrary package names, versions, or CDN domains.
  5. Add a restrictive Content Security Policy that permits scripts only from explicitly approved locations and blocks unnecessary network destinations.
  6. Prefer fully self-contained reports with no runtime network dependency, especially when reports may contain proprietary process or device information.
  7. Document an update process requiring dependency review and integrity-hash regeneration before changing the vendored or pinned version.
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • 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
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (12)

Tp4

High
Category
MCP Tool Poisoning
Confidence
88% confidence
Finding

该描述明显夸大了代码能力。代码的核心用途是半导体基础工程公式计算,且是离线CLI工具,不具备“AI助手”或“全流程”属性。它确实与半导体领域相关,并覆盖部分声明中的“基础物理计算脚本”和部分良率计算内容,因此不是完全无关;但对工艺速查、IC设计验证、EDA指导、材料查询、失效诊断等关键宣称均无实现,属于对主要用途和能力范围的实质性失配。未见越权资源访问或可疑外部操作,问题主要在于描述远宽于实际行为。

Content

No source excerpt is available for this finding.

Ae4

Medium
Category
analysis-evasion
Confidence
80% confidence
Finding

Suspicious Unicode normalization or mixed-script content

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The trigger list contains broad terms like '半导体', '芯片', 'wafer', and 'fab', which can cause the skill to activate on ordinary discussion rather than intentional invocation. Unintended routing can expose user prompts to this skill's workflow, including network-backed branches, increasing the chance of irrelevant processing, privacy leakage, or misleading technical guidance.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The skill explicitly states that some requests will use web/network lookups for IC design and EDA guidance, but it provides no warning, consent mechanism, or data-minimization guidance. If user prompts, design details, tool errors, or proprietary process information are sent externally, sensitive engineering data could be disclosed to third parties without the user's awareness.

Content

No source excerpt is available for this finding.

Ae4

Medium
Category
analysis-evasion
Confidence
80% confidence
Finding

Suspicious Unicode normalization or mixed-script content

Content

No source excerpt is available for this finding.

Ae4

Medium
Category
analysis-evasion
Confidence
80% confidence
Finding

Suspicious Unicode normalization or mixed-script content

Content

No source excerpt is available for this finding.

Ae4

Medium
Category
analysis-evasion
Confidence
80% confidence
Finding

Suspicious Unicode normalization or mixed-script content

Content

No source excerpt is available for this finding.

Ae4

Medium
Category
analysis-evasion
Confidence
80% confidence
Finding

Suspicious Unicode normalization or mixed-script content

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
93% confidence
Finding

This markdown file is written entirely in Chinese, beginning with the title on L001, and provides no indication that language choice is optional or user-selectable. Under the stated policy, forcing a specific language without user opt-in is a natural-language locale violation.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
88% confidence
Finding

This markdown file is entirely in Chinese, and there is no indication that the skill is region-specific or that users can opt into another language. Under the language/locale policy rule, forcing a single language without user choice can be a natural-language policy violation.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
90% confidence
Finding

This markdown file is entirely written in Chinese and does not offer any language or locale choice. Under the policy, forcing a specific language without user opt-in can be a natural-language policy violation unless the locale constraint is explicitly documented and justified.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
89% confidence
Finding

This code file contains user-facing natural-language usage and description text in Chinese, which can impose a specific language on users without opt-in. The policy for natural-language violations applies to all file types, and there is no indication that the tool is intentionally limited to a Chinese-speaking or region-specific audience.

Content

No source excerpt is available for this finding.