AI Security Review
scanned 1h ago · by lpm-firewall-aiNo confirmed malicious attack surface is established. The install hook only caches the first-party compiled CLI binary for runtime use, and the bin wrapper resolves and runs that binary when the user invokes trumbo.
Static reason
One or more suspicious static signals were detected.
Trigger
npm install runs postinstall; user runs trumbo bin entrypoint
Impact
Installs and executes the Trumbo CLI binary; no source evidence of exfiltration, persistence beyond package cache, or control-surface hijack
Mechanism
first-party platform binary resolution and cache copy
Rationale
Static inspection shows a normal native-binary npm wrapper with an install-time cache copy, not a malicious install chain. Suspicious primitives are package-aligned and there is no evidence of credential theft, remote execution, destructive behavior, or AI-agent control hijacking.
Evidence
package.jsonpostinstall.mjslocal-binary-cache.mjsbin/trumbobin/trumbo.cmdbin/.trumbo~/.trumbo/bin/trumbo%LOCALAPPDATA%/Trumbo/bin/trumbo.exe
Decision evidence
public snapshotAI called this Clean at 90.0% confidence as Benign with low false-positive risk.
Evidence for block
- package.json defines postinstall: node ./postinstall.mjs || true
- postinstall.mjs copies platform binary to a local runtime cache and bin/.trumbo
- bin/trumbo executes a resolved platform binary with inherited environment
- bin/trumbo honors TRUMBO_BIN_PATH override when user runs the CLI
Evidence against
- No network code in package source beyond README/repository URLs
- No credential/env harvesting or exfiltration found
- No eval/vm/Function or remote payload loading found
- postinstall resolves only @trumbodev/cli platform optionalDependencies
- Filesystem writes are package-aligned binary cache paths for CLI execution
- No AI-agent config/control-surface mutation found
Behavioral surface
EnvironmentVarsFilesystem
Source & flagged code
3 flagged · loading sourcepackage.jsonView file
•scripts.postinstall = node ./postinstall.mjs || true
High
Install Time Lifecycle Scripts
Package defines install-time lifecycle scripts.
package.jsonView on unpkg•scripts.postinstall = node ./postinstall.mjs || true
Medium
Ambiguous Install Lifecycle Script
Install-time lifecycle script is not statically allowlisted and needs review.
package.jsonView on unpkgbin/trumbo.cmdView file
•path = bin/trumbo.cmd
kind = build_helper
sizeBytes = 507
magicHex = [redacted]
Medium
Ships Build Helper
Package ships non-JavaScript build or shell helper files.
bin/trumbo.cmdView on unpkgFindings
1 High3 Medium2 Low
HighInstall Time Lifecycle Scriptspackage.json
MediumAmbiguous Install Lifecycle Scriptpackage.json
MediumEnvironment Vars
MediumShips Build Helperbin/trumbo.cmd
LowScripts Present
LowFilesystem