ghsa-f29h-pxvx-f335
Vulnerability from github
Published
2025-07-19 18:30
Modified
2025-07-22 16:23
Summary
eslint-config-prettier, eslint-plugin-prettier, synckit, @pkgr/core, napi-postinstall have embedded malicious code
Details

eslint-config-prettier 8.10.1, 9.1.1, 10.1.6, and 10.1.7 has embedded malicious code for a supply chain compromise. Installing an affected package executes an install.js file that launches the node-gyp.dll malware on Windows.

Show details on source website


{
  "affected": [
    {
      "package": {
        "ecosystem": "npm",
        "name": "eslint-config-prettier"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "8.10.1"
            },
            {
              "fixed": "8.10.2"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ],
      "versions": [
        "8.10.1"
      ]
    },
    {
      "package": {
        "ecosystem": "npm",
        "name": "eslint-config-prettier"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "9.1.1"
            },
            {
              "fixed": "9.1.2"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ],
      "versions": [
        "9.1.1"
      ]
    },
    {
      "database_specific": {
        "last_known_affected_version_range": "\u003c= 10.1.7"
      },
      "package": {
        "ecosystem": "npm",
        "name": "eslint-config-prettier"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "10.1.6"
            },
            {
              "fixed": "10.1.8"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    },
    {
      "database_specific": {
        "last_known_affected_version_range": "\u003c= 4.2.3"
      },
      "package": {
        "ecosystem": "npm",
        "name": "eslint-plugin-prettier"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "4.2.2"
            },
            {
              "fixed": "4.2.4"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    },
    {
      "package": {
        "ecosystem": "npm",
        "name": "synckit"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "0.11.9"
            },
            {
              "fixed": "0.11.10"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ],
      "versions": [
        "0.11.9"
      ]
    },
    {
      "package": {
        "ecosystem": "npm",
        "name": "@pkgr/core"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "0.2.8"
            },
            {
              "fixed": "0.2.9"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ],
      "versions": [
        "0.2.8"
      ]
    },
    {
      "package": {
        "ecosystem": "npm",
        "name": "napi-postinstall"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "0.3.1"
            },
            {
              "fixed": "0.3.2"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ],
      "versions": [
        "0.3.1"
      ]
    },
    {
      "database_specific": {
        "last_known_affected_version_range": "\u003c= 5.1.12"
      },
      "package": {
        "ecosystem": "npm",
        "name": "got-fetch"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "5.1.11"
            },
            {
              "fixed": "6.0.0"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    }
  ],
  "aliases": [
    "CVE-2025-54313"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-506"
    ],
    "github_reviewed": true,
    "github_reviewed_at": "2025-07-21T21:01:18Z",
    "nvd_published_at": "2025-07-19T17:15:23Z",
    "severity": "HIGH"
  },
  "details": "eslint-config-prettier 8.10.1, 9.1.1, 10.1.6, and 10.1.7 has embedded malicious code for a supply chain compromise. Installing an affected package executes an install.js file that launches the node-gyp.dll malware on Windows.",
  "id": "GHSA-f29h-pxvx-f335",
  "modified": "2025-07-22T16:23:21Z",
  "published": "2025-07-19T18:30:33Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2025-54313"
    },
    {
      "type": "WEB",
      "url": "https://github.com/prettier/eslint-config-prettier/issues/339"
    },
    {
      "type": "WEB",
      "url": "https://github.com/prettier/eslint-config-prettier/commit/9b0b0a47ec28a7a83cf65e8436a8776910379385"
    },
    {
      "type": "WEB",
      "url": "https://github.com/prettier/eslint-plugin-prettier/commit/ec39dd4400f10c52d10cd991c10fa8de51ceb854"
    },
    {
      "type": "WEB",
      "url": "https://github.com/un-ts/napi-postinstall/commit/38b4e95cf554e2549b9e1e2c4ff6bff4da9a65f9"
    },
    {
      "type": "WEB",
      "url": "https://github.com/un-ts/pkgr/commit/e1420c99e44d8a2ae949381f9fbe1af5ba9cb1dd"
    },
    {
      "type": "WEB",
      "url": "https://github.com/un-ts/synckit/commit/8f2ee32d4f75736a1c8d7e1101190a71e48909e4"
    },
    {
      "type": "WEB",
      "url": "https://www.stepsecurity.io/blog/supply-chain-security-alert-eslint-config-prettier-package-shows-signs-of-compromise"
    },
    {
      "type": "WEB",
      "url": "https://www.npmjs.com/package/eslint-config-prettier?activeTab=versions"
    },
    {
      "type": "WEB",
      "url": "https://www.endorlabs.com/learn/cve-2025-54313-eslint-config-prettier-compromise----high-severity-but-windows-only"
    },
    {
      "type": "WEB",
      "url": "https://www.bleepingcomputer.com/news/security/popular-npm-linter-packages-hijacked-via-phishing-to-drop-malware"
    },
    {
      "type": "WEB",
      "url": "https://socket.dev/blog/npm-phishing-campaign-leads-to-prettier-tooling-packages-compromise"
    },
    {
      "type": "WEB",
      "url": "https://secure.software/npm/packages/got-fetch"
    },
    {
      "type": "WEB",
      "url": "https://news.ycombinator.com/item?id=44609732"
    },
    {
      "type": "WEB",
      "url": "https://news.ycombinator.com/item?id=44608811"
    },
    {
      "type": "PACKAGE",
      "url": "https://github.com/prettier/eslint-config-prettier"
    },
    {
      "type": "WEB",
      "url": "https://github.com/community-scripts/ProxmoxVE/discussions/6115"
    },
    {
      "type": "WEB",
      "url": "https://checkmarx.com/zero-post/supply-chain-phishing-campaign-drops-more-malware-into-npm-got-fetch-5-1"
    }
  ],
  "schema_version": "1.4.0",
  "severity": [
    {
      "score": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:H/A:N",
      "type": "CVSS_V3"
    }
  ],
  "summary": "eslint-config-prettier, eslint-plugin-prettier, synckit, @pkgr/core, napi-postinstall have embedded malicious code"
}


Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Sightings

Author Source Type Date

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
  • Confirmed: The vulnerability is confirmed from an analyst perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
  • Patched: This vulnerability was successfully patched by the user reporting the sighting.
  • Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
  • Not confirmed: The user expresses doubt about the veracity of the vulnerability.
  • Not patched: This vulnerability was not successfully patched by the user reporting the sighting.


Loading…

Loading…