MAL-2026-6281

See a problem?
Import Source
https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/libsignal-node-travatiger/MAL-2026-6281.json
JSON Data
https://api.osv.dev/v1/vulns/MAL-2026-6281
Aliases
  • GHSA-j2x4-j4hc-mvcv
Published
2026-06-23T11:57:45Z
Modified
2026-07-09T17:31:55.111512961Z
Summary
Malicious code in libsignal-node-travatiger (npm)
Details

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

Source: amazon-inspector (311b53330c1d8c3546d0b4fa3d460ca694fc20d60608ac5a276f40f7a73279fa)

On require() of this package, index.js schedules install.js which locates @whiskeysockets/baileys in the installer's nodemodules tree (searching process.cwd(), parent directories, and require.resolve) and overwrites lib/Socket/newsletter.js with an attacker-controlled replacement. A.cache marker is dropped to make the patch idempotent and persistent across reinstalls. The replacement newsletter.js, once the installer uses Baileys with their authenticated WhatsApp session, runs a setTimeout (~120s after socket creation) that fetches https://raw.githubusercontent.com/travatiger/MegaTeam/main/channel.json — a mutable, attacker-controlled URL — and invokes WhatsApp's newsletter FOLLOW mutation (newsletterWMexQuery with Types1.QueryIds.FOLLOW) for each returned channel ID, silently using the installer's authenticated WhatsApp identity to follow channels chosen by the attacker. Because the channel list lives in a mutable GitHub repo, the attacker can change targets — or, more dangerously, the response-handling logic — at any time without republishing the npm package. The package name impersonates the legitimate libsignal-node Signal Protocol library and the description claims 'Modified libsignal for Node.js' to lend legitimacy to the lure. Three independent harms: (1) tampering with a sibling trusted package's on-disk source, (2) install-time persistence outside this package's own directory, (3) silent relay/abuse of the installer's authenticated WhatsApp session for attacker benefit.

Source: ghsa-malware (853bda071feb857da7ff2ecaa7809099b31dd181eed007bb9593b0e274e8a8be)

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": [
        {
            "sha256": "853bda071feb857da7ff2ecaa7809099b31dd181eed007bb9593b0e274e8a8be",
            "modified_time": "2026-06-23T11:57:46Z",
            "id": "GHSA-j2x4-j4hc-mvcv",
            "source": "ghsa-malware",
            "ranges": [
                {
                    "events": [
                        {
                            "introduced": "0"
                        }
                    ],
                    "type": "SEMVER"
                }
            ],
            "import_time": "2026-06-23T13:16:55.912137051Z"
        },
        {
            "sha256": "311b53330c1d8c3546d0b4fa3d460ca694fc20d60608ac5a276f40f7a73279fa",
            "modified_time": "2026-07-09T16:56:18Z",
            "versions": [
                "1.0.0"
            ],
            "source": "amazon-inspector",
            "id": "IN-MAL-2026-009326",
            "import_time": "2026-07-09T17:19:24.317401705Z"
        },
        {
            "sha256": "33b3670841923a2023832956a77044de9f0662a5aec4cec7d42b8f77e32e2523",
            "modified_time": "2026-07-09T16:56:35Z",
            "versions": [
                "1.0.1"
            ],
            "source": "amazon-inspector",
            "id": "IN-MAL-2026-009328",
            "import_time": "2026-07-09T17:19:24.643966364Z"
        }
    ]
}
References
Credits

Affected packages

npm / libsignal-node-travatiger

Package

Name
libsignal-node-travatiger
View open source insights on deps.dev
Purl
pkg:npm/libsignal-node-travatiger

Affected ranges

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

Affected versions

1.*
1.0.0
1.0.1

Database specific

indicators
{
    "evidence_files": [
        {
            "sha256": "b6a1bc562e4c5593682b57e14afc17da7dc890d28c8f3734905807acb4428477",
            "tlsh": "5d72b39665fb67a917a37054a67fb0e0b324f243751598627f8c90020f4a2dce9f3bd8",
            "path": "install.js"
        },
        {
            "sha256": "fc45ed66f4d3fe34d360f0f84d388b0efe8ec3babba7f2f569bbdc4f16d6924f",
            "tlsh": "16f02420ca149c3300c47b663c35051793920c6345587d0c33cb950c8f9e02f66ff66c",
            "path": "package.json"
        }
    ]
}
source
"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/libsignal-node-travatiger/MAL-2026-6281.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."
    },
    {
        "name": "Embedded Malicious Code",
        "cweId": "CWE-506",
        "description": "The product contains code that appears to be malicious in nature."
    }
]