Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2026-61694— go-xrpl: ParseMPTAmountBinary: positive MPT amount silently decoded as negative (int64 wrap)

Quick assessment

Affected
LeJamon go-xrpl
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

go-xrpl 是 XRP Ledger 协议的 Go 语言实现。在 2026 年 6 月 18 日公告中提及的该版本及之前的所有版本中, 文件中的 函数在将 8 字节的 MPT 数量级(magnitude)转换为整数时,使用了 ,但未检查该值是否适配 63 位有符号整数的范围。若数量级为正数且至少为 2^63,该函数会静默地发生溢出,将其错误地解释为负数,而不会抛出任何错误。 函数将 33 字节的 字段传递给该解析器,并将 的结果存储到 中,导致下游计算出现错误,且与 rippled 对同一 escrow 条目的

CVSS 3.7 · Low
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-61694

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
go-xrpl: ParseMPTAmountBinary: positive MPT amount silently decoded as negative (int64 wrap)
Source: CVE Program / CVE List V5
Vulnerability Description
go-xrpl is a Go implementation of the XRP Ledger protocol. In versions through the June 18, 2026 revision identified by the advisory, `ParseMPTAmountBinary` in `internal/ledger/state/ripple_state.go` converts the eight-byte MPT magnitude using `num.Int64()` without checking that it fits in 63 bits. A positive magnitude of at least 2^63 silently wraps into a negative amount without an error. `ParseEscrow` passes 33-byte `sfAmount` fields to the parser and stores `MPTRaw()` in `EscrowData.MPTAmount`, causing incorrect downstream calculations and divergence from rippled's interpretation of the same escrow entry. Independently, `readMPTAmount` in `internal/tx/ledgerfields/decode_stream.go` accepts over-limit magnitudes and surfaces large decimal strings without enforcing the maximum signed 64-bit value. The public codec in codec/binarycodec/types/amount.go already rejects these values, leaving the internal decoders inconsistent with that safe path. A source fix is available in commit 9dbd3935ed6c54f0232f2291edf9c012a0900dd5.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N
Source: CVE Program / CVE List V5
Vulnerability Type
整数溢出或超界折返
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
LeJamon go-xrpl <= 0.0.0-20260618134614-cb77d640ee26 -

II. Public POCs for CVE-2026-61694

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-61694

请登录查看更多情报信息。

Other References for CVE-2026-61694 (3)

IV. Related Vulnerabilities