@vite-pro/vite-uinpm
Malicious code in @vite-pro/vite-ui (npm) Remove it immediately and rotate any exposed credentials.
What this malware does
Package @vite-pro/vite-ui impersonates the official vite package: package.json declares author Evan You, points repository at github.com/vitejs/vite, sets homepage to vitejs.dev, ships the upstream Vite README, and exposes a bin named vite. Appended to the end of bin/vite.js, after the legitimate CLI bootstrap and a large block of trailing whitespace, is an obfuscated IIFE that constructs a string table via a seeded Fisher-Yates shuffle (seed 4606094) to hide endpoints, method names, and constants. The loader then fetches a remote payload over HTTP, XOR-decrypts it with an embedded key, and evals the result. It subsequently fetches a second payload and passes it to child_process.spawn with detached:true, stdio:'ignore', and windowsHide:true, establishing a hidden, long-running process independent of the parent vite invocation. The loader runs every time a developer executes vite, npx vite, or npm run dev|build, giving the attacker arbitrary code execution and a persistent background process on the developer machine on each CLI use. The obfuscation technique (seeded string-array shuffle + XOR + eval + detached spawn) matches reported blockchain-C2 loader families.
Malicious versions
Indicators of compromise (SHA-256)
Detection & response playbook
Backdoor / remote accessFind it
Scan your lockfiles (package-lock.json, pnpm-lock.yaml, yarn.lock, requirements.txt, poetry.lock, etc.) and build artifacts for @vite-pro/vite-ui (version 2.5.10). O3 Security's supply-chain scanner checks every dependency against known-malicious package intelligence at install time and in CI, flagging @vite-pro/vite-ui across your stack and pipelines.
If you installed it — respond
@vite-pro/vite-ui establishes remote access, so treat any host that installed it as fully compromised. Isolate the machine, remove the package, rotate all credentials it could reach, and rebuild from a trusted image rather than cleaning in place — a backdoor may have planted additional persistence.
Did it already run?
If @vite-pro/vite-ui was ever installed, its post-install/runtime payload may have already executed. O3's L7 egress monitoring and runtime eBPF sensors detect the credential exfiltration or command-and-control callback after install and block the malicious outbound channel, so you catch and contain the actual compromise — not just the presence of the package.
How O3 protects you
O3 blocks @vite-pro/vite-ui before install through its supply-chain scanner, and if it has already run, detects and severs the exfiltration or C2 callback at runtime through L7 egress monitoring and eBPF.
Frequently asked questions
Campaign
References
Credits
- Amazon Inspector · finder
Detect & block this
O3 blocks @vite-pro/vite-ui-class packages before install and in CI — and if it already ran, its runtime egress monitoring catches the C2 callback and severs the channel.