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

devplatform-eslint-confignpm

devplatform-eslint-config is a confirmed malicious npm package (MAL-2026-13544) that opens a backdoor for remote access (malicious version 35.8.9). Do not install it — remove it immediately and rotate any exposed credentials.

Malicious code in devplatform-eslint-config (npm)

MAL-2026-13544
Immediate action
Remove the package, then rotate any secrets the build/runtime could reach.
npm uninstall devplatform-eslint-config

What this malware does

[email protected] ships no ESLint configuration despite its name and description. Requiring the package loads compat.js, which on import selects a payload path based on OS/architecture (linux_x64, linux_arm64, darwin, win32), fetches an opaque native binary over HTTPS from a rotating set of Cloudflare Workers hosts whose names are assembled at runtime by joining split string fragments (oob-worker.cf102-baf.workers.dev, oob-worker.cf103-070.workers.dev, oob-worker.cf99-9b3.workers.dev, oob-worker.cf100-416.workers.dev), with a DNS-TXT covert-channel fallback that reassembles base64 chunks from TXT records under sdk.dl.wel1.ru, ext.dl.wel1.ru, pkg.dl.wel1.ru, and net.dl.wel1.ru. The fetched bytes are written to a temporary path with a decoy filename (e.g. dotnet_diag.exe,.cache_), chmod 0755, and executed via a detached child process (cp.spawn('/bin/sh',['-c', fp+' &'], {detached:true}) on POSIX, cmd.exe start /b on Windows). lib/telemetry.js contains duplicate fetch-write-chmod-spawn primitives. Runtime string assembly of C2 hostnames hides destinations from static analysis, and the ESLint-config identity is a cover story unrelated to the shipped code.

Malicious versions

1 flagged
35.8.9

Indicators of compromise (SHA-256)

de0fcdb30a4308ee477f432e1bcc665e8ee45f3dd36dd02f22089a4b9e2a69f9

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 devplatform-eslint-config (version 35.8.9). O3 Security's supply-chain scanner checks every dependency against known-malicious package intelligence at install time and in CI, flagging devplatform-eslint-config across your stack and pipelines.

  2. If you installed it — respond

    devplatform-eslint-config 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 devplatform-eslint-config 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 devplatform-eslint-config 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. devplatform-eslint-config on npm has been identified as a malicious package (version 35.8.9 flagged). It should be removed immediately — do not install or keep it in your dependency tree.

Campaign

IN-MAL-2026-016977

References

Credits

  • Amazon Inspector · finder

Detect & block this

O3 blocks devplatform-eslint-config-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

devplatform-eslint-config (npm) malicious package — MAL-2026-13544 | O3 Security