🛡️ MAL-2026-4139 — jest-expect

⚪ Unknown ✅ No Known Exploit OSV
N/A
CVSS Score
0 Low4 Medium7 High9 Critical10

Description

Malicious code in jest-expect (npm)

Part of the Mini Shai-Hulud supply chain attack campaign in which a threat actor compromised the npm account atool and published 631 malicious versions across 314 npm packages in an automated 22-minute burst. Each malicious version injects a preinstall hook that executes a 498KB obfuscated Bun script, using the GitHub API as a covert exfiltration channel. Credentials are committed to attacker-controlled repositories following Dune-themed naming patterns (e.g., harkonnen-melange-742). Stolen data includes AWS keys, GitHub PATs, npm tokens, GCP service accounts, Azure credentials, Kubernetes service account tokens, SSH keys, Docker auth configs, database connection strings, Stripe keys, and Slack tokens. Malicious versions also establish persistence via CI/CD workflow injection (a GitHub Actions workflow named Run Copilot dumps all secrets via toJSON(secrets)), AI agent session hooks, and a system daemon named kitty-monitor.

This specific package (jest-expect) was modified to include a malicious preinstall hook executing the obfuscated Bun payload.

Source: amazon-inspector

The package jest-expect was found to contain malicious code.

Source: ghsa-malware

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.

Source: google-open-source-security

This package was compromised as part of the ongoing "Mini Shai-Hulud is back" worm by the TeamPCP threat actor.

The package will steal credentials and then propogate it to every package it has access to. The package also attempts to remain persistent.

Affected software

MAL-2026-4139 is recorded against 1 package.

  • jest-expect

Timeline and source

Published on 19 May 2026. No public exploit is currently recorded for this entry. Record sourced from OSV.

References

safedep.io (Report)
socket.dev (Article)
safedep.io (Article)
opensourcemalware.com (Article)
github.com (Advisory)

Details

Severity Unknown
CVSS Score N/A
CVSS Vector N/A
CWE N/A
Public Exploit ✅ No
Source OSV
Published 2026-05-19
Updated 2026-08-12
Modified 2026-05-19
Fix URL N/A

Affected Packages

Software From version Fixed in
jest-expect

Free Vulnerability Check

Is your site affected by MAL-2026-4139?

BotEraser helps you identify potentially vulnerable plugins and themes by checking your installation against MAL-2026-4139 and other known CVE records.

Scan My Site Free →

No credit card required  ·  Results in minutes

ⓘ Data Notice: The information presented above has been compiled from publicly available internet sources. Boteraser aggregates this data solely for informational purposes and does not independently classify, evaluate, or endorse any findings about the vulnerabilities listed. The accuracy and completeness of this information is the sole responsibility of the original publishers. Boteraser and its operators accept no liability for any decisions made based on this data.