导航菜单
首页
排名 涨幅榜 跌幅榜 24h成交额 新币榜
快讯 机构 观点 人物 专题

XRP Ledger 紧急修复 2015 年严重漏洞:曾可凭空生成 18 万亿 XRP,官方确认 1000 亿供应安全

导语:XRP Ledger 开发团队确认,已修复一个可追溯至 2015 年的关键支付引擎漏洞。该漏洞理论上允许攻击者通过一笔精心构造的交易凭空生成约 18 万亿枚 XRP。官方表示,XRP 的 1000 亿枚总供应未受影响,也未发现公共网络被利用的证据。

漏洞源于整数溢出,可绕过供应上限

根据 XRP Ledger Foundation 与 RippleX 于 10 月 9 日披露的信息,问题出在 2015 年编写的支付引擎代码中。当一笔支付消耗 XRP Ledger 内置去中心化交易所订单簿中的多个报价时,系统使用 64 位整数计算买方应付总额。若总额超过整数最大值,数值可能回绕为更小金额。

攻击者可创建数百个特殊定价报价,并安排一笔交易同时消耗它们。此时,卖方仍会按其报价获得全额 XRP,而买方只支付回绕后的较小金额,差额便成为可花费的新 XRP。XRPL Foundation 指出,这些新生成的 XRP 可被转移、交易或发送至交易所,风险远超既定的 1000 亿枚供应上限。

该漏洞无法通过普通交易触发,需要数百个账户、异常定价报价以及精心构造的交易组合。原有供应检查因使用相同算术逻辑而失效,另一项余额检查也可通过将新生成 XRP 分散至多个钱包绕过。

研究人员复现约 18 万亿 XRP 场景

该问题由安全研究员 Cayden Liao 与 Veria AI 在对 XRP Ledger 开源软件进行测试时发现。Veria Labs 表示,其自动化安全测试系统于 9 月 21 日发现漏洞,研究团队次日即在本地测试网络构建出可运行的概念验证。

演示显示,通过一笔构造交易可创建约 18 万亿枚 XRP,约为 XRP 预期总供应量的 184 倍。该数字来自受控测试,并非实际流通供应增加。Liao 于 9 月 22 日通过官方 XRPL 漏洞赏金计划提交漏洞,RippleX 工程师在独立服务器上复现,并确认新生成的 XRP 可在后续支付中花费。初始报告将问题定为重大,开发者在确认后果后将其提升为关键。

Veria Labs 称,以当时约 940 亿美元市值计算,该漏洞可能危及 XRP 的整体市场价值。不过,这一数字代表潜在风险敞口,而非已确认损失。10 月 8 日,Veria AI 获得最高 25 万美元漏洞赏金。

紧急发布 xrpld 3.4.1,绕过常规修订流程

RippleX 工程师在 9 月 22 日至 23 日间开发修复方案,并将其纳入 9 月 25 日发布的 xrpld 3.4.1 版本。更新增加检查,防止支付引擎接受超出允许整数范围的计算结果,并以普通支付失败拒绝受影响计算。开发者还使用更宽计数器加强供应验证,并审查其他余额计算作为预防措施。

由于 XRP Ledger 软件开源,发布补丁可能暴露漏洞位置和性质。XRPL Foundation 表示,常规修订流程要求超过 80% 可信验证者连续两周支持,这会使漏洞在批准期内仍可被利用。因此,开发者选择在验证者升级时立即应用修复。到 9 月 25 日,默认唯一节点列表中超过 80% 的可信验证者已安装更新。公共源代码在紧急安全响应后发布。

紧急处理也带来另一项担忧:运行不同软件版本的服务器可能对恶意交易产生分歧,并暂时停止账本确认。但官方称,升级率已足以使修复生效。

Batch 交易功能验证问题同步修复

10 月 9 日的披露还涉及 XRP Ledger 的 Batch 交易功能。该功能允许开发者将最多八笔交易合并为一次操作。安全测试发现,Batch 内部单笔交易的打包方式存在验证错误:协议要求每笔交易使用名为 RawTransaction 的字段,但软件在某些条件下可接受其他字段名。不同服务器版本可能以不同方式处理格式错误的交易,若 Batch 在问题修复前激活,可能造成共识风险。

该问题在 Sherlock Attackathon 期间被发现,后由 XRPL Foundation 贡献者 Denis Angell 审查。RippleX 工程师 Mayukha Vadari 确定其构成服务器版本间共识风险。开发者引入 fixBatchV1_2 修订,要求每笔 Batch 交易使用批准字段格式,并拒绝错误打包的交易。验证者暂时撤回对先前 BatchV1_1 激活计划的支持。fixBatchV1_2 与 BatchV1_1 已于 10 月 9 日在主网激活。XRPScan 引用数据显示,30 个验证者支持 Batch 激活,5 个反对。

官方称用户资金未受影响

XRPL Foundation 表示,没有用户资金损失,没有私钥泄露,也未因该漏洞发生共识失败。基金会补充称,运行旧版软件的服务器现已被修订阻止,必须升级至 3.4.1 或更高版本才能保持同步。

此外,基金会将为未来版本引入额外验证要求:此前报告过的安全问题必须在发布候选版本中再次测试,才能被归类为已修复。该流程将适用于审计、漏洞赏金计划、AI 辅助安全测试及其他漏洞评估的发现。