registry  /  @fsm-nova/chatbot  /  0.0.1

@fsm-nova/chatbot@0.0.1

Reusable Angular Chatbot Library

AI Security Review

scanned 9m ago · by lpm-firewall-ai

Runtime telemetry sends application context and arbitrary WARN/error metadata to a hardcoded vendor endpoint. The optional voice asset contacts a vendor endpoint to obtain a voice token. No install-time or host-level attack behavior is present.

Static reason
One or more suspicious static signals were detected.
Trigger
Consumer renders and uses the chatbot; WARN/error logging occurs, or the user activates voice assistance.
Impact
Application URLs, stack traces, configured user/project context, and logged arguments can leave the consuming application.
Mechanism
Hardcoded runtime telemetry and voice-token HTTP requests
Rationale
The package is not malicious by the install-time or payload-execution boundary, but it implements hardcoded outbound telemetry that can transmit consumer application diagnostics and context. Downgrade to a warning for data-exfiltration risk.
Evidence
package.jsonfesm2022/fsm-nova-chatbot.mjsassets/react/voiceassistant.jsREADME.md
Network endpoints2
p0h8y2qp90.execute-api.us-east-1.amazonaws.com/prod/chatbot_upload_user_logsvoiceassistancefsm.fsmgrid.com/voice_assistance/

Decision evidence

public snapshot
AI called this Suspicious at 88.0% confidence as Dangerous Capability with low false-positive risk.
Evidence for warning
  • `fesm2022/fsm-nova-chatbot.mjs` posts WARN+ logs with username, project, license-key suffix, and arbitrary log arguments.
  • `fesm2022/fsm-nova-chatbot.mjs` uploads TypeError stack traces and current route/URL to a hardcoded AWS endpoint.
  • `assets/react/voiceassistant.js` requests a voice token from the vendor voice-assistance endpoint at runtime.
Evidence against
  • `package.json` has no lifecycle scripts, bin, or install-time entrypoint.
  • No `eval(` calls appear in shipped sources; `new Function` hits in the minified voice asset are library global-resolution patterns.
  • The Angular loader rejects remote voice-script URLs and loads only local `assets/react/voiceassistant.*` files.
  • README documents the chatbot APIs and local voice-assistant asset requirement.
Behavioral surface
Source
ChildProcessEvalNetworkWebSocket
Supply chain
HighEntropyStringsMinifiedObfuscatedProtestwareUrlStrings
ManifestNo manifest risk signals triggered.
scanned 2 file(s), 904 KB of source, external domains: agenticrag2point0.fsmgrid.com, agenticragusingletta.fsmgrid.com, aomediacodec.github.io, d2rmo4agtzvtr0.cloudfront.net, demo.fsmgrid.com, developer.mozilla.org, fonts.googleapis.com, fsmchatbot.s3.amazonaws.com, p0h8y2qp90.execute-api.us-east-1.amazonaws.com, reactjs.org, www.w3.org

Source & flagged code

2 flagged · loading source
assets/react/voiceassistant.jsView file
2patternName = generic_password severity = medium line = 2 matchedText = (()=>{"u...)();
Medium
Secret Pattern

Package contains a possible secret pattern.

assets/react/voiceassistant.jsView on unpkg · L2
1/*! For license information please see main.04d5dae9.js.LICENSE.txt */ L2: (()=>{"use strict";var e={730(e,t,n){var i=n(43),r=n(853);function o(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]=... L3: //# sourceMappingURL=main.04d5dae9.js.map
Low
Eval

Package source references a known benign dynamic code generation pattern.

assets/react/voiceassistant.jsView on unpkg · L1

Findings

4 Medium4 Low
MediumSecret Patternassets/react/voiceassistant.js
MediumNetwork
MediumProtestware
MediumStructural Risk Force Deep Review
LowEvalassets/react/voiceassistant.js
LowObfuscated
LowHigh Entropy Strings
LowUrl Strings