Chai.js 플러그인으로 위장한 북한발 npm 악성 패키지 'chai-as-init' 분석
2026-06-16 • ESTSecurity • Analysis of the North Korea-origin npm malware package 'chai-as-init' disguised as a Chai.js plugin •
ESRC found that the malicious npm package chai-as-init, distributed in versions 1.4.5 through 1.4.7, impersonated a Chai.js plugin while hiding malicious code in only two files copied into a mostly legitimate-looking pino package tree. Loading the package spawned a detached background process and used a second-stage loader to fetch and execute remote JavaScript, with later versions exfiltrating the full process.env before receiving code from Vercel-hosted C2 infrastructure. The recovered v1.4.5 payload collected host, OS, user, WSL, filesystem, and command-output data, encrypted it, and posted it to an attacker server. ESRC attributed the activity to the DPRK-linked Contagious Interview campaign based on matching TTPs including typosquatting, Base64-encoded C2 URLs, environment-variable theft, new Function-based RCE, axios C2 traffic, and Vercel infrastructure.
Indicators of Compromise
| Type | Value | First Seen | Last Seen |
|---|---|---|---|
| URL | http://144.172.89.180:8086/uplo… | 2026-06-16 | 2026-06-16 |
| IPv4 | 144.172.89.180 | 2026-06-16 | 2026-06-16 |
| URL | https://ipcheck-hashed.vercel.a… | 2026-06-16 | 2026-06-16 |
| DOMAIN | ipcheck-hashed.vercel.app | 2026-06-16 | 2026-06-16 |
| URL | https://ipcheck-hashed.vercel.a… | 2026-06-16 | 2026-06-16 |
| HASH | f8f5df788c5b46e1fa779f01658f94c1 | 2026-06-16 | 2026-06-16 |
| HASH | 078b18eb695da94b85d29c94462ba64c | 2026-06-16 | 2026-06-16 |
| HASH | 02c31a426801c27d65b02d9e04c28fd4 | 2026-06-16 | 2026-06-16 |
| HASH | 751f36896a5547c4eaecff9ec80558cd | 2026-06-16 | 2026-06-16 |
| HASH | ebed87a47743fa5d81f8e1b2bf6e9058 | 2026-06-16 | 2026-06-16 |
| HASH | 860db751fc7700524bd3895b43dab67c | 2026-06-16 | 2026-06-16 |
| HASH | 90708bf06b972fbde9ae254aa3e0f835 | 2026-06-16 | 2026-06-16 |