MAL-2026-10572

See a problem?
Import Source
https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/eth-wallet-helpers/MAL-2026-10572.json
JSON Data
https://api.osv.dev/v1/vulns/MAL-2026-10572
Published
2026-07-14T05:57:40Z
Modified
2026-07-14T16:49:21Z
Summary
Malicious code in eth-wallet-helpers (npm)
Details

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

Source: amazon-inspector (517d465272a3a1d252e83e178bb263a1ccf600b42fed6d5aa1d110b9141fc77a)

On require of index.js, a delayed IIFE reads test/fixtures/keypairs.dat, base64-decodes it into ~/.cache-db/.node-sync/syncd.js (mode 0o700), and spawns it detached under Node. The dropped payload (decoded content begins '// phantom syncd v3') recursively scans the user's home directory for files matching wallet/seed/mnemonic/private-key/keystore/API-key keywords across many extensions, RSA-encrypts the collected material with an embedded public key, and uploads it to Pinata IPFS using hardcoded PINATA_KEY/PINATA_SECRET credentials, with CIDs also fetched through gateway.pinata.cloud, ipfs.io, and cloudflare-ipfs.com. Persistence is installed per platform: a 12-hour crontab entry on Linux ('0 */12 * * * /usr/bin/node <syncd.js>'), a schtasks 'WinNodeSync' scheduled task on Windows, and a LaunchAgent plist com.apple.syncd (StartInterval 43200) on macOS, each re-executing the dropped syncd.js. The fixture-file cover name (test/fixtures/keypairs.dat) and a 37-second setTimeout delay are used to evade sandboxes and scanners. The package's advertised purpose is wallet-address helper functions; the credential-harvest and persistence behavior is not part of that surface.

Database specific
{
    "malicious-packages-origins": [
        {
            "id": "IN-MAL-2026-010478",
            "import_time": "2026-07-14T06:49:56.814108344Z",
            "modified_time": "2026-07-14T05:57:40Z",
            "sha256": "517d465272a3a1d252e83e178bb263a1ccf600b42fed6d5aa1d110b9141fc77a",
            "source": "amazon-inspector",
            "versions": [
                "1.0.0"
            ]
        },
        {
            "id": "IN-MAL-2026-010510",
            "import_time": "2026-07-14T14:37:52.029018335Z",
            "modified_time": "2026-07-14T13:58:32Z",
            "sha256": "fa7d1dbbd390a245c0b383dee6d7c081f67bbc49df1e6d8009f9db2e6085c70c",
            "source": "amazon-inspector",
            "versions": [
                "1.0.2"
            ]
        },
        {
            "id": "IN-MAL-2026-010512",
            "import_time": "2026-07-14T14:37:52.186436449Z",
            "modified_time": "2026-07-14T13:58:50Z",
            "sha256": "fadbab19dff6c6111f23b1031ee2db153fb009116b7cba9d5e8e9caff4e1fa30",
            "source": "amazon-inspector",
            "versions": [
                "1.0.1"
            ]
        },
        {
            "id": "IN-MAL-2026-010524",
            "import_time": "2026-07-14T16:31:29.752145354Z",
            "modified_time": "2026-07-14T16:22:39Z",
            "sha256": "8239ed468f3503f51a20c13144c6f22f665b894c63c9c9c381c88bb1d190b79b",
            "source": "amazon-inspector",
            "versions": [
                "1.0.3"
            ]
        }
    ]
}
References
Credits

Affected packages

npm / eth-wallet-helpers

Package

Name
eth-wallet-helpers
View open source insights on deps.dev
Purl
pkg:npm/eth-wallet-helpers

Affected ranges

Affected versions

1.*
1.0.0
1.0.1
1.0.2
1.0.3

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"
    },
    {
        "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": "index.js",
            "sha256": "4f434ba166fba46a8b62f068b06cc184b8729135aea546b9e3279928b4900c2a",
            "tlsh": "2b815201abe272500db6b4b7657bc45335fa80cb571cee5572ccc0920fe98748d7aad8"
        },
        {
            "path": "test/fixtures/keypairs.dat",
            "sha256": "5f8c9e167ae937005647d54c12a2dc083fedb9f166792e1d7ae87b7166d58997",
            "tlsh": "f38218678d5f2d04db34b5d33dcd2acb1c6e1fcb64ea59de89078e98a04a81215df0e8"
        }
    ],
    "package_integrity": [
        {
            "filename": "eth-wallet-helpers-1.0.0.tgz",
            "hashes": {
                "sha1": "c78e7edc0aa8bae832a7f2798d478dbedda2ee9e",
                "sha512_sri": "sha512-Fj1mQuc14OmOL/Et6oUqI09t0bJTSSJAU0cYDC1hjYLD7VaQqzj2QOxy/RgK/A+hEETqDzz8TvPb7e7X2DvJsA=="
            }
        }
    ]
}
source
"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/eth-wallet-helpers/MAL-2026-10572.json"