nolimit-x (npm) · Malicious Code
Affects nolimit-xSource GCVE Database
Malicious package : remove nolimit-x and rotate any secrets on hosts that installed it.
Data as of 10 Jul 2026, 09:29 UTC
Malicious package
Published to npm · OSV MAL-2026-4621
What to do
Remove nolimit-x from every project, lockfile and image that pulls it in. Treat any host that installed it as compromised: rotate the credentials, tokens and keys it could read, from a clean machine.
Affected software
| Product | Affected | Fixed in |
|---|---|---|
| npmnolimit-x | Affected
| Fixed in– |
Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.
Description
--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (92a244ab5171edadc3082bc97d5b0834c4cfe98f2e5b6437503a30a7c1ac38aa) nolimit-x ships an entirely obfuscator.io-packed runtime (45 files under.ad/, including the x0.js entrypoint) with no readable source, and devDependencies + the build script confirm the obfuscation is intentional (`build: node scripts/obfuscate.js`, `javascript-obfuscator` in devDependencies). The decoded entrypoint exposes a CLI offensive toolkit: a `send` subcommand for bulk SMS via SMTP-to-carrier email gateways and bulk email; an `auth` subcommand performing OAuth device-code flows against Microsoft and Google to obtain SMTP + Microsoft Graph credentials; an `extract` subcommand that reads a victim mailbox's contacts via Graph + IMAP and writes them to disk; a `web` subcommand that injects a sending panel into a logged-in Chrome webmail tab; a `dkim` subcommand that generates DKIM keys for arbitrary sender domains; and `scan-redirects`. README markets it as an "Advanced email sender" with keywords including "red-team" and "smtp". A hardcoded license check (`http://api.nolimitent.xyz:4100/api/activate`) POSTs hardware ID, license key, hostname, and platform in cleartext when the operator runs license-gated subcommands. main and bin both point at.ad/x0.js, which calls program.parse() at module top level — a consumer that require()s the package will run commander against the consumer's process.argv (no network fires until argv matches a subcommand, but the library/CLI conflation plus pervasive obfuscation make pre-install audit infeasible). The package is a packaged phishing/spam/credential-phishing toolkit dressed as an npm library; installer-side harm is bounded (no auto-exfil at install or import), but the package's purpose is to enable attacks on third parties (mailbox owners, SMS recipients, OAuth account holders), and the obfuscation defeats normal supply-chain audit. ## Source: ghsa-malware (ccf60ba7ea5c4024535d8fb6006c06a6dc0c2bcd9f617d93f9f4bc07386f609b) Any computer that has this package installed or running should be considered fully compromised. All secrets and keys stored on that computer should be rotated immediately from a different computer. The package should be removed, but as full control of the computer may have been given to an outside entity, there is no guarantee that removing the package will remove all malicious software resulting from installing it.
References
- npmjs.com/package/nolimit-x/v/1.0.197 (opens in a new tab)
- npmjs.com/package/nolimit-x/v/1.0.194 (opens in a new tab)
- npmjs.com/package/nolimit-x/v/1.0.267 (opens in a new tab)
- npmjs.com/package/nolimit-x/v/1.0.264 (opens in a new tab)
- npmjs.com/package/nolimit-x/v/1.0.216 (opens in a new tab)
- npmjs.com/package/nolimit-x/v/1.0.263 (opens in a new tab)
- npmjs.com/package/nolimit-x/v/1.0.239 (opens in a new tab)
- npmjs.com/package/nolimit-x/v/1.0.220 (opens in a new tab)
- npmjs.com/package/nolimit-x/v/1.0.256 (opens in a new tab)
- npmjs.com/package/nolimit-x/v/1.0.227 (opens in a new tab)
- npmjs.com/package/nolimit-x/v/1.0.274 (opens in a new tab)
- npmjs.com/package/nolimit-x/v/1.0.236 (opens in a new tab)
- npmjs.com/package/nolimit-x/v/1.0.240 (opens in a new tab)
- github.com/advisories/GHSA-cp8c-2xwh-q227 (opens in a new tab)
- npmjs.com/package/nolimit-x/v/1.0.277 (opens in a new tab)
- npmjs.com/package/nolimit-x/v/1.0.291 (opens in a new tab)
- npmjs.com/package/nolimit-x/v/1.0.292 (opens in a new tab)
- npmjs.com/package/nolimit-x/v/1.0.290 (opens in a new tab)
- npmjs.com/package/nolimit-x/v/1.0.271 (opens in a new tab)
- npmjs.com/package/nolimit-x/v/1.0.282 (opens in a new tab)