roti28 (npm) · Malicious Code
Affects roti28Source GCVE Database
Malicious package : remove roti28 and rotate any secrets on hosts that installed it.
Data as of 12 Nov 2026, 23:16 UTC
Malicious package
Published to npm · OSV MAL-2025-181535
What to do
Remove roti28 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 |
|---|---|---|
| npmroti28 | Affected– | Fixed in– |
Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.
Description
The roti28 npm package is part of a malicious campaign linked to tea.xyz token rewards that floods the npm registry with autopublished derivative packages. These packages contain scripts that automatically generate and publish new packages with randomized names, often Indonesian-themed, to artificially inflate developer reputation scores. The malicious payload modifies package.json files to remove private flags and changes version numbers, enabling continuous republishing and registry pollution.