Your RSA-2048 keys break in 2030. Find every one of them before attackers do.
Malicious package

html-to-gutenbergnpm

html-to-gutenberg is a confirmed malicious npm package (MAL-2026-6359) that opens a backdoor for remote access (malicious versions 4.2.11, 4.2.12, 4.2.13…). Do not install it — remove it immediately and rotate any exposed credentials.

Malicious code in html-to-gutenberg (npm)

MAL-2026-6359
Immediate action
Remove the package, then rotate any secrets the build/runtime could reach.
npm uninstall html-to-gutenberg

What this malware does

The package ships a.vscode/tasks.json with runOn=folderOpen, hide=true, and presentation.reveal=never that silently executes node./public/fonts/fa-solid-500.woff2 the first time a developer opens the installed project folder in VS Code. The referenced file is not a font — it is a Node.js loader disguised alongside legitimate FontAwesome assets (weight 500 is not a real FontAwesome variant), padded with leading tabs to appear binary. When executed, the loader queries Ethereum RPCs and the eth.blockscout.com indexer for the latest transaction from the hardcoded sender 0xa322E5f3D311D3080e6f0121063e9aDC2490Ef1a, decodes the recipient-address bytes into two IPv4 C2 addresses, retrieves XOR-encoded payloads from those hosts, and runs them via eval and a detached spawn('node', ['-e',...]). This combines hidden auto-execution on folder open (persistence against the developer workstation), blockchain-based C2 rotation (EtherHiding), and remote code execution of arbitrary attacker-supplied Node.js.

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

12 flagged
4.2.114.2.124.2.134.2.144.2.154.2.164.2.174.2.184.2.194.2.204.2.214.2.22

Indicators of compromise (SHA-256)

6381496c1a275836b5d3c11ca7f141ad32f84b5263450bf5cb3c9a91289dcd1d
e311a5a838f758acacf488a502568566fb82c33303aee309a41614113ea6900c
3edf079490239b2b4c592ce4b7094c8089596437c15a73972ebd8282484a5273
c6ca99ca29cc0ce98db0ac82ab220dbd8add677417dc2ac8e721f52eb2c14304
d8a81a28406e20afb4ca23058394ebd8b749e84333b0fd24a3b2e63a65b18c57
4a8795db7351a0b860948e1e15eaef37cf5d04c4d2ef5881b6e5d536928a4d57
1174968e4d17db473aae7b809beb7fdc736524f984820800de480d224a2053db
37f20c51102a5bf8a10320e2c027a33879f96c70b089ac4d0c9f916c9b18e0f4
45cdbd96e2d8c43d17c85e878889d2d9f30e57a3f752db4a7754d4a55f0e2a38
dc78f8bbd3aafcfdf8b05c8fedd24102217ef9aec466b970dbed228adc104372
ec30d6141fa856c57d3ffe4f270bd860c2bc2d075a383582980a0763d57afa2b
8d9512b7f6c1494ff9ef05358c9f2c661ad85de87e4b860f5b35877b8086a673
b4e3b38055d924ccd5540e529660f55d9e4f49a2f76897c0903e7475fab1ffd1
bd513f59d8ff4eef00b432a6197c2fea08a82c63f9df1e7ef362c7308e7692fe
81dce66e380f5f6d08a3a321d6769102a645df0293147ca6378b588134654cc1

Detection & response playbook

Backdoor / remote access
  1. Find it

    Scan your lockfiles (package-lock.json, pnpm-lock.yaml, yarn.lock, requirements.txt, poetry.lock, etc.) and build artifacts for html-to-gutenberg (12 malicious versions). O3 Security's supply-chain scanner checks every dependency against known-malicious package intelligence at install time and in CI, flagging html-to-gutenberg across your stack and pipelines.

  2. If you installed it — respond

    html-to-gutenberg establishes remote access, so treat any host that installed it as fully compromised. Isolate the machine, remove the package, rotate all credentials it could reach, and rebuild from a trusted image rather than cleaning in place — a backdoor may have planted additional persistence.

  3. Did it already run?

    If html-to-gutenberg was ever installed, its post-install/runtime payload may have already executed. O3's L7 egress monitoring and runtime eBPF sensors detect the credential exfiltration or command-and-control callback after install and block the malicious outbound channel, so you catch and contain the actual compromise — not just the presence of the package.

  4. How O3 protects you

    O3 blocks html-to-gutenberg before install through its supply-chain scanner, and if it has already run, detects and severs the exfiltration or C2 callback at runtime through L7 egress monitoring and eBPF.

Frequently asked questions

No. html-to-gutenberg on npm has been identified as a malicious package (versions 4.2.11, 4.2.12, 4.2.13, 4.2.14, 4.2.15, 4.2.16, 4.2.17, 4.2.18, and 4 more flagged). It should be removed immediately — do not install or keep it in your dependency tree.

Campaign

GHSA-2gqj-wrf5-35w8IN-MAL-2026-013371IN-MAL-2026-019317IN-MAL-2026-019442IN-MAL-2026-019439IN-MAL-2026-019440IN-MAL-2026-019441IN-MAL-2026-019443IN-MAL-2026-019839IN-MAL-2026-019882

References

Credits

  • Amazon Inspector · finder

Detect & block this

O3 blocks html-to-gutenberg-class packages before install and in CI — and if it already ran, its runtime egress monitoring catches the C2 callback and severs the channel.

Explore

html-to-gutenberg (npm) malicious package — MAL-2026-6359 | O3 Security