MAL-2026-18320

See a problem?
Import Source
https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/@walknpm/todo-cli/MAL-2026-18320.json
JSON Data
https://api.osv.dev/v1/vulns/MAL-2026-18320
Published
2026-10-26T00:55:57Z
Modified
2026-10-26T06:45:15Z
Summary
Malicious code in @walknpm/todo-cli (npm)
Details

@walknpm/todo-cli@2.0.1 is a new release of a todo-list CLI and web app whose only change from 2.0.0 is a postinstall script, sh scripts/miner.sh, that runs on npm install. The script downloads a gzip carrier from amplify-gursha-dev-121835-deployment.s3.amazonaws.com to /tmp/.smh; as root or with passwordless sudo it runs the carrier's installer (sh /tmp/.smi agent), which installs an XMRig miner plus two helper daemons under random system-component names and persists them as systemd units or @reboot cron entries, and otherwise it extracts the bundled XMRig binary to ~/.local/lib// and mines Monero to networkservicesupp.flashhub.net:8443 over TLS with a hardcoded wallet. The npm account walknpm published the same scripts/miner.sh in dsh-plugin-blender-3d@0.2.1 within 27 seconds of this version on 2026-10-26, and it is byte-identical to the one in @sudobility/testomniac_client (MAL-2026-18129).


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

Source: amazon-inspector (f32e42bc70458d6a0973dfbe2d94961cca2ee423198c53bf753a7680c61df96f)

The package's postinstall hook runs scripts/miner.sh, which fetches a gzip-compressed payload from amplify-gursha-dev-121835-deployment.s3.amazonaws.com (using a hardcoded AWS access key in a presigned URL), writes it to /tmp/.smi, and executes it via sh on every npm install. If root or passwordless sudo is available, the script runs sh /tmp/.smi agent to install a persistent agent (cron/relay/tor per in-script comments). Otherwise, it extracts an embedded XMRig binary (base64/tar.gz blob after a __PAYLOAD__ marker), writes a Monero pool configuration to $HOME/.sysmond.json pointing at networkservicesupp.flashhub.net:8443 with wallet 49u1mKb1dNoMixgRHt11Ra32D1w4hviUuRDbaJhXFwXUjQP4FiHsSjnDa7XZepDUW1Tx6HhR6gFwWgbuwNxby4UAMiqxieX, copies the miner to $HOME/.local/lib/<stealth-name>/<stealth-name> using a system-daemon-like name pool (edid-mon, smmon, irqstatsd,...), and backgrounds it with nohup. Installing the package results in unconditional remote code execution on the installer's host, cryptomining compute/electricity theft, and persistence that is non-trivial to detect and remove.

Source: ossf-package-analysis (8c741f8bd0012bceb8789b8e2fc0ac836c5ccb88a348918365af4850f1576be4)

The OpenSSF Package Analysis project identified '@walknpm/todo-cli' @ 2.0.1 (npm) as malicious.

It is considered malicious because:

  • The package executes one or more commands associated with malicious behavior.
Database specific
{
    "iocs":  {
        "domains":  [
            "networkservicesupp.flashhub.net"
        ],
        "files":  [
            {
                "digests":  {
                    "sha256":  "c0bd8bff2b17e5ed34b005d5107ea3ea4345b605376a1e85d736c33ed5ab69da"
                },
                "note":  "Stage two gzip carrier from the S3 URL (11,334,678 bytes), unpacked to /tmp/.smi.",
                "paths":  [
                    "/tmp/.smh"
                ],
                "source":  "DROPPED"
            },
            {
                "digests":  {
                    "sha256":  "4f8bf0f86d0bedc39af0ee2ae74548bffc26a7b1a285a2c0acdcc91613a71f03"
                },
                "note":  "Self-extracting installer (VERSION 20261017, modes agent/keepalive/relay/status/stop/start/update/uninstall) with a base64 tar payload after __PAYLOAD__.",
                "paths":  [
                    "/tmp/.smi"
                ],
                "source":  "DROPPED"
            },
            {
                "digests":  {
                    "sha256":  "39ef74e9d616b7a4fd25e12b04631d0b6d8fa50c04547e88304b358b40cc46c6"
                },
                "note":  "bin/miner-linux-amd64 from the payload, an XMRig build (RandomX); config written to ~/.sysmond.json, lock file /tmp/.sysmond.lock.",
                "paths":  [
                    "~/.local/lib/<random name>/<random name>",
                    "/usr/local/lib/<random name>/<random name>"
                ],
                "source":  "DROPPED"
            },
            {
                "digests":  {
                    "sha256":  "1502cc1dbdc6df2686b435386f94da4e728a77e5f2ab2028e9893bdb10de3cd9"
                },
                "note":  "postinstall script runs `sh scripts/miner.sh`, the rig2 XMRig miner dropper (@walknpm/todo-cli@2.0.1).",
                "paths":  [
                    "package.json"
                ],
                "source":  "PACKAGE_ARCHIVE"
            },
            {
                "digests":  {
                    "sha256":  "50df05975352cfa4558892d0a9ab493744c8ddd40948efa6755bb11dc5050118"
                },
                "note":  "Executed by the postinstall script of @walknpm/todo-cli@2.0.1.",
                "paths":  [
                    "scripts/miner.sh"
                ],
                "source":  "PACKAGE_ARCHIVE"
            }
        ],
        "urls":  [
            "https://amplify-gursha-dev-121835-deployment.s3.amazonaws.com/amplify-cfn-templates/cloud-backend-cache-20261019.gz"
        ]
    },
    "malicious-packages-origins":  [
        {
            "import_time":  "2026-10-26T03:51:26.346232317Z",
            "modified_time":  "2026-10-26T01:49:17Z",
            "sha256":  "8c741f8bd0012bceb8789b8e2fc0ac836c5ccb88a348918365af4850f1576be4",
            "source":  "ossf-package-analysis",
            "versions":  [
                "2.0.1"
            ]
        },
        {
            "id":  "IN-MAL-2026-021758",
            "import_time":  "2026-10-26T06:39:40.736825125Z",
            "modified_time":  "2026-10-26T06:29:19Z",
            "sha256":  "f32e42bc70458d6a0973dfbe2d94961cca2ee423198c53bf753a7680c61df96f",
            "source":  "amazon-inspector",
            "versions":  [
                "2.0.1"
            ]
        }
    ]
}
References
Credits

Affected packages

npm / @walknpm/todo-cli

Package

Name
@walknpm/todo-cli
View open source insights on deps.dev
Purl
pkg:npm/%40walknpm/todo-cli

Affected ranges

Affected versions

2.*
2.0.1

Database specific

cwes
[
    {
        "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":  [
        {
            "path":  "scripts/miner.sh",
            "sha256":  "50df05975352cfa4558892d0a9ab493744c8ddd40948efa6755bb11dc5050118",
            "tlsh":  "2371b7a5e4644b3471ac667d369e72815d92443f06213a61f0efef30ab2d46e20a81b7"
        }
    ],
    "package_integrity":  [
        {
            "filename":  "todo-cli-2.0.1.tgz",
            "hashes":  {
                "sha1":  "3245fa885e40f8ca394c58670caa8140257f2bf7",
                "sha512_sri":  "sha512-WdP9OXkenykqi/DXOowowdwS8juBItCu8DMjMKaDfzlp7137Da4mxuPvwzH/SY7Cr5+s2MpHC4D8yK4DeWIAKA=="
            }
        }
    ]
}
source
"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/@walknpm/todo-cli/MAL-2026-18320.json"