{"id":"MAL-2026-13932","summary":"Malicious code in my-auto-follow (npm)","details":"npm/my-auto-follow is a Baileys WhatsApp Web API fork that embeds undisclosed, remote-controlled consentless newsletter auto-follow behavior. In lib/Socket/newsletter.js, after a session is established the code waits 120 seconds, fetches a JSON list of WhatsApp newsletter JIDs from https://raw.githubusercontent.com/DGXeon13/strings/refs/heads/main/strings.json (attacker-controlled; observed contents include newsletter JIDs), and silently issues newsletterWMexQuery(..., QueryIds.FOLLOW) for each entry with errors swallowed. There is no caller opt-in. Trigger is runtime (makeNewsletterSocket / normal socket path), not install: preinstall only checks Node \u003e= 20. The package also depends on libsignal via the npm alias npm:@dreamguyxeon/libsignal-node@1.0.1 (separate malicious patcher reported alongside this entry). Related DGXeon campaign packages already in OSV include dgxeon-baileys (MAL-2026-2252) and baileys-dgxeon (MAL-2025-806). Tarball sha256 for 1.0.3: 1332d396a2251692c2654fca52620a433a880551500a567ade040e8f01440e68.\n\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (481bdecc52b4f32afcfd2e6755ef8c74191cc0010714a0403aa93d1bd958369b)\nmy-auto-follow is a Baileys WhatsApp library fork whose `makeWASocket` newsletter socket schedules an undocumented setTimeout (120s after socket creation) that fetches a remote JSON list from https://raw.githubusercontent.com/DGXeon13/strings/refs/heads/main/strings.json and unconditionally force-follows every channel ID in that list via `newsletterWMexQuery(id, QueryIds.FOLLOW)` (lib/Socket/newsletter.js lines 100-122). The fetched list is hosted on a mutable branch under the package author's GitHub account and can be changed at any time without republishing the package. There is no opt-in, no documentation, and no user prompt. Any developer who uses this library to power a WhatsApp bot will have their authenticated WhatsApp account silently issue FOLLOW commands to whatever channel IDs the author chooses to publish — abusing the installer's WhatsApp identity for the author's social-graph manipulation. The behavior matches the package name `my-auto-follow` but is never disclosed to the consumer.\n","modified":"2026-08-14T15:00:53.860831470Z","published":"2026-08-10T22:30:00Z","database_specific":{"iocs":{"urls":["https://raw.githubusercontent.com/DGXeon13/strings/refs/heads/main/strings.json","https://raw.githubusercontent.com/DGXeon13/dgxeon-soket/refs/heads/master/lib/Defaults/baileys-version.json"]},"malicious-packages-origins":[{"sha256":"481bdecc52b4f32afcfd2e6755ef8c74191cc0010714a0403aa93d1bd958369b","source":"amazon-inspector","versions":["1.0.1"],"id":"IN-MAL-2026-017625","import_time":"2026-08-13T15:26:42.949508295Z","modified_time":"2026-08-13T14:58:32Z"},{"versions":["1.0.2"],"id":"IN-MAL-2026-017860","import_time":"2026-08-14T14:51:43.55760879Z","modified_time":"2026-08-14T14:47:04Z","sha256":"008cd485a606d24837302f258618d5e1c72e9d0e11d69092fead140a1b22c00a","source":"amazon-inspector"},{"id":"IN-MAL-2026-017858","import_time":"2026-08-14T14:51:43.432762493Z","modified_time":"2026-08-14T14:46:47Z","sha256":"c759189fdb4a0a25b69a60e1f2ff6599c7bbaeee45b93c3f38ac719cbf7e954d","source":"amazon-inspector","versions":["1.0.3"]}]},"references":[{"type":"PACKAGE","url":"https://www.npmjs.com/package/my-auto-follow"},{"type":"ADVISORY","url":"https://osv.dev/vulnerability/MAL-2026-2252"},{"type":"ADVISORY","url":"https://osv.dev/vulnerability/MAL-2025-806"},{"type":"WEB","url":"https://safedep.io/malicious-baileys-npm-whatsapp-campaign/"},{"type":"PACKAGE","url":"https://www.npmjs.com/package/my-auto-follow/v/1.0.1"},{"type":"PACKAGE","url":"https://www.npmjs.com/package/my-auto-follow/v/1.0.2"},{"type":"PACKAGE","url":"https://www.npmjs.com/package/my-auto-follow/v/1.0.3"}],"affected":[{"package":{"name":"my-auto-follow","ecosystem":"npm","purl":"pkg:npm/my-auto-follow"},"versions":["1.0.0","1.0.1","1.0.2","1.0.3"],"database_specific":{"source":"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/my-auto-follow/MAL-2026-13932.json","cwes":[{"description":"The product contains code that appears to be malicious in nature.","name":"Embedded Malicious Code","cweId":"CWE-506"},{"cweId":"CWE-506","description":"The product contains code that appears to be malicious in nature.","name":"Embedded Malicious Code"},{"cweId":"CWE-506","description":"The product contains code that appears to be malicious in nature.","name":"Embedded Malicious Code"}],"indicators":{"evidence_files":[{"tlsh":"c452965665fa5aa517a37054e67fb0e0b320f243782598673f8cd4020f4a1dde8b3bd8","path":"lib/Socket/newsletter.js","sha256":"d46c64f770bf6f1d7220deb9c9d38e842ba022b8cd95cda654705ba8297e9abb"}],"package_integrity":[{"filename":"my-auto-follow-1.0.1.tgz","hashes":{"sha1":"523cea099503a17fae0b5653b7fef4f926e4f46b","sha512_sri":"sha512-7xGrtS/lXbuciZoqkW13N30+XLU9oYUiwmvHG0scisLMFKtc3/KWXkPd6EMgBqzVRMBWed/Kc8c/EQYWuxD/4A=="}}]}}}],"schema_version":"1.9.0","credits":[{"name":"Amazon Inspector","contact":["inspector-research@amazon.com"],"type":"FINDER"},{"name":"pkgwarden","contact":["https://pkgwarden.com"],"type":"FINDER"}]}