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

gmail-changernpm

Advisory published Updated

gmail-changer is a confirmed malicious npm package (MAL-2026-10635) that steals credentials and exfiltrates sensitive data (malicious version 2.0.2). Do not install it — remove it immediately and rotate any exposed credentials.

Malicious code in gmail-changer (npm)

MAL-2026-10635
Immediate action
Remove the package, then rotate any secrets the build/runtime could reach.
npm uninstall gmail-changer

What this malware does

Package exports a complete Gmail account-hijack pipeline driven by stolen session cookies. Exported helpers (waitForRemoveRecovery, waitForRecoveryAdd, waitForPasswordChange, waitForDeviceLogout, waitForTwoFaActive, waitForNameChange) automate, in sequence: removing the victim's recovery phone number, injecting an attacker-controlled recovery email at the hardcoded domain @oletters.com, resetting the password to a random string, signing every other device out, harvesting 2FA seed + backup codes, and changing the display name. OTP interception is wired to a hardcoded SMS-rental endpoint at sever1.tempxapi.com/api/sms, where the package polls for incoming Google verification codes (G-\d{6}) using an X-Integrity-Token to drive recovery-number swaps and login challenges. index.js getMailYear additionally POSTs to Gmail's undocumented sync RPC at mail.google.com/sync/u/0/i/bv with stolen cookies to enumerate the victim's ^all mailbox (up to 2000 messages per page) for post-takeover reconnaissance. Puppeteer is launched with puppeteer-extra-plugin-stealth, --ignore-certificate-errors, and request interception that silently swallows Gmail's SetOSID redirect (replaced with a 200 OK stub) to harvest the session without completing the page transition. Every advertised API mutates a Google account against its owner's interests; there is no legitimate use case. Installing or loading this package equips the installer with — and contributes to a public ecosystem of — operational account-takeover tooling, with a hardcoded attacker drop-domain (@oletters.com) and third-party OTP relay baked in.

Malicious versions

1 flagged
2.0.2

Indicators of compromise (SHA-256)

913e56ded5b9c46e15c7589a0883bfb708b2488aa54f4c25ca05b1c13e4d75fe

Detection & response playbook

Credential / info stealer
  1. Find it

    Search your lockfiles and build artifacts for gmail-changer (version 2.0.2).

  2. If you installed it — respond

    gmail-changer is built to steal secrets, so assume every credential the build or runtime could read is compromised. Remove it from your project and lockfile, then rotate ALL exposed secrets — npm/registry tokens, cloud keys, CI/CD secrets, SSH keys, and any .env values — from a known-clean machine. Audit logs for unauthorized use of those credentials.

  3. Did it already run?

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

Campaign

IN-MAL-2026-010618

References

Credits

  • Amazon Inspector · finder

Detect & block this

O3 blocks gmail-changer-class packages before install and in CI — and if it already ran, its runtime egress monitoring catches the credential exfiltration and severs the channel.

Explore

gmail-changer (npm) malicious package — MAL-2026-10635 | O3 Security