Skip to content
Heist/ feed
Back to feed
Critical

Compromised xrpl.js versions 4.2.1, 4.2.2, 4.2.3, 4.2.4, and 2.14.2

Type: advisorySources: OSV

xrpl.js is a JavaScript/TypeScript API for interacting with the XRP Ledger in Node.js and the browser. Versions 4.2.1, 4.2.2, 4.2.3, and 4.2.4 of xrpl.js were compromised and contained malicious code designed to exfiltrate private keys. Version 2.14.2 is also malicious, though it is less likely to lead to exploitation as it is not compatible with other 2.x versions. Anyone who used one of these versions should stop immediately and rotate any private keys or secrets used with affected systems. Users of xrpl.js should pgrade to version 4.2.5 or 2.14.3 to receive a patch. To secure funds, think carefully about whether any keys may have been compromised by this supply chain attack, and mitigate by sending funds to secure wallets, and/or rotating keys. If any account's master key is potentially compromised, disable the key.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2025-32965
Confirmed fixed CVEs
Not specified
Updated in this feed
2 Nov 2026, 22:10 UTC · Revision 1

Source evidence

Compromised xrpl.js versions 4.2.1, 4.2.2, 4.2.3, 4.2.4, and 2.14.2

core-osv · Original source

Published 22 Apr 2025, 20:39 UTC

xrpl.js is a JavaScript/TypeScript API for interacting with the XRP Ledger in Node.js and the browser. Versions 4.2.1, 4.2.2, 4.2.3, and 4.2.4 of xrpl.js were compromised and contained malicious code designed to exfiltrate private keys. Version 2.14.2 is also malicious, though it is less likely to lead to exploitation as it is not compatible with other 2.x versions. Anyone who used one of these versions should stop immediately and rotate any private keys or secrets used with affected systems. Users of xrpl.js should pgrade to version 4.2.5 or 2.14.3 to receive a patch. To secure funds, think carefully about whether any keys may have been compromised by this supply chain attack, and mitigate by sending funds to secure wallets, and/or rotating keys. If any account's master key is potentially compromised, disable the key.

osv:CVE-2025-32965
Complete source record
{
  "id": "4da8bd9c66eb65680c54de99b02893cd158c87845392054103357a268ef0f96a",
  "url": "https://osv.dev/vulnerability/CVE-2025-32965",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "Compromised xrpl.js versions 4.2.1, 4.2.2, 4.2.3, 4.2.4, and 2.14.2",
    "summary": "xrpl.js is a JavaScript/TypeScript API for interacting with the XRP Ledger in Node.js and the browser. Versions 4.2.1, 4.2.2, 4.2.3, and 4.2.4 of xrpl.js were compromised and contained malicious code designed to exfiltrate private keys. Version 2.14.2 is also malicious, though it is less likely to lead to exploitation as it is not compatible with other 2.x versions. Anyone who used one of these versions should stop immediately and rotate any private keys or secrets used with affected systems. Users of xrpl.js should pgrade to version 4.2.5 or 2.14.3 to receive a patch. To secure funds, think carefully about whether any keys may have been compromised by this supply chain attack, and mitigate by sending funds to secure wallets, and/or rotating keys. If any account's master key is potentially compromised, disable the key.",
    "evidence": "osv:CVE-2025-32965",
    "products": [],
    "severity": "critical",
    "structured": {
      "id": "CVE-2025-32965",
      "aliases": [
        "CVE-2025-32965",
        "GHSA-33qr-m49q-rxfx"
      ],
      "metrics": [
        {
          "type": "CVSS_V4",
          "score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/xrplf/xrpl.js",
              "type": "GIT",
              "events": [
                {
                  "introduced": "7880662ac88e8f6575cba14b2274414ec105c579"
                },
                {
                  "fixed": "c6bbdc9e1bac2304689e946f7cdfacfc4d601235"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "range": [
                      {
                        "introduced": "4.2.1"
                      },
                      {
                        "fixed": "4.2.5"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StringRangeExpression"
                  }
                ]
              }
            }
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2025-32965.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:24.157927796Z",
      "provider": "osv",
      "references": [
        "https://xrpl.org/docs/tutorials/how-tos/manage-account-settings/assign-a-regular-key-pair",
        "https://xrpl.org/docs/tutorials/how-tos/manage-account-settings/disable-master-key-pair",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/32xxx/CVE-2025-32965.json",
        "https://github.com/XRPLF/xrpl.js/security/advisories/GHSA-33qr-m49q-rxfx",
        "https://nvd.nist.gov/vuln/detail/CVE-2025-32965",
        "https://www.aikido.dev/blog/xrp-supplychain-attack-official-npm-package-infected-with-crypto-stealing-backdoor"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-506"
        ],
        "cna_assigner": "GitHub_M",
        "unresolved_ranges": [
          {
            "extracted_events": [
              {
                "range": [
                  {
                    "introduced": "= 2.14.2"
                  },
                  {
                    "last_affected": "= 2.14.2"
                  }
                ],
                "source": "AFFECTED_FIELD",
                "strategy": "StandaloneSingleVersion"
              }
            ]
          }
        ],
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/32xxx/CVE-2025-32965.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2025-32965",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 490481,
  "published_at": "2025-04-22T20:39:48.452+00:00"
}