当前位置:  首页 →热点 →正文

Maker中的漏洞:预言机治理攻击、攻击DAOs和去中心化

2019-11-17 9:38:15 核财经

作者:Ariah Klages-Mundt

编译:共享财经Neo

Maker稳定币Dai的安全依赖于可靠的oracle(预言机)提供价格信息。这些是通过链上治理选择的。因此,oracle提要可以由MKR令牌持有者操作。在本文中,我将讨论对Maker的攻击,其攻击方式类似于51%的攻击,但不一定需要51%的MKR攻击,在这种攻击中,一个联盟可以通过操纵治理来“窃取”系统抵押品而获利。这些攻击既影响当前的单附属Dai (SCD或' Sai '),也影响即将到来的多附属Dai (MCD)实现,以及具有链上治理的类似系统。

这些攻击的一个后果是,在当前和历史市场价格下,“完全分散的”Dai由于激励错位而不安全。这里的“完全分散”要求MKR足够分散,以达到分散的目的。目前的Maker系统是半集中式的,据说大部分MKR由少数Maker个人和Maker基金会持有。这表明市场可能会低估MKR的价值,因为它不是充分分散的,因此Dai的安全依赖于与Maker基金会的信任链接,以及在遭受攻击时法律追索权的可能性。要么市场没有意识到MKR治理攻击的潜力会导致定价的下限,要么市场认为如果MKR完全去中心化,它的价值会更高。

这些攻击还表明Dai存在严重的可伸缩性问题:为了维护安全性,MKR的价值需要比Dai和附属品的供应增长得快得多。Dai和CDP的持有者需要抬高这些价格来保证他们的安全。从本质上讲,稳定的资产持有人需要在一项高风险资产中持有大量头寸,以确保他们的稳定地位,这可能会违背稳定资产的目的。

Maker治理:预言机和global settlers

Maker系统由MKR令牌持有者管理,他们按顺序投票决定系统参数和流程。他们被赋予与预言机安全相关的三个重要任务。

首先,MKR持有者填充Maker的可信预言机列表。Maker系统依靠这些可信赖的预言机来提供真实世界的价格数据,这些数据被用来确定债务抵押债券(CDP)清算的门槛。

第二,MKR持有者影响针对预言机操作的保护。Maker系统在给定的时间内构建了最大的预言机价格变化(“价格反馈敏感性参数”),并且每小时延迟一次新的预言机价格生效。MKR持有者直接决定价格参数。

三是MKR持有者决定“global settlers ”的集合,有效控制global settlers。在global settlers 中,Maker系统被冻结,参与者(Dai和CDP持有人)能够收回他们的部分抵押品,这部分抵押品是由上一个预言机价格决定的。

假设采用诚实的MKR治理,预言机操作可能得到合理控制。每小时的价格延迟提供紧急情况,预言机(由MKR持有者预先决定)有时间来应对攻击。Maker的价格采取预言机价格的中值,所以大多数的预言机(包括紧急预言机)将不得不串通。预言机的最大价格变化限制了攻击的即时严重性。而且,如果所有其他方法都失败,价格延迟将为global settlers(由MKR持有者预先决定)触发global settlers提供时间。

预言机治理攻击Maker

通过不诚实的MKR持有者,两个重要的攻击成为可能:

MKR→CDP退出攻击:MKR持有者可以持有大量CDP,选择串通预言机让ETH价格→∞,然后触发global settlers。

MKR→Dai退出攻击:MKR持有者可以持有大量Dai,选择串通预言机让ETH价格→0,然后触发global settlers。

这两种情况都通过不诚实的MKR持有者(分别)持有CDPs或Dai,将抵押品价值转移到他们手中。大量的CDPs或Dai将取决于MKR中促进攻击所需的值(更多信息见下文)。

请注意,内置在Maker中的预言机保护并不能阻止这些攻击。不诚实的MKR持有者可以合谋在攻击前设置更高的最高小时价格变化。通过预言机,他们可以计算数小时内的最高价格变化。这给了其他参与者(如Dai和CDP持有者)反应的时间。让我们来探索一下Dai市场接下来会发生什么:

在MKR→CDP退出攻击中,当Dai持有者意识到操纵攻击时,他们对长期Dai价格的预期为零。Dai市场变成了一场大甩卖,因为所有的Dai持有者都试图交易其他资产。这将触发Dai价格下降,但不会阻止不诚实的MKR持有者继续操纵预言机,并在随后触发global settlers,实现他们的收益。

在MKR→Dai退出攻击中,当CDP持有者意识到操纵攻击时,其在global settlers中所占的担保价值份额期望为零。他们急于解除抵押品的限制。MKR持有者可以通过设置更高的超额担保门槛来部分阻止这种情况。为了解锁抵押品,CDP持有人争相回购Dai。然而,Dai持有者现在期望他们的Dai更值钱。Dai市场价格上涨是为了计入额外的抵押品价值,在这一点上,CDP持有者已经蒙受了损失。不诚实的MKR持有者可以再次继续操纵预言机,然后触发global settlers,实现他们的收益。

