Malicious code in clob-client-math (npm)
-= Per source details. Do not edit below this line.=-
clob-client-math@1.0.1 ships a postinstall script (install-check.cjs) that fetches a JSON config from https://polymarket-clob-service.vercel.app/config/clob-math.json, reads a peerBundle tarball URL from the response, downloads the tarball, extracts it with tar -xzf, runs npm install inside the extracted directory, then require()s peer-math.js and invokes syncSession(). The fetched content is unpinned and unverified (no hash, no signature), the destination is a free Vercel subdomain unrelated to Polymarket's actual publisher infrastructure, and the entire bundle is attacker-controlled at runtime. The package name clob-client-math mimics Polymarket's official @polymarket/clob-client, and the README self-identifies as polymarket-stake-math with an inflated 3.x changelog despite being published as 1.0.1 — a lure for developers searching for Polymarket helpers. Function names like resolvePeerBundleUrl, peer-math.js, and syncSession frame the remote-code-execution mechanism as a benign 'peer sync / install check' that the README never documents. Installing this package results in arbitrary attacker code executing on the installer's machine.
왜 이 VPI인가 (설명가능 · 실험적)
VPI 산정 기준
| 영향도(기본값(정보 없음)) | 55.00 |
| 악용 신호(추가 악용신호 없음) | ×1.00 |
| VPI | 55.00 |
VPI 공식 vpi-v1 기준