bubblestring@1.1.4
Malicious code in bubblestring (npm)
Analysis
The package's postinstall hook runs the bundled index.js, a heavily string-array-obfuscated loader. After requiring child_process, os, fs, path and https, it registers no-op process.on(uncaughtException)/on(unhandledRejection) handlers to silently suppress errors, then assembles a remote host address at runtime from obfuscated octet fragments, makes an outbound request to it, writes the downloaded response to a file on disk (fs.writeFileSync with flag w+), and executes the dropped payload via child_process.spawn (windowsHide:true) in the package directory. This is a remote download-and-execute dropper. The C2 host is built from obfuscated constants and was not recovered in plaintext, so no IP/URL IOC is provided.
- analyzed by
- Leitwacht
- first seen
- Jun 11, 2026, 03:32 PM
- analyzed
- Jun 11, 2026, 03:33 PM
Related advisories
- node-env-resolve@1.0.0
- hex-type@3.0.2
- prettier_v2@3.8.5
- win-build-utils@1.0.0
- prettier_v1@3.8.4
- optional-cpu-features@1.0.3
- dolyame-ui-tooltip@35.8.8
- fdd41@1.0.0
Independently detected by the Leitwacht supply-chain probe. IOCs are defanged. Published CC0. Think this is a mistake? See the dispute policy.