{"id":"MAL-2026-18071","revision":"d6d70dc1b6d840f2a489598f5b959203","records":[{"revision":"d6d70dc1b6d840f2a489598f5b959203","observedAt":"2026-10-24T13:17:17.793+00:00","statement":{"source":"osv","id":"MAL-2026-18071","aliases":[],"title":"Malicious code in animatecss-tailwind-luminary (npm)","description":"animatecss-tailwind-luminary (2.0.6, 2.0.7) is a Tailwind CSS plugin from the fake job interview campaign behind MAL-2026-17665 and MAL-2026-17666: the same Animate.css integration template, README and description, published by cypherbyte on 2026-09-28. src/motion.js:5 requires the private scoped package @jasperquinn/postcss-motion-helpers, which is not readable on the public registry and resolves only with the npm token committed in the lure repository's web/.npmrc, so the code it delivers runs when tailwind.config.js loads the plugin and the dev server starts. The published tarball contains no install scripts and no network code; the payload lives in the private dependency, which was not retrieved. Twenty-six such packages under seventeen accounts were published between 2026-07-28 and 2026-10-09.","state":0,"publishedAt":"2026-10-19T00:00:00+00:00","modifiedAt":"2026-10-20T06:15:06.8150762+00:00","affected":[{"ecosystem":"npm","name":"animatecss-tailwind-luminary","ranges":[],"versions":["2.0.6","2.0.7"],"rawVersionEvidence":null}],"metrics":[],"references":["https://osv.dev/vulnerability/MAL-2026-17665","https://osv.dev/vulnerability/MAL-2026-17666","https://osv.dev/vulnerability/MAL-2026-17667","https://pkgwarden.com/incidents/fake-interview-tailwind-plugins-npm-october-2026/"],"sourceUrl":"https://osv.dev/vulnerability/MAL-2026-18071","license":"OSV · upstream source license applies","key":"osv:MAL-2026-18071","identifiers":["MAL-2026-18071"]},"retained":false,"historicalAffected":[]}],"coverage":[]}