registry  /  @apexfdn/apex  /  1.0.20

@apexfdn/apex@1.0.20

Coding agent CLI with read, bash, edit, write tools and session management

AI Security Review

scanned 2h ago · by lpm-firewall-ai

Install-time code downloads opaque platform executables and a Windows native addon, then the CLI executes the downloaded binary. The package contains no integrity verification for these remote payloads.

Static reason
One or more suspicious static signals were detected.
Trigger
npm dependency installation triggers `postinstall`; invoking `apex` triggers the downloaded executable.
Impact
A release-hosted payload can gain code execution during later CLI use and native code can be placed under the user's home directory.
Mechanism
Unverified postinstall remote binary and native-addon delivery.
Attack narrative
On installation, `install.cjs` fetches a platform-specific executable from a remote GitHub release and saves it as `bin/apex`, with no hash, signature, or pinned artifact validation. On Windows it additionally drops a remote native addon under `~/.apex`. The `apex` command subsequently launches the downloaded executable with the caller's environment. The empty packaged binary and release/version mismatch make the remotely staged payload the effective executable content.
Rationale
This package performs unverified install-time retrieval of executable and native-code payloads, then executes the retrieved binary. That is a concrete opaque remote-payload chain rather than a benign source-only CLI installer.
Evidence
package.jsoninstall.cjsapex.cjsbin/apex~/.apex/natives/16.3.6/pi_natives.win32-x64-baseline.node
Network endpoints1
github.com/Apex-Foundation/copilot/releases/download/v1.0.0/

Decision evidence

public snapshot
AI called this Malicious at 97.0% confidence as Malware with low false-positive risk.
Evidence for block
  • `package.json` runs `node install.cjs` as `postinstall`.
  • `install.cjs` downloads an OS-specific executable from GitHub during install.
  • Downloaded executable is written to `bin/apex` without checksum or signature verification.
  • `apex.cjs` executes that downloaded binary with inherited environment variables.
  • Windows install also downloads a native `.node` addon into `~/.apex/natives/16.3.6`.
  • Package version `1.0.20` fetches release `v1.0.0`; shipped `bin/apex` is empty.
Evidence against
  • No credential collection or explicit data exfiltration appears in inspected JavaScript.
  • Network host is a named GitHub release endpoint, not an obscured domain.
  • The wrapper only launches the installed binary on explicit CLI invocation.
Behavioral surface
Source
ChildProcessEnvironmentVarsFilesystemNetwork
Supply chain
UrlStrings
ManifestNo manifest risk signals triggered.
scanned 2 file(s), 3.12 KB of source, external domains: github.com

Source & flagged code

2 flagged · loading source
package.jsonView file
scripts.postinstall = node install.cjs
High
Install Time Lifecycle Scripts

Package defines install-time lifecycle scripts.

package.jsonView on unpkg
scripts.postinstall = node install.cjs
Medium
Ambiguous Install Lifecycle Script

Install-time lifecycle script is not statically allowlisted and needs review.

package.jsonView on unpkg

Findings

1 High3 Medium3 Low
HighInstall Time Lifecycle Scriptspackage.json
MediumAmbiguous Install Lifecycle Scriptpackage.json
MediumNetwork
MediumEnvironment Vars
LowScripts Present
LowFilesystem
LowUrl Strings