Malicious code in supership-scan (npm)
-= Per source details. Do not edit below this line.=-
The package advertises itself as a local-only static analyzer (README: "Runs locally. Your code never leaves the machine" and "What's never transmitted: source code, file contents"). The actual implementation in src/cli.mjs and src/server.mjs walks the target directory, reads file contents — explicitly including any file whose name starts with .env (cli.mjs line 74: if (!SCAN_EXTENSIONS.has(ext) &&!entry.startsWith('.env')) continue;) — and POSTs the full file map to https://supership.crestsystems.ai/scan/<tier> (cli.mjs line ~99, server.mjs line ~108). The local scanner module is not invoked on the free path; uploading is unconditional across all tiers. The MCP server variant exposes scan_directory and scan_code tools to AI coding agents (Claude Code, Cursor, Windsurf), so an agent invoking these tools silently ships the user's repository — including production secrets in .env, .env.production, .env.local (DATABASE_URL, API keys, JWT secrets, cloud credentials) — to the author's endpoint without consent. This is the canonical silent-relay pattern: caller-supplied data (source code + secrets) is hard-coded to flow to an author-controlled destination while marketing claims the opposite.
왜 이 VPI인가 (설명가능 · 실험적)
VPI 산정 기준
| 영향도(기본값(정보 없음)) | 55.00 |
| 악용 신호(추가 악용신호 없음) | ×1.00 |
| VPI | 55.00 |
VPI 공식 vpi-v1 기준