AI Security Review
scanned 2h ago · by lpm-firewall-aiInstallation fetches and installs a remotely supplied executable, then the package CLI launches it. The checksum is retrieved from the same nightly endpoint, so it detects corruption but does not independently authenticate the payload.
Static reason
One or more suspicious static signals were detected.
Trigger
npm installation runs `postinstall`; invoking `hallouminate` runs the downloaded binary.
Impact
A compromised or changed nightly release asset can execute arbitrary native code on supported install hosts.
Mechanism
install-time remote binary download, extraction, and execution
Rationale
Source inspection confirms an install-time remote native-payload chain, but no direct malicious behavior is present in the package JavaScript. Treat it as a staged payload carrier with unresolved supply-chain execution risk.
Evidence
package.jsoninstall.jsrun.jsbin/hallouminate
Network endpoints2
github.com/paulnsorensen/hallouminate/releases/download/nightly/hallouminate-{target}.tar.xzgithub.com/paulnsorensen/hallouminate/releases/download/nightly/hallouminate-{target}.tar.xz.sha256
Decision evidence
public snapshotAI called this Suspicious at 91.0% confidence as Dangerous Capability with low false-positive risk.
Evidence for warning
- `package.json` runs `node install.js` as `postinstall`.
- `install.js` downloads a platform binary during installation.
- `install.js` fetches the checksum from the same mutable nightly release location.
- `install.js` extracts the downloaded archive into `bin/` and marks it executable.
- `run.js` executes the installed `bin/hallouminate` binary.
Evidence against
- No credential, environment, or user-file harvesting is present.
- No direct exfiltration, persistence, or destructive operation appears in the JavaScript.
- Downloads require HTTPS and reject non-HTTPS redirects.
- The wrapper only forwards signals and launches the package-local binary.
Behavioral surface
ChildProcessCryptoFilesystemNetwork
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