NIST deprecates RSA-2048 from 2030. Find every one of them before attackers do.
Malicious package

tailwind-typography-stylenpm

Advisory published Updated

tailwind-typography-style is a confirmed malicious npm package (MAL-2026-5854) that typosquats a legitimate package to trick installs (malicious version 0.5.8). Do not install it — remove it immediately and rotate any exposed credentials.

Malicious code in tailwind-typography-style (npm)

MAL-2026-5854
Immediate action
Remove the package, then rotate any secrets the build/runtime could reach.
npm uninstall tailwind-typography-style

What this malware does

The package impersonates @tailwindcss/typography by name and ships a verbatim copy of tailwindlabs/tailwindcss-typography's src/ tree (index.js, styles.js, utils.js) so it appears functional. After the legitimate module.exports = plugin.withOptions(...) block, src/index.js appends a custom string-shuffle cipher (the _$_1e42 IIFE and sfL decoder) that decodes the strings require, module, and constructor, retrieves the Function constructor via sfL[EKc], compiles a deobfuscated body string into a function (var xBg=dgC(Apa,sfL(joW)); var pYd=xBg(sfL('o B%v[Raca...'));), and immediately invokes it (Tgw(2509)). Node's require is stashed on global under a deobfuscated key so the dynamically-created function has full access to the filesystem, network, and child_process. Any project that does require('tailwind-typography-style') (or imports it through a Tailwind config) executes attacker-controlled code at module load while the legitimate plugin API masks the behavior. Two layers of custom Fisher–Yates string-shuffle obfuscation are used to hide payload contents from static review — there is no legitimate reason for a Tailwind CSS plugin to perform runtime code generation.

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.

Malicious versions

1 flagged
0.5.8

Indicators of compromise (SHA-256)

e586cfdd5f2f3377c2cb4ee333817075c3ca88bf4261e741b9d7ef527ca80868
5b5b1eea6bfed81a0e57b9af519c45155347e3937a20dc8ef4e9ab1cae6ff73d

Detection & response playbook

Typosquat
  1. Find it

    Search your lockfiles and build artifacts for tailwind-typography-style (version 0.5.8).

  2. If you installed it — respond

    tailwind-typography-style is a typosquat — you almost certainly intended a legitimately-named package. Remove tailwind-typography-style, install the correct package, and rotate any secrets exposed during the install since post-install scripts may have already run.

  3. Did it already run?

    If tailwind-typography-style was installed, its post-install payload may already have run. Removing the package does not undo that — check outbound connections and credential use from the install window onward.

Frequently asked questions

No. tailwind-typography-style on npm has been identified as a malicious package (version 0.5.8 flagged). It should be removed immediately — do not install or keep it in your dependency tree.

Campaign

GHSA-xw83-9jhm-jj7jIN-MAL-2026-006762

References

Credits

  • Amazon Inspector · finder

Detect & block this

O3 blocks tailwind-typography-style-class packages before install and in CI — and if it already ran, its runtime egress monitoring catches the malicious outbound activity and severs the channel.

Explore

tailwind-typography-style (npm) malicious package — MAL-2026-5854 | O3 Security