AI Security Review
scanned 2d ago · by lpm-firewall-aiNo confirmed malicious attack surface in reviewed JS source. The package uses a conventional native-binary installer that downloads package-aligned Reflex Search release artifacts, with no observed exfiltration or foreign control-surface mutation.
Static reason
One or more suspicious static signals were detected.
Trigger
npm install runs postinstall; rfx CLI execution runs installed binary
Impact
Installs and launches the Reflex Search CLI binary; source review found no malicious JS behavior
Mechanism
package-aligned native binary download and wrapper execution
Rationale
Static inspection found install-time network and child_process use, but both are limited to downloading/extracting package release artifacts and running the package CLI binary. No concrete malicious behavior or unconsented AI-agent/control-surface modification is present in the package source.
Evidence
package.jsoninstall.jsbinary.jsbinary-install.jsrun-rfx.jsnode_modules/.bin_realOS temp directory artifact file
Network endpoints1
github.com/reflex-search/reflex/releases/download/v1.6.0
Decision evidence
public snapshotAI called this Clean at 86.0% confidence as Benign with low false-positive risk.
Evidence for block
- package.json has postinstall: node ./install.js
- binary-install.js downloads release artifacts and extracts them during install
- run-rfx.js spawns the installed native rfx binary when CLI is invoked
Evidence against
- install.js only calls package-owned binary installer
- binary.js constructs download URLs from package.json GitHub release base and platform artifact names
- installer writes under package directory node_modules/.bin_real and temporary OS directory
- no credential harvesting, env/file exfiltration, persistence, AI-agent control-surface writes, eval, or remote command execution found
Behavioral surface
ChildProcessFilesystemNetwork
UrlStrings
Source & flagged code
2 flagged · loading sourcepackage.jsonView file
•scripts.postinstall = node ./install.js
High
Install Time Lifecycle Scripts
Package defines install-time lifecycle scripts.
package.jsonView on unpkg•scripts.postinstall = node ./install.js
Medium
Ambiguous Install Lifecycle Script
Install-time lifecycle script is not statically allowlisted and needs review.
package.jsonView on unpkgFindings
1 High2 Medium3 Low
HighInstall Time Lifecycle Scriptspackage.json
MediumAmbiguous Install Lifecycle Scriptpackage.json
MediumNetwork
LowScripts Present
LowFilesystem
LowUrl Strings