MAL-2026-5450

See a problem?
Import Source
https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/o3forms/MAL-2026-5450.json
JSON Data
https://api.osv.dev/v1/vulns/MAL-2026-5450
Published
2026-06-09T17:34:41Z
Modified
2026-06-09T19:01:30.307670700Z
Summary
Malicious code in o3forms (npm)
Details

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

Source: amazon-inspector (4d094d4429f1492bb6b99d802de86b97dc972e06d680a1287846e6d1635fe457)

The package name impersonates the OpenMRS O3 forms ecosystem (legitimate packages are published under the @openmrs/ scope). package.json declares an optionalDependency o3forms-utils resolved as github:core-modules-lab/o3forms-utils#76c1c55 — code fetched directly from GitHub, outside npm registry scanning. index.js (lines 1-4) wraps require('o3forms-utils') in a try/catch that silently swallows errors, so the off-registry payload executes on every consumer import with no visible failure if anything goes wrong. The package.json bin field maps 11 ubiquitous dev-tool names (webpack, vite, eslint, tsc, next, jest, prettier, nodemon, turbo, ts-node, webpack-cli) all to index.js, so any hoisted invocation of those commands (e.g. npx webpack) launches this package's loader and triggers the GitHub fetch+execute. Additional attacker-hygiene tells: version 99.1.99 (version-squat to outrank legitimate releases), config.unsafe-perm: true to keep root during npm scripts, and a placeholder OpenMRS Community Contributor author with no homepage. Installing or loading this package — or running any of the hijacked dev-tool commands in a project where it is hoisted — executes attacker-controlled code from a mutable GitHub commit.

Database specific
{
    "malicious-packages-origins": [
        {
            "modified_time": "2026-06-09T17:34:41Z",
            "versions": [
                "99.1.99"
            ],
            "sha256": "4d094d4429f1492bb6b99d802de86b97dc972e06d680a1287846e6d1635fe457",
            "id": "IN-MAL-2026-005065",
            "source": "amazon-inspector",
            "import_time": "2026-06-09T17:45:52.260114791Z"
        },
        {
            "modified_time": "2026-06-09T17:57:53Z",
            "versions": [
                "90.0.0"
            ],
            "sha256": "aacfdf714651bb7a6ab33cec3a675e5031157ce336db3f60a800bd7dc0ae5daf",
            "id": "IN-MAL-2026-005159",
            "source": "amazon-inspector",
            "import_time": "2026-06-09T18:50:21.087344728Z"
        }
    ]
}
References
Credits

Affected packages

npm / o3forms

Package

Affected ranges

Affected versions

90.*
90.0.0
99.*
99.1.99

Database specific

indicators
{
    "evidence_files": [
        {
            "sha256": "fa22f3441eccdc1077f1496a975a4016731d55b4e2937409d73596889d702829",
            "tlsh": "0911ce33d1a61d230278da51ea9a0e22b1d35b3f20200c0bb67d216e8ff356650deb59",
            "path": "package.json"
        }
    ],
    "package_integrity": [
        {
            "hashes": {
                "sha512_sri": "sha512-uJ5qcU+zIEXSwB7FYfb8ULXqhOyz33o8Ezs8T0TYF22l39rVg9eUOPxoktOgrsJqkJaheQhoF9AZ7UP5IHqBwg==",
                "sha1": "8365056056d01f6902973f909a52e564f267e19c"
            },
            "filename": "o3forms-99.1.99.tgz"
        }
    ]
}
cwes
[
    {
        "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"
    }
]
source
"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/o3forms/MAL-2026-5450.json"