MAL-2026-16148 Malicious code in noblox-asset.js (npm)
Malicious package
Published
MAL-2026-16148 is a malicious package: noblox-asset.js (npm). Every version was published to cause harm.
Task:
1. Search this repository's dependency manifests and lockfiles for the package, including transitive dependencies.
2. If it is present, remove it, regenerate the lockfile with the project's package manager, and replace whatever it was used for.
3. List any CI runners, developer machines or containers that installed it, so their secrets can be rotated.
4. If the package is not used anywhere, say so and change nothing.
Reference: https://insights.sbomify.com/MAL-2026-16148/ (Markdown: https://insights.sbomify.com/MAL-2026-16148/index.md)
- Package
- noblox-asset.js
- Registry
- npm
What is MAL-2026-16148?
MAL-2026-16148 is a malicious package in noblox-asset.js, published on 14 Sep 2026.
Official description
noblox-asset.js impersonates the noblox.js Roblox API wrapper: package.json copies the legitimate package's description, homepage (github.com/noblox/noblox.js), and repository metadata while shipping a heavily obfuscated postinstall.mjs. On npm install, the postinstall script performs sandbox-evasion checks (recent-boot gating <15 minutes, parent-process allowlist, running-process checks for x64dbg/ollydbg/ida/procmon, VirtualBox/VMware/QEMU/Xen/Parallels/Hyper-V registry/driver/MAC-OUI checks) and, on non-sandbox hosts, downloads https://trlxgames.netlify.app/TRLX.exe to os.tmpdir()/NOBLOX_CLI.exe and spawns it detached with stdio ignored and unref, so the process survives after npm exits. The download destination is unrelated to the impersonated project's publisher, the binary is unpinned and unverified, and the script uses obfuscator.io-style _0xNNNN string-array indirection to hide the flow.
What should I do about MAL-2026-16148?
Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.