安全披露:Optimism 欺诈证明系统中的安全漏洞

WB3交流加微信:WX-93588,⬅️此处为全站广告位,与正文项目无关
注册并登录App即可领取高达 60,000 元的数字货币盲盒:点击此处注册OKX

作者:Ed Felten,Offchain Labs 联合创始人 来源:medium 翻译:善欧巴,金色财经

3 月 22 日,Offchain Labs 团队向 OP Labs 团队披露了我们在他们部署在测试网上的 Optimism 欺诈证明系统中发现的两个严重安全漏洞。我们向 OP Labs 团队提供了攻击的演示利用代码。3月25日,OP Labs确认了这两个问题的有效性。

我们与 OP Labs 团队协调了我们的披露。OP Labs 要求我们暂缓公开披露这些漏洞,直到它们得到解决。昨天晚些时候(4 月 25 日),Optimism 测试网进行了更新,今天我们首次披露了这些漏洞。

这些漏洞允许恶意方强制 OP Stack 欺诈证明机制接受欺诈链历史记录,或阻止 OP Stack 欺诈证明机制接受正确的链历史记录。这些问题源于 OP 防欺诈设计处理计时器的缺陷。

结果是,与完全依赖安理会紧急干预的方法相比,防欺诈系统并没有改善安全保障。

漏洞的性质

计时器是交互式防欺诈设计中最微妙的方面之一。对手方可能根本不会在挑战游戏中采取行动,因此在某个时刻,协议需要声明未移动的玩家在超时时失败。但对手也可以对母 L1 链(例如以太坊)使用审查攻击,以阻止诚实方参与游戏。

如果时间流逝而玩家没有移动,则协议无法判断该玩家是否正在受到审查,或者是一个保持沉默并假装受到审查的坏人。(在这两种情况下,协议只能看到玩家的“无线电静默”。)因此,协议必须给诚实的玩家足够的时间余地,这样他们就不会因为审查而失败,同时防止恶意玩家拖延协议时间太长。

例如,在一对一的挑战协议中,争议双方都有一名玩家,Arbitrum 当前部署的协议使用的方法效果非常好。以下是理解该方法的直观方法:每个玩家在轮到其他玩家移动时都会获得“时间积分”,如果玩家积累了 7 天的时间积分,则因时间而赢得挑战。这个想法是,如果一名玩家总共“迟到”了 7 天,那么这种延迟完全是由于审查制度造成的就不合理,因此该玩家可以被视为不诚实——从而可以安全地宣布该玩家为失败者。这使得一对一协议可以安全地免受长达 7 天的审查。

当争议双方只有一名玩家时,这种方法很有效。但当你允许许多玩家参与时,就像乐观主义所做的那样,如何管理时间积分就不那么明显了。人们很容易将玩家分成两队,争议双方各有一队,每队都有时间积分。但你需要小心,因为叛徒攻击,恶意一方假装诚实一段时间,结果却在最糟糕的时刻在背后捅了诚实的“队友”一刀。

最初部署在测试网上的 OP 协议很容易受到此类叛徒攻击,因为它允许叛徒获得不应得的时间奖励。这将使恶意行为者赢得一场其应输的欺诈证明游戏,从而接受欺诈性的链历史或拒绝正确的链历史。

这些都是很难解决的问题,虽然 OP 的原始设计受到了微妙的攻击,但他们对其计时器处理代码进行了一些更改,以解决我们提供的演示漏洞。目前我们还没有对他们修改后的协议进行安全分析。

应对计时器、叛徒和其他攻击

防欺诈协议,特别是其计时方面非常难以设计。这就是为什么我们的BoLD 协议附带了一份技术论文,提供了详细的威胁模型以及 BoLD 协议不易受到此类叛徒攻击的证据。考虑到这些问题的复杂性和微妙性,我们认为必须有一个清晰的威胁模型和安全证明,才能确保不存在潜在的攻击。事实上,在创建证明的过程中,我们发现并修复了 BoLD 协议中的多个问题。

原始安全披露

以下是我们 3 月 22 日发送给 OP Labs 的披露内容的扩展摘录:

我们(Offchain Labs 团队)发现当前版本的 OP Stack 故障证明系统存在严重的系统缺陷。本文档描述了这些缺陷并提供了示例漏洞代码供您参考。

这些缺陷将使对手能够通过让协议接受欺诈性索赔、拒绝正确的索赔、或者制造无法在 L1 Gas 限制内解决的争议来破坏链的安全性和活跃性。[注(4 月 26 日):第三个问题(无法解决的争议)已被公开并记录在案,因此我们将删除更多提及的内容。]

我们认为,如果您当前的协议部署在主网上,将会使用户资金面临非常高的风险。

缺陷的性质

一些缺陷似乎源于防错系统中计时器的管理方式。简而言之,从祖父母声明继承计时器允许恶意行为者提出的声明从诚实行为者先前提出的声明继承计时器信用,从而人为地夸大恶意声明的计时器信用,直至恶意行为者可以赢得胜利。挑战。例如,恶意行为者可以安排继承计时器积分,该积分仅略低于声称胜利所需的积分;然后在任何其他方能够做出反应之前,由于时间的原因宣布

漏洞利用示例

下面是一组演示这些攻击的示例漏洞。

第一个漏洞 ( test_exploit_last_second_challenge) 允许攻击者挫败诚实的声明。

第二个漏洞 ( test_exploit_last_second_defend) 允许攻击者接受欺诈性索赔。

这些漏洞似乎适用于提交时最新版本的 OP 堆栈欺诈证明系统96a269bc793fa30c3e2aa1a8afd738e4605fa06e

此时快讯

【神鱼:多达十亿用户的云输入法可能已泄露输入内容,请立即采取措施降低风险】4月29日消息,Cobo联合创始人兼CEO神鱼在X平台发文表示,多达十亿用户的云输入法可能已泄露输入内容。如果您通过以下任一云输入法输入过助记词或其他敏感信息,请立即采取措施降低风险。
版权声明:本文收集于互联网,如有侵权请联系站长删除。
转载请注明:安全披露:Optimism 欺诈证明系统中的安全漏洞 | 币百度

相关文章