
XRP 网络发现十年级算术漏洞,可被用于无中生有铸造代币
XRP Ledger(XRPL)成功修补了一个自 2015 年以来潜藏的严重软件缺陷。该漏洞允许恶意行为者在未实际注入资金的情况下,通过精心设计的交易流程生成可合法使用的 XRP,从而违背了协议中关于总量上限的核心约束机制。
攻击路径依赖批量报价与溢出计算,成本极低
漏洞存在于支付引擎及内置去中心化交易所逻辑中。攻击者可创建数百个账户并发出大量异常定价的报价,以极小代价换取巨额虚拟 XRP。这些报价本身符合规则,但当一笔特制支付交易同时消耗所有报价时,系统因整数溢出而产生错误结果。
问题根源在于支付引擎使用 64 位整数累加买方应付款项。一旦数值超过上限,将发生回绕,导致实际支出金额远低于应计金额。系统仍按原报价全额记账给卖方,却仅收取回绕后的极小值,差额即为非法新增的 XRP。
安全校验机制亦受相同算术缺陷影响,失效风险高
尽管协议内置“不创造新 XRP”不变量作为防护层,但其验证逻辑同样采用相同的 64 位运算方式。若支付引擎发生溢出,校验过程也可能同步溢出,最终显示净变化仅为正常手续费,掩盖了真实资产伪造行为。
此外,单账户持有上限保护也被规避——攻击者可通过分散余额至多个账户,使每个账户均低于阈值,从而绕过限制。调查确认,该漏洞自支付引擎初始版本起便已存在,而相关不变量虽后期加入,却继承了相同的算术弱点。
紧急修复提前部署,完整披露延后至网络加固后
9 月 25 日发布的 xrpld 3.4.1 版本为紧急补丁,专为应对敏感安全事件设计。更新日志仅简要提及“支付引擎与账本工具中的整数算术强化”,未透露具体漏洞细节,源代码也暂未公开。
RippleX 表示此举旨在防止攻击者在多数节点尚未升级前精准定位漏洞。因此,修复未走常规修正案流程,而是直接生效。截至当日,超 80% 的默认验证器已完成升级。待网络全面受保护后,完整技术报告于 10 月 9 日正式对外发布。
运营商须立即升级至 3.4.1 或更高版本
安装 xrpld 3.4.1 后,溢出问题即刻消除。同版本引入的 BatchV1_2 修正案于 10 月 9 日上线主网,强制旧版本节点无法继续同步,实现隔离。
当前官方建议所有服务器运营方尽快迁移至 3.4.1 或以上版本。尽管协议原始供应量规则未变——全部 1000 亿枚 XRP 均于 2012 年创世生成——但此次发现揭示了长达十年间存在一条可被主动利用的规则绕过路径,且连内部检测机制也可能陷入相同错误循环。
