Covert Channel Subscription Vulnerability in xzbails Package

xzbails Updated 30 Sep 2026

Summary

30/09/2026
CRITICAL
No i
Critical
Not published

MAL-2026-17410: Malicious code in xzbails (npm). Affects xzbails versions 0.0.3 – 0.0.5. No fix is published. How to fix ↓

Free scan

Check if this vulnerability affects your application

Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.

Check my app free

No signup required · Results in about 60 seconds

Upload your dependency manifest or SBOM

Drag & drop your file here or

Java Javascript PHP Python Go Rust Ruby Dart C/C++ Elixir CycloneDX SPDX

Upload a supported dependency manifest or SBOM. No installation or source-code access required.

See supported files and SBOM formats
SBOM sbom.json · bom.json · bom.xml · *.spdx.json · *.cdx.json · *.cdx.xml
Java pom.xml · gradle.lockfile · buildscript-gradle.lockfile
Javascript package-lock.json · yarn.lock · pnpm-lock.yaml
PHP composer.lock
Python poetry.lock · requirements.txt · Pipfile.lock
Go go.mod
Rust Cargo.lock
Ruby Gemfile.lock
Dart pubspec.lock
C/C++ conan.lock
Elixir mix.lock
Enter your work email to receive your report link.

Verify your email to view the full report and start 30 days of continuous monitoring. No credit card required.

Sponsored Devnack Penetration testing for web, API and mobile Manual testing by engineers who build software, not an auditor's checklist. Trusted by teams at Swift and Google Talk to Devnack

Background

The xzbails package is a part of a larger family of forks derived from the Baileys WhatsApp Web library. It is designed to facilitate interactions with WhatsApp's socket layer. However, this package has been identified as malicious, injecting covert actions that exploit the user's authenticated WhatsApp session to subscribe them to unwanted channels without their consent.

Vulnerability Detail

The vulnerability stems from the xzbails package injecting malicious code into the WhatsApp socket layer. Upon connection, this code executes an authenticated 'w:mex' FOLLOW query targeting attacker-controlled WhatsApp Channel/Newsletter JIDs. The targeted JIDs are obfuscated using various techniques, making them difficult to detect in source reviews. This malicious action allows attackers to gain subscribers for their channels using the victim's WhatsApp account, without exfiltrating credentials or executing arbitrary remote code.

How To Fix

This package is malicious. Remove it and rotate any credentials it could have accessed.

npm uninstall xzbails

If it arrived as a transitive dependency, remove the package that pulled it in, then reinstall.

Tip — Not sure whether your app is affected? Vulert can check the versions your app actually runs. Scan free →

Workaround

As a temporary workaround, you can remove the xzbails package from your project entirely until a secure version is confirmed. Use the following command to uninstall the package: npm uninstall xzbails.

Conclusion

The xzbails package poses a significant risk due to its ability to exploit users' WhatsApp sessions for unauthorized channel subscriptions. It is essential to take immediate action by updating or removing the package to safeguard your account and privacy.

See every vulnerability recorded for xzbails →

Share this vulnerability

FAQ

xzbails is a fork of the Baileys WhatsApp Web library, designed for interacting with WhatsApp's socket layer.

The vulnerability allows attackers to subscribe your account to their channels without your consent, using your authenticated session.

You should immediately update the package to the latest version or uninstall it to mitigate the risk.

Yes, you can use Vulert's playground at Vulert Scanner to check for vulnerabilities in your application without needing to sign up.

The malicious code uses various obfuscation techniques such as plain string literals, base64 encoding, and runtime char-code arrays to hide the target JIDs.

How To Fix

This package is malicious. Remove it and rotate any credentials it could have accessed.

npm uninstall xzbails

If it arrived as a transitive dependency, remove the package that pulled it in, then reinstall.

Tip — Not sure whether your app is affected? Vulert can check the versions your app actually runs. Scan free →

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →
Help improve this record
Report an issue or send feedback