VDB

GCVE-110-OSM-2026-11636

GCVE-110-OSM-2026-11636
Advisory PublishedCVSS 8.8/10
Vulnetix · Advisory published September 4, 2026
@modss/baileys is a renamed fork of the Baileys WhatsApp Web library published 2026-09-01 and 2026-09-02 under a scope created the same day. lib/Socket/newsletter.js sets NEWSLETTER_LIST_URL to https://raw.githubusercontent.com/Dayyy-19/Anu/main/Newsletter.json. On every connection.update with connection === 'open', autoFollowConfiguredNewsletters() fetches that list and issues an executeWMexQuery FOLLOW for each id on the user's own authenticated WhatsApp session, caching followed ids in session/followed-newsletters.json. An Indonesian comment in the file explains that the list lives on GitHub so channels can be added or removed without redeploying the code, i.e. the follow targets are publisher-controlled at runtime. All three published versions carry the identical handler. The package also aliases its libsignal dependency to @modss/libsignal, which pkgwarden read as a plain rename with no malicious content. No credential or session-key theft was observed, and the dead-drop URL was not requested by pkgwarden. All versions were fetched from the npm registry and read by hand on 2026-09-03. Same remote-dead-drop shape as MAL-2026-15819 (@mrlegendbot/baileys) and MAL-2026-13932 (my-auto-follow). Judge assessment: This looks like a publisher-controlled WhatsApp abuse loader that auto-follows attacker-chosen newsletters from a remote dead-drop, matching the attacker model in the deobfuscated `socket.js` code. The hidden URL recovered from `String.fromCharCode(..._u)` points to a GitHub-hosted `Newsletter.json`, and the code then issues `executeWMexQuery` with `newsletter_id` values on an authenticated session; `lib/Socket/newsletter.js` also shows HTTP exfiltration behavior. The install hook in `package.json` (`preinstall`/`postinstall`) increases blast radius, and the package is heavily obfuscated with `iocs-recovered` from deobfuscation plus custom-c2 IOCs like `updatedCreds.me` and `crockford.com`. The rapid-version-spam metadata and very new publisher account further support a malicious campaign rather than a legitimate Baileys fork. ENTRY engine-requirements.js (install-hook: node ./engine-requirements.js) - Install Hook Executes Local JS File in package.json - Postinstall Script in package.json PERSISTENCE - Startup Persistence in WAProto/index.js: ".profile" - Startup Persistence in lib/Socket/messages-send.js: ".profile" - Startup Persistence in lib/Store/make-in-memory-store.js: ".profile" DESTINATION - 3 exfil (custom-c2) - 3 fetched-payload (deobfuscated) (values recorded in verified_iocs) EXFIL - HTTP Data Exfiltration in lib/Socket/newsletter.js: "process.cwd(), "session", "followed-newsletters.json"); const NEWSLETTER_FETCH" - Data Encoding for Exfiltration in lib/Socket/socket.js: "Buffer.from(creds.noiseKey.public).toString("base64")" - Data Encoding for Exfiltration in lib/Utils/chat-utils.js: "Buffer.from(indexMac).toString("base64")" - Data Encoding for Exfiltration in lib/Utils/generics.js: "Buffer.from(value?.data || value).toString('base64')" - Data Encoding for Exfiltration in lib/Utils/messages-media.js: "Buffer.from(media.fileSha256).toString("base64")" - Data Encoding for Exfiltration in lib/Utils/process-message.js: "Buffer.from(keyId.keyId).toString("base64")" - Network Request in lib/Utils/generics.js: "fetch('https:" OBFUSCATION - IOCs Found in Deobfuscated Code in lib/Socket/socket.js - Dynamic Base64 Decoding in lib/Socket/dugong.js: "Buffer.from(jpegThumbnail, "base64")" - Dynamic Base64 Decoding in lib/Socket/socket.js: "Buffer.from(str, "base64")" - Dynamic Base64 Decoding in lib/Utils/chat-utils.js: "Buffer.from(keyId, "base64")" - Dynamic Base64 Decoding in lib/Utils/messages-media.js: "Buffer.from(s, "base64")" - Dynamic Base64 Decoding in lib/Utils/validate-connection.js: "Buffer.from(advSecretKey, "base64")" - String Array Obfuscation in lib/WABinary/constants.js: "[ "1724", "profile_picture", "1071", "1314", "1605", "407", "990", "1710", "746"..." - Decoded Base64 Content in lib/Socket/socket.js (+9 more) ADDITIONAL FINDINGS - Dynamic Code Execution in lib/Utils/use-sqlite-auth-state.js: "exec(CREATE_SCHEMA_SQL)" - Very New NPM Publisher Account - Rapid Version Publishing PAYLOAD FILES lib/Socket/socket.js (+ lib/Utils/messages-media.js, [deobfuscated] lib/Utils/messages-media.js)

Weaknesses (CWE)

CWE-506Embedded Malicious Code

Risk Scores

CVSS 3.1
8.8/10
High · CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H

Affected Products

VendorProductVersionsPlatforms
unknown@modss/baileysall (affected)

References

advisory
vendor

Browse GCVE Records

3,425 records in the GCVE database · Updated September 6, 2026

No matching records found.

Explore Further

Investigate this vulnerability in the interactive console or download the raw GCVE record.

$ Console Community · 100/wk Open console ›