为了确保攻击成功,串谋的MKR持有者需要控制50%的MKR令牌。然而,用更少的钱攻击可能会成功。例如,选民的参与度通常很低,网络可能会堵塞,诚实的参与者几乎没有机会做出反应,不诚实的MKR持有者可能与矿商勾结,审查投票和CDP担保交易。另一个增加的复杂性是在关闭CDP时烧毁MKR。因此,在MKR→Dai退出攻击中的攻击者似乎可以用<50%的MKR攻击预言机,一旦CDP持有者开始关闭CDPs,实际上可以获得全部的50%。

以目前的价格,Maker治理是脆弱的

这些攻击的潜在回报是锁定在Maker手中的抵押品的总价值。这些攻击的成本可能是MKR供应的50%。如果这个回报是大于成本的,对于追求利润的MKR持有者来说,这是一种反常的激励,并且可能会出现一种平衡,即大多数MKR持有者串通一犯实施这种攻击。

截至2019年11月5日,这些价值为抵押品价值C = 3.36亿美元,MKR市值M = 5.55亿美元,Dai市值D = 9600万美元。这就产生了潜在的攻击利润:

Maker中的漏洞:预言机治理攻击、攻击DAOs和去中心化

在MKR→CDP退出攻击下,这代表着联合联盟的收益:

Maker中的漏洞:预言机治理攻击、攻击DAOs和去中心化

在MKR→Dai退出攻击下,这代表了联合联盟的收益

Maker中的漏洞:预言机治理攻击、攻击DAOs和去中心化

随着MKR的价格在过去几天的上涨,这个衡量攻击盈利能力的指标已经下降到1900万美元。这仍然是实质性的,特别是考虑到盈利能力只来自目前的SCD系统,它有一个小的上限规模,而MKR的价格前景来自即将推出的MCD系统,预计将获得更大的规模。图1跟踪了这些盈利能力度量的全部历史。在许多较长时期内,这些攻击的利润率要高得多。

Maker中的漏洞:预言机治理攻击、攻击DAOs和去中心化

图1:MKR 预言机攻击的潜在收益

实际利润率可能要高得多

请注意,实际利润率可能由于几个原因而显著提高。首先,据报道,拥有MKR约30%股份的Maker基金会承诺不参与治理投票。如果他们坚持这一点,或者在某种程度上取消他们在智能合约中的投票权,那么MKR就会更少地给予联盟控制份额,从而大大降低攻击成本。图2展示了在这种情况下显著提高的盈利能力。第二,少数MKR持有者和主要矿商可能串通。第三,攻击可以结合利用其他系统,利用Maker的预言机。

Maker中的漏洞:预言机治理攻击、攻击DAOs和去中心化

图2:MKR 预言机攻击的潜在盈利能力,Maker基金会的股份被限制投票

其它一些复杂的因素

有几个复杂的因素会影响分析。如果攻击者需要获得MKR,他们将需要购买或借用它。虽然MKR的借款利率可能很低(9月份30万美元的一小笔借款中,Nuo的借款利率只有2.6%),但大规模的收购将会产生市场挤压效应,如果许多MKR的持有者都是诚实的、长期的持有的话,收购可能会很困难。类似地,如果攻击者需要获得大量Dai或CDPs,考虑到市场力量,这可能会很困难。成功的收购可能需要很长一段时间。同样,执行攻击步骤的gas成本也会影响盈利能力。

协调共谋者创建“攻击DAO”

这就是说,实际上,我们不知道谁拥有MKR、Dai和CDPs的联合控股,而且许多代理人可能串通一气。我们不能排除一些联盟控制了使这次攻击有利可图的资产组合。如果存在这样一个联盟,那么这个联盟就会有合谋发动袭击的不正当动机。为了确保足够多的共谋者能够很好地协作,可以创建一个“攻击DAO”,将所需的资产组合集中在一起,并触发攻击步骤来获利。

MKR定价的后果

MKR价值来自两个因素:(1)常规现金流的(贴现)价值,(2)治理操纵的有条件现金流价值。经常的现金流来自用于燃烧MKR的Maker费(“稳定费”)——这经常减少了供应,类似于公司股票回购计划。与常规现金流相关的MKR价值与围绕Dai增长的预期相关,因为一个更大的Dai系统导致更多的费用。公司治理控制的有条件现金流代表了一个MKR精心策划的攻击的潜在盈利能力,例如上面描述的51%攻击。这是MKR持有者可以套现的一种“替代”方式。

为了避免治理操纵,MKR的市值必须是>2×总抵押品价值(如果考虑到上面提到的更复杂的攻击和Maker基金会的无投票权承诺,可能还要高得多)。可以说,分散的Dai中的MKR价格应该通过市场力量达到这些水平,否则攻击就代表了某种联盟的类似套利的机会(尽管这并不完全清楚,在下一节中讨论)。

