{"schema_version":"1.9.2","id":"MAL-2026-18073","published":"2026-10-19T00:00:00Z","modified":"2026-10-29T14:30:39.854766273Z","summary":"Malicious code in animatecss-tailwind-presets (npm)","details":"animatecss-tailwind-presets (1.0.0, 2.0.3) 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 elony16 on 2026-09-29. 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.\n\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (0e619a76a3bfc624c234c1bae57119ab1e351e36563c86aaf3067d02ff7f3a94)\nPackage animatecss-tailwind-presets@1.0.0 contains no evidence of installer-facing malicious behavior. No lifecycle scripts fetching or executing remote content, no credential or environment scraping, no silent-relay of caller data, no hardcoded attacker-controlled network destinations, and no obfuscated payloads were identified across the 8 scanned files. The package appears to be a small Tailwind CSS preset shim consistent with its stated purpose.\n","affected":[{"package":{"name":"animatecss-tailwind-presets","ecosystem":"npm","purl":"pkg:npm/animatecss-tailwind-presets"},"versions":["1.0.0","2.0.3"],"database_specific":{"cwes":[{"cweId":"CWE-506","description":"The product contains code that appears to be malicious in nature.","name":"Embedded Malicious Code"},{"cweId":"CWE-506","description":"The product contains code that appears to be malicious in nature.","name":"Embedded Malicious Code"}],"indicators":{"package_integrity":[{"filename":"animatecss-tailwind-presets-1.0.0.tgz","hashes":{"sha1":"54bdedfad2ea0d09c0338b91cd300141462968c7","sha512_sri":"sha512-8H6DcicgyaiC47d5WQzEgvLTzZYlgOzORkjGowdd9mG/97bFrIhkSndLWiqZZTvOWQ8az6Ys8EW/EjOI0eA9SQ=="}}]},"source":"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/animatecss-tailwind-presets/MAL-2026-18073.json"}}],"references":[{"type":"ADVISORY","url":"https://osv.dev/vulnerability/MAL-2026-17665"},{"type":"ADVISORY","url":"https://osv.dev/vulnerability/MAL-2026-17666"},{"type":"ADVISORY","url":"https://osv.dev/vulnerability/MAL-2026-17667"},{"type":"WEB","url":"https://pkgwarden.com/incidents/fake-interview-tailwind-plugins-npm-october-2026/"},{"type":"PACKAGE","url":"https://www.npmjs.com/package/animatecss-tailwind-presets/v/1.0.0"},{"type":"PACKAGE","url":"https://www.npmjs.com/package/animatecss-tailwind-presets/v/2.0.3"}],"database_specific":{"iocs":{"files":[{"note":"require of private scoped dependency @jasperquinn/postcss-motion-helpers","paths":["src/motion.js"],"source":"PACKAGE_ARCHIVE"}]},"malicious-packages-origins":[{"id":"IN-MAL-2026-022279","import_time":"2026-10-29T14:14:39.691957955Z","modified_time":"2026-10-29T14:12:06Z","sha256":"0e619a76a3bfc624c234c1bae57119ab1e351e36563c86aaf3067d02ff7f3a94","source":"amazon-inspector","versions":["1.0.0"]},{"id":"IN-MAL-2026-022278","import_time":"2026-10-29T14:14:39.616066162Z","modified_time":"2026-10-29T14:11:59Z","sha256":"bd1ee8426b6f9500fb1e5c8ff5509460825a44e167d7715f038f23c4a5e50448","source":"amazon-inspector","versions":["2.0.3"]}]},"credits":[{"name":"Amazon Inspector","contact":["inspector-research@amazon.com"],"type":"FINDER"},{"name":"pkgwarden","contact":["https://pkgwarden.com"],"type":"FINDER"}]}