MAL-2026-12407

See a problem?
Import Source
https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/pfa-prettier-config/MAL-2026-12407.json
JSON Data
https://api.osv.dev/v1/vulns/MAL-2026-12407
Aliases
  • GHSA-qmmm-73xw-c3f2
Published
2026-08-05T12:49:16Z
Modified
2026-08-06T01:21:07.194098594Z
Summary
Malicious code in pfa-prettier-config (npm)
Details

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

Source: amazon-inspector (08f4b65c7534427cd8814e8c85a84b11c2201d10724c34bb99987bae83e0c5cc)

The package is published as 'pfa-prettier-config' with description 'environment config reader', but contains no Prettier configuration or config-reading code. index.js unconditionally requires./platform on load. platform.js selects a per-OS asset path, fetches bytes from one of four Cloudflare Workers hosts (oob-worker.cf102-baf.workers.dev, oob-worker.cf101-adf.workers.dev, oob-worker.cf100-416.workers.dev, oob-worker.cf99-9b3.workers.dev) — with hostnames reassembled at runtime via string-concat (e.g. ["oob-worker.cf","102-baf.workers.dev"].join("")) — and falls back to a chunked DNS TXT download from tin.dl.well1.site. The fetched bytes are written to /var/tmp/.cache<hex> or %TEMP%/dotnetdiag<hex>.exe under cover names, chmod'd 0755, and spawned detached via cp.spawn('/bin/sh', ['-c', fp+' &'], {detached:true}).unref() or spawn('cmd',...). A second dropper is shipped in lib/telemetry.js (~81KB, disguised as an 'Analytics SDK') containing the same primitives (base64 chunk decode, chmodSync 0755 on 'extensionPath', cp.spawn('/bin/sh', ['-c', filePath+' &'])), with childprocess required via the computed string require('child_'+'process'). Requiring or importing this package triggers download-and-execute of an attacker-hosted OS-specific binary.

Source: ghsa-malware (3d367f5160b47afe3e72f884621b4a8f8946a3a07dfcd5c4c9fbd659c57a2b2a)

Any computer that has this package installed or running should be considered fully compromised. All secrets and keys stored on that computer should be rotated immediately from a different computer. The package should be removed, but as full control of the computer may have been given to an outside entity, there is no guarantee that removing the package will remove all malicious software resulting from installing it.

Database specific
{
    "malicious-packages-origins": [
        {
            "id": "IN-MAL-2026-014774",
            "source": "amazon-inspector",
            "import_time": "2026-08-05T13:08:45.440382399Z",
            "modified_time": "2026-08-05T12:49:16Z",
            "versions": [
                "20.9.1"
            ],
            "sha256": "08f4b65c7534427cd8814e8c85a84b11c2201d10724c34bb99987bae83e0c5cc"
        },
        {
            "id": "GHSA-qmmm-73xw-c3f2",
            "ranges": [
                {
                    "events": [
                        {
                            "introduced": "0"
                        }
                    ],
                    "type": "SEMVER"
                }
            ],
            "source": "ghsa-malware",
            "modified_time": "2026-08-05T18:41:44Z",
            "import_time": "2026-08-06T00:58:53.436803741Z",
            "sha256": "3d367f5160b47afe3e72f884621b4a8f8946a3a07dfcd5c4c9fbd659c57a2b2a"
        }
    ]
}
References
Credits

Affected packages

npm / pfa-prettier-config

Package

Name
pfa-prettier-config
View open source insights on deps.dev
Purl
pkg:npm/pfa-prettier-config

Affected ranges

Type
SEMVER
Events
Introduced
0Unknown introduced version / All previous versions are affected

Affected versions

20.*
20.9.1

Database specific

cwes
[
    {
        "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."
    }
]
source
"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/pfa-prettier-config/MAL-2026-12407.json"
indicators
{
    "evidence_files": [
        {
            "path": "_platform.js",
            "tlsh": "3aa195aa056a701d8bb0d7e08717581af65bf663338096d0f76c99440f7222483b2efc",
            "sha256": "14df140db9b9bcef32460090d940f3f0630f10c0aae8d2257c46019702009d13"
        },
        {
            "path": "lib/telemetry.js",
            "tlsh": "fd835056566a142186b2b368df234107ff3685272643429dbafc82dc1fbd72092a5ffc",
            "sha256": "dfb335b50677e0f49a67255102885389962da15c25e68b44b36c34a7fb6fc3f7"
        },
        {
            "path": "package.json",
            "tlsh": "a2c022134100782300740a94c8a158277b521f8f1021ac0a3773701c00849b508aa311",
            "sha256": "2de6598a166dc0ec6d88d4531b953f84f4bb02ba7ae9d715bbc246f8d1368cbd"
        }
    ],
    "package_integrity": [
        {
            "hashes": {
                "sha1": "3b74f1ccd5c7ec6542bd88eb6674887c35ab3452",
                "sha512_sri": "sha512-/s3QciSaT+2rPYTu6Wpqy+a0eH8dVd0ZxWgqSN1huA2HNO5TTYyZRx6TXh1Fg0c79f5O5M1KA71BNfAImnVGtQ=="
            },
            "filename": "pfa-prettier-config-20.9.1.tgz"
        }
    ]
}