半集中化的影响

如简介所述,Maker系统目前是半集中的:据说大部分MKR是由Maker基金会和少数Maker个人持有。在这种情况下,治理攻击实际上必须由Maker自己执行。他们会在这样的攻击中被识别,因此可能要承担法律责任。在这种情况下,较低的MKR价格可能是合理的,因为潜在的法律责任抵消了为了快速获利而进行攻击的任何动机。但这给Maker基金会提供了一个信任链接。

因为上面概述的攻击在今天可能是有利可图的,要么市场没有意识到MKR治理攻击的潜力应该导致安全定价的下限,要么市场可能因为MKR不够分散而打折。换句话说,如果MKR的发行更加分散,它的价值可能会更高。

现金流能保证系统安全吗?

基于以上原因,我们可以认为今天MKR的价格代表了通过CDP操作购买和燃烧MKR的常规现金流的预期(这本质上类似于股票回购)。这为设计这样的安全系统提供了有价值的数据。重要的是,这表明,在大多数情况下,这些现金流不足以确保能够保护Maker。

事实上,如果Maker是足够分散的,那么来自股票回购的定期现金流对于治理安全可能就不那么必要了,因为我们可能期望理性的代理人将MKR的价格提高到攻击值。从安全的角度来看,要将MKR的价格推到略高于攻击价值的水平,就需要股票回购。因此,由于Maker是半集中的,所以对用户征收有效的税来支持MKR价格,而费用收入可能更好地进行移植以支持长期稳定。

扩展问题

这些攻击表明Dai存在严重的可伸缩性问题:为了维护安全性,MKR价值的增长速度必须比Dai供应和锁定抵押品的增长速度快得多。为了确保资金的安全,Dai和CDP的持有者可能需要抬高MKR的价格。因此,稳定的资产持有人需要在一项高风险资产中持有大量头寸,以确保他们的稳定头寸,这可能会违背稳定资产的目的。

解决这些问题

上述攻击和问题发生在一个更大的环境中:在稳定币、CDP和MKR持有者(也可能是矿商)之间玩的一个游戏,他们从战略上决定他们持有的资产组合。对这个游戏进行建模可以帮助我们了解不同的玩家为了保护系统需要持有的资产(例如,多少MKR)。特别要注意的是,玩家不能冒着MKR被某个拥有合适资产组合的人拥有的风险去执行有利可图的攻击。

在这种情况下,有几点值得探讨。它可以帮助我们理解如何分发令牌来保护系统。如果风险资产的持有量需要很高,那么对于许多玩家(例如,如果必须持有MKR以确保系统安全,那么稳定资产持有者)来说,参与游戏可能不值得。在哪些情况下,玩家为了确保系统安全而抬高治理价格是值得的?除了对资产进行竞价以获得安全的定价之外,还有其他均衡吗?所有涉及的令牌的不稳定性的后果是什么?

在最后一点上,MKR价格源于与抵押品相连的“创造”价值,其价值是抵押品价值的几倍。MKR的价值是为了反映Dai稳定的非常不确定的前景。在系统崩溃(例如,来自攻击)中,系统的总价值崩溃为抵押品价值,使许多人一无所有。MKR的目的是吸收这部分资金,并在此事件中变得一文不值,同时对稳定币和CDP的持有人承担担保结算义务。然而,通过上述攻击的扩展,稳定币和CDP位置也承担了这种风险。如果MKR价格低于安全水平,那么各种MKR、稳定币和CDP头寸可以在结算中被套取。这些风险应该考虑到这些资产的波动性。

无论是否是有意为之,Maker解决这些问题的方法是将治理所有权集中起来,并将信任链接放置到Maker(尽管除非遇到严重威胁,否则不一定会调用它)。这并不一定是个问题——许多传统的系统都是这样操作的。然而,我们应该公开理解这条信任线的存在。值得注意的是,攻击仍可能与矿商勾结进行。

根据与Devcon的Maker团队的对话,他们讨论了如何设置调用global settlers的正确阈值——例如,设置为MKR的10%。然而,这是否解决了这里讨论的激励问题还不清楚。有一点是不清楚的是,对于一个诚实的10% MKR联盟来说,在攻击早期要求global settlers是否是最好的回应。这是因为在基于攻击的结算中,它们的值仍然会受到很大的冲击(可能是0)。一个不诚实的10%联盟可能还会滥用和解协议。理解动机又要回到理解MKR、CDP和稳定币持有者之间的博弈上来。有了这种不同的设置,一个潜在的结果可能是从攻击党派到10% MKR联盟或其他党派之间的贿赂。

以一种分散的方式解决这些问题仍然是一个开放的问题,因此严格的机制设计工作的重要性与本节的讨论一致。

文章来源|核财经,文章仅作者观点,不代表BB财经立场

本文内容来自网络采集,版权归原作者所有,转载请联系原作者