AI Security Review
scanned 2h ago · by lpm-firewall-aiInstall-time code fetches and unpacks an opaque native bridge payload. The launcher later executes that payload; its behavior cannot be established from this package source.
Static reason
One or more suspicious static signals were detected.
Trigger
npm postinstall, or invoking `rein` after an ignored/failed install
Impact
A compromised release endpoint or environment override can supply code later executed as the invoking user.
Mechanism
remote native payload download, extraction, and runtime execution
Rationale
Source shows automatic remote native-payload acquisition and later execution, but no confirmed credential theft, destructive action, or foreign AI-agent control-surface mutation. Treat as unresolved staged-payload risk rather than a confirmed malicious package.
Evidence
package.jsonscripts/postinstall.mjsbin/rein.jsREADME.mdvendor/reinvendor/spawn-helpervendor/.rein-managed-by
Network endpoints2
github.com/rein-industries/rein/releases/download/v0.1.39REINS_RELEASE_BASE
Decision evidence
public snapshotAI called this Suspicious at 88.0% confidence as Dangerous Capability with medium false-positive risk.
Evidence for warning
- `package.json` runs `postinstall` automatically.
- `scripts/postinstall.mjs` downloads a platform tarball during install.
- Download base can be overridden with `REINS_RELEASE_BASE`.
- Checksum file and executable payload come from the same remote release.
- `bin/rein.js` executes downloaded `vendor/rein` with inherited stdio.
Evidence against
- Fetched assets are version-derived from package version by default.
- Postinstall extracts only under package-local `vendor/`.
- Source verifies SHA-256 before extraction.
- No source evidence of credential harvesting, exfiltration, or AI-config writes.
- Install download failure is non-fatal and no payload executes in postinstall.
Behavioral surface
ChildProcessCryptoEnvironmentVarsFilesystemNetworkShell
UrlStrings
NoLicense
Source & flagged code
2 flagged · loading sourcepackage.jsonView file
•scripts.postinstall = node scripts/postinstall.mjs
High
Install Time Lifecycle Scripts
Package defines install-time lifecycle scripts.
package.jsonView on unpkg•scripts.postinstall = node scripts/postinstall.mjs
Medium
Ambiguous Install Lifecycle Script
Install-time lifecycle script is not statically allowlisted and needs review.
package.jsonView on unpkgFindings
1 High3 Medium4 Low
HighInstall Time Lifecycle Scriptspackage.json
MediumAmbiguous Install Lifecycle Scriptpackage.json
MediumNetwork
MediumEnvironment Vars
LowScripts Present
LowFilesystem
LowUrl Strings
LowNo License