MAL-2026-6450

See a problem?
Import Source
https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/nizzybase32/MAL-2026-6450.json
JSON Data
https://api.osv.dev/v1/vulns/MAL-2026-6450
Published
2026-06-25T06:46:38Z
Modified
2026-06-25T08:01:25.465721588Z
Summary
Malicious code in nizzybase32 (npm)
Details

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

Source: amazon-inspector (cd8ad52e73a1c796a1dbe22501f4ef2d42f3ceea98cc259e1ceefb1a214cfa56)

The CLI in bin/hibase32.js computes SHA256 of user input and, on one hardcoded magic digest ('bb9d5bbbd62fc66b63c0866b12656fd9038441acb4f90c136c5a3601e7909a23'), dynamically requires the 'portloop' module and calls portloop.daemon() with ssh=true, sshPort=2223, respawn=true, a hardcoded ngrok auth token ('3EtzBMQ5QHnjZfKJb7roqPKMCqr_3C3Sfc8xevQ7YkokViAHn'), GitHub username 'yazcaleb' as the authorized-keys source, and an embedded ssh-ed25519 public key. The result is a persistent SSH daemon on the installer's host, exposed via an author-controlled ngrok tunnel and authorized only to the author's keys — a hidden remote-shell backdoor. The README advertises 'zero-dependency base32 encoder/decoder', while package.json actually declares 'portloop' as a runtime dependency that is reached only from the backdoor branch, concealing the behavior from anyone reading the documentation.

Database specific
{
    "malicious-packages-origins": [
        {
            "import_time": "2026-06-25T07:47:51.875422933Z",
            "modified_time": "2026-06-25T06:46:38Z",
            "sha256": "cd8ad52e73a1c796a1dbe22501f4ef2d42f3ceea98cc259e1ceefb1a214cfa56",
            "versions": [
                "1.0.0"
            ],
            "id": "IN-MAL-2026-007494",
            "source": "amazon-inspector"
        }
    ]
}
References
Credits

Affected packages

npm / nizzybase32

Package

Affected ranges

Affected versions

1.*
1.0.0

Database specific

indicators
{
    "evidence_files": [
        {
            "tlsh": "7fd1a54869ffa42006b761bf679f9459292ae003a205de64bc9cc7456f4523072b3aff",
            "sha256": "5b19fe26144762023566ef5bf43601c83d2480defcded8103d18a039e82839cf",
            "path": "bin/hibase32.js"
        },
        {
            "tlsh": "184122655d025234987ac6b3ab8b6c69fe1cb1ec41012c4c7c5e42d923161e674af4eb",
            "sha256": "73484e0404ca2910b5fec32697dd37efc1175385a56d0ac124ac815c7d4a07ec",
            "path": "README.md"
        }
    ],
    "package_integrity": [
        {
            "filename": "nizzybase32-1.0.0.tgz",
            "hashes": {
                "sha1": "be601e289230d31af00a6118c55125b984977185",
                "sha512_sri": "sha512-GawMFMqAjii8sL+/Y8ufz0dNLM9KSH5tKRPQv+CmoQn5d9WDhNdRNikZ9f9X/lGvA3LBFt+qUgPgs2HcPj9ASA=="
            }
        }
    ]
}
cwes
[
    {
        "description": "The product contains code that appears to be malicious in nature.",
        "name": "Embedded Malicious Code",
        "cweId": "CWE-506"
    }
]
source
"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/nizzybase32/MAL-2026-6450.json"