据Xrpl.org发布的报告,一名研究人员于9月22日通过XRPL漏洞赏金计划提交了一个关键支付引擎缺陷。该漏洞可能使攻击者在无需真实资金投入的情况下凭空生成并支出XRP资产。

这一缺陷自2015年支付引擎代码编写之初便存在,至今未有公开记录显示其在主网上被实际利用。漏洞已在9月发布的xrpld 3.4.1版本中完成修复,相关补丁通过独立测试确认有效。
漏洞根源在于支付引擎在处理多层订单簿报价时的金额计算逻辑。由于XRP余额以64位整数形式存储,而系统在加法运算中缺乏溢出检测机制,当交易路径经过大量定价异常的报价时,总和可能突破上限并回绕为极小数值。
此时,系统仍会向每个报价方全额支付,但仅从买家处扣除一个微不足道的金额,从而产生本不应存在的新XRP。这种行为本质上绕过了账本对资产创造的基本约束。
值得注意的是,两个原有防护机制未能触发警报:一是账本自身用于验证资产总量不变的检查,其内部同样使用未校验的算术运算,导致回绕未被识别;二是单账户余额监控也未触发,因为生成的XRP被分散至数百个账户中,未达到单个账户异常阈值。
攻击者仅需几百枚XRP作为初始储备(可在清理后退还)及少量交易费用即可启动实验,无需大规模资本支持。
通常情况下,对交易处理逻辑的变更需经验证者网络投票并通过两周的共识窗口期方可生效,以确保全网同步。但此次修复采取了例外措施——在各节点完成升级后立即启用。
官方解释称:“鉴于漏洞风险可控且影响范围有限,相比长达数周的公开暴露期,短暂的部署窗口更有利于整体网络安全。”
RippleX Engineering团队在隔离环境中复现了该漏洞,并验证了所生成的XRP确实具备可花费性。基于此,其严重程度由“重大”上调为“严重”。截至9月25日,已有超过80%的默认UNL验证节点完成升级。
该发现归功于研究人员Cayden Liao与Veria AI,报告指出由于普通支付场景极少触发64位溢出条件,该缺陷可能长期未被察觉,直至本次主动探测才浮出水面。