{"id":"MAL-2026-18074","revision":"f8bdb90e6230404c9b01f7300189be6a","records":[{"revision":"f8bdb90e6230404c9b01f7300189be6a","observedAt":"2026-10-24T13:17:17.793+00:00","statement":{"source":"osv","id":"MAL-2026-18074","aliases":[],"title":"Malicious code in animatecss-tailwind-vectrix (npm)","description":"animatecss-tailwind-vectrix (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 @aaron205whitmore/postcss-animate-utils, 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:04.9310807+00:00","affected":[{"ecosystem":"npm","name":"animatecss-tailwind-vectrix","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-18074","license":"OSV · upstream source license applies","key":"osv:MAL-2026-18074","identifiers":["MAL-2026-18074"]},"retained":false,"historicalAffected":[]}],"coverage":[]}