registry  /  @farris/x-ui  /  0.3.7

@farris/x-ui@0.3.7

可复用的 AI 对话组件

AI Security Review

scanned 11m ago · by lpm-firewall-ai

No confirmed malware or install-time attack behavior was found. The package does expose high-risk browser runtime capabilities for dynamic component/script loading and content-derived chart evaluation.

Static reason
High-risk behavior combination matched malicious policy.
Trigger
Application imports and uses dynamic preview/widget/markdown UI features
Impact
Could execute untrusted UI-supplied script/content if a consuming application feeds attacker-controlled dynamic component or ECharts data, but no package-authored exfiltration or persistence is present.
Mechanism
browser runtime dynamic script loading and content-derived Function evaluation
Attack narrative
A consuming app can trigger browser-side attachment downloads, dynamic component loading, and markdown/chart rendering. The package can append script/link tags and evaluate ECharts option text, so hostile runtime content could become code execution in the page. Static inspection did not find lifecycle execution, filesystem mutation, credential harvesting, persistence, hardcoded exfiltration, or AI-agent control hijacking.
Rationale
The scanner’s malicious label is not supported by source facts: there is no install-time or import-time malware path. The remaining risk is a package-aligned but dangerous browser runtime capability, best handled as a warning rather than a publish block.
Evidence
package.jsonfarris.x-ui.esm.jsfarris.x-ui.umd.cjs
Network endpoints3
cdn.jsdelivr.net/npm/monaco-editor@0.55.1/min/vsgithub.com/suren-atoyan/monaco-loader#configunpkg.com

Decision evidence

public snapshot
AI called this Suspicious at 88.0% confidence as Dangerous Capability with low false-positive risk.
Evidence for warning
  • farris.x-ui.esm.js:5860-5940 contains a runtime loader that appends caller-provided script/link elements to document
  • farris.x-ui.esm.js:9996 evaluates ECharts option text with new Function from rendered content
  • farris.x-ui.esm.js:239 fetches attachment URLs with credentials:"include" at user/runtime action
Evidence against
  • package.json has no scripts, bin, preinstall, install, or postinstall hooks
  • No Node fs, child_process, process.env, shell execution, persistence, or agent control-surface writes found
  • Network URLs are browser/runtime inputs or package-aligned CDN/docs for Monaco/highlight assets
  • No hardcoded credential exfiltration endpoint found
  • Bidi/invisible Unicode hit is inside bundled dependency character tables, not deceptive source control flow
Behavioral surface
Source
ChildProcessDynamicRequireEvalNetwork
Supply chain
HighEntropyStringsMinifiedObfuscatedTelemetryUrlStrings
Manifest
NoLicense
scanned 2 file(s), 998 KB of source, external domains: cdn.jsdelivr.net, github.com, jedwatson.github.io, unpkg.com, www.w3.org

Source & flagged code

4 flagged · loading source
farris.x-ui.esm.jsView file
1331contains invisible/control Unicode U+202A (left-to-right embedding) 'ᵁ<Õıʊҝջאٵ۞ޢߖࠏ੊ઑඡ๭༉༦჊ረዡᐕᒝᓃᓟᔥ\0\0\0\0\0\0ᕫᛍᦍᰒᷝ὾<U+2060>↰⊍⏀⏻⑂⠤⤒ⴈ⹈⿎〖㊺㘹㞬㣾㨨㩱㫠㬮ࠀEMabcfglmnoprstu\\bfms„‹•˜¦³¹ÈÏlig耻Æ䃆P耻&䀦cute耻Á䃁reve;䄂Āiyx}rc耻Â䃂;䐐r;쀀𝔄rave耻À䃀pha;䎑acr;䄀d;橓Āgp¡on;䄄f;쀀𝔸plyFunction;恡ing耻Å䃅Ācs¾Ãr;쀀𝒜ign;扔ilde耻Ã䃃ml耻Ä䃄ЀaceforsuåûþėĜ
Critical
Trojan Source Unicode

Source contains bidi control or invisible Unicode characters associated with Trojan Source attacks.

farris.x-ui.esm.jsView on unpkg · L1331
Trigger-reachable chain: manifest.module -> farris.x-ui.esm.js Reachable file contains a blocking source-risk pattern.
Critical
Trigger Reachable Dangerous Capability

A package entrypoint or install-time lifecycle script reaches a source file with blocking dangerous behavior.

farris.x-ui.esm.jsView on unpkg
10112id: on.mermaidM L10113: }), import( L10114: /* @vite-ignore */
Medium
Dynamic Require

Package source references dynamic require/import behavior.

farris.x-ui.esm.jsView on unpkg · L10112
9995try { L9996: const x = new Function(`return ${m.innerText}`)(), w = o.init(m, n.value); L9997: w.setOption(x), m.setAttribute("data-processed", ""), c.push(m), f.push(w);
Low
Eval

Package source references a known benign dynamic code generation pattern.

farris.x-ui.esm.jsView on unpkg · L9995

Findings

2 Critical3 Medium6 Low
CriticalTrojan Source Unicodefarris.x-ui.esm.js
CriticalTrigger Reachable Dangerous Capabilityfarris.x-ui.esm.js
MediumDynamic Requirefarris.x-ui.esm.js
MediumNetwork
MediumStructural Risk Force Deep Review
LowEvalfarris.x-ui.esm.js
LowObfuscated
LowHigh Entropy Strings
LowTelemetry
LowUrl Strings
LowNo License