MAL-2026-10659

See a problem?
Import Source
https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/@sauruslord/libsignal/MAL-2026-10659.json
JSON Data
https://api.osv.dev/v1/vulns/MAL-2026-10659
Aliases
  • GHSA-p9pv-49fq-8f6m
Published
2026-07-15T05:14:18Z
Modified
2026-07-15T09:19:31.212944010Z
Summary
Malicious code in @sauruslord/libsignal (npm)
Details

-= Per source details. Do not edit below this line.=-

Source: amazon-inspector (b0c2cf2672d98396a7b66cb732741d269732f5faae72293ea46e06b879e7a45b)

Package name impersonates Open Whisper Systems' libsignal-node but ships unrelated code. On require() of index.js, after a 1-second delay, install.js locates the installer's @whiskeysockets/baileys directory and overwrites lib/Socket/newsletter.js with an attacker-supplied stub. The replacement stub schedules a setTimeout that, 120 seconds after the host application starts, silently invokes newsletterWMexQuery('120363425694844039@newsletter', QueryIds.FOLLOW) using the installer's authenticated WhatsApp session — auto-following an attacker-controlled WhatsApp newsletter channel without user consent. The original newsletter.js is destroyed (a restoreBackup export is referenced but no backup is ever written). install.js also schedules process.exit(0) 20 seconds after import, terminating the host application. Declared dependencies list crypto, fs, and path as npm packages rather than Node builtins, pulling in registry placeholders/typosquats. Installer harm: any developer who imports this package and also depends on @whiskeysockets/baileys has a third-party dependency silently rewritten on disk and their authenticated WhatsApp session abused on every subsequent run.

Source: ghsa-malware (cd9e1693f1fd1477895da39b9f225bbc2f7c4ee466044f9db234e0475e403849)

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.

Database specific
{
    "malicious-packages-origins": [
        {
            "id": "GHSA-p9pv-49fq-8f6m",
            "source": "ghsa-malware",
            "import_time": "2026-07-15T06:01:05.251124927Z",
            "sha256": "cd9e1693f1fd1477895da39b9f225bbc2f7c4ee466044f9db234e0475e403849",
            "modified_time": "2026-07-15T05:36:35Z",
            "ranges": [
                {
                    "type": "SEMVER",
                    "events": [
                        {
                            "introduced": "0"
                        }
                    ]
                }
            ]
        },
        {
            "source": "amazon-inspector",
            "id": "IN-MAL-2026-010621",
            "import_time": "2026-07-15T08:51:04.302055891Z",
            "sha256": "b0c2cf2672d98396a7b66cb732741d269732f5faae72293ea46e06b879e7a45b",
            "versions": [
                "2.0.2"
            ],
            "modified_time": "2026-07-15T07:53:42Z"
        }
    ]
}
References
Credits

Affected packages

npm / @sauruslord/libsignal

Package

Name
@sauruslord/libsignal
View open source insights on deps.dev
Purl
pkg:npm/%40sauruslord/libsignal

Affected ranges

Type
SEMVER
Events
Introduced
0Unknown introduced version / All previous versions are affected

Affected versions

2.*
2.0.2

Database specific

source
"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/@sauruslord/libsignal/MAL-2026-10659.json"
cwes
[
    {
        "name": "Embedded Malicious Code",
        "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."
    }
]
indicators
{
    "evidence_files": [
        {
            "path": "install.js",
            "sha256": "17ea4f900139649f6c1e9c082601673cf8d22c15019ebc265a48c3f4f47b4880",
            "tlsh": "4d72b49665fa67a917a37054a67fb0e0b324f243751598667f8cd0020f4a2dce8f3bd8"
        }
    ]
}