MAL-2026-12815

See a problem?
Import Source
https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/widget-forge/MAL-2026-12815.json
JSON Data
https://api.osv.dev/v1/vulns/MAL-2026-12815
Published
2026-08-05T13:18:35Z
Modified
2026-08-05T14:37:28.566898773Z
Summary
Malicious code in widget-forge (npm)
Details

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

Source: amazon-inspector (5dc77fe941595018023e8382eac28ffdf8d1b000217a0e4d01e56e7bb48ac2d8)

widget-forge@9999.0.0 is a dependency-confusion beacon. package.json declares scripts.preinstall = 'node callback.js', which auto-runs on npm install. callback.js collects os.hostname(), os.userInfo().username, process.cwd(), npmconfigregistry, and CI repository identifiers (GITHUB_REPOSITORY and related CI env vars) and sends them via HTTP GET to the hardcoded bare-IP endpoint http://75.119.137.232:31337/depconfuse?pkg=.... The package has no functional payload: main is an empty object export, the description is a generic placeholder, and the version 9999.0.0 is the pattern used to outbid internal package versions in dependency-confusion attacks. The only effect of installation is the recon callback to the hardcoded IP.

Database specific
{
    "malicious-packages-origins": [
        {
            "versions": [
                "9999.0.0"
            ],
            "id": "IN-MAL-2026-014967",
            "import_time": "2026-08-05T14:19:47.730209449Z",
            "modified_time": "2026-08-05T13:18:35Z",
            "source": "amazon-inspector",
            "sha256": "5dc77fe941595018023e8382eac28ffdf8d1b000217a0e4d01e56e7bb48ac2d8"
        }
    ]
}
References
Credits

Affected packages

npm / widget-forge

Package

Affected ranges

Affected versions

9999.*
9999.0.0

Database specific

cwes
[
    {
        "cweId": "CWE-506",
        "name": "Embedded Malicious Code",
        "description": "The product contains code that appears to be malicious in nature."
    }
]
source
"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/widget-forge/MAL-2026-12815.json"
indicators
{
    "package_integrity": [
        {
            "filename": "widget-forge-9999.0.0.tgz",
            "hashes": {
                "sha512_sri": "sha512-l56P18eiY1ufRiPCI6LKVmc8t96hPqMc7A6fZDY81upRDwDQp0haBHMeIlq4OHR3A/chTRiUvoWt/20njfP8QA==",
                "sha1": "c664f0ec4c289ab1cc58232251f5ce90d9f72cc8"
            }
        }
    ],
    "evidence_files": [
        {
            "path": "callback.js",
            "tlsh": "dd119eb9c68c0c3409c2178079686c1eb8fbd29233c294917f2d71d26bb22b046b71fd",
            "sha256": "b341d8f1645821a7fd974fca0867a62745a1d19a93b462ad95b4ade05ddc6809"
        },
        {
            "path": "package.json",
            "tlsh": "bed0a7709e2258232cd8efd30c2b594611668e6b05087c092bc7911d56a96a719ff2ad",
            "sha256": "377f7309fda6abcd457262235ad94c67a7b7d8607582fca51a11ea1dc13acdc3"
        }
    ]
}