Malicious code in @newline53/newline-ts-sdk (npm)
-= Per source details. Do not edit below this line.=-
On npm install, the postinstall hook (node install.js) collects os.hostname() and os.userInfo().username along with the package name, encodes them as a DNS subdomain of mjcfux88wjjahplabxdauc6bl.canarytokens.com, and beacons out via DNS resolution (dns.lookup/dns.resolve) and HTTP requests (shelled curl/wget to http://<host-username-pkg>.mjcfux88wjjahplabxdauc6bl.canarytokens.com). The package has no real functionality — index.js is module.exports = {} — and package.json carries placeholder author metadata (a 32-char hex string with no homepage or repository). The structure (empty main, recon-only postinstall, canarytoken endpoint) is the canonical dependency-confusion probe: an attacker publishes a public npm package matching an internal scope name to detect whether private builds inside a target organization resolve to and install the public name. The exfiltrated hostname/username identifies the victim environment to the attacker.
The OpenSSF Package Analysis project identified '@newline53/newline-ts-sdk' @ 1.0.1 (npm) as malicious.
It is considered malicious because:
The package communicates with a domain associated with malicious activity.
The package executes one or more commands associated with malicious behavior.
왜 이 VPI인가 (설명가능 · 실험적)
VPI 산정 기준
| 영향도(기본값(정보 없음)) | 55.00 |
| 악용 신호(추가 악용신호 없음) | ×1.00 |
| VPI | 55.00 |
VPI 공식 vpi-v1 기준