SharkTeam:Move语言安全性分析及合约审计要点之提案攻击
SharkTeam在此前的“十大智能合约安全性威胁”系列课程中,依据历史时间所发生的智能合约安全事件,梳理总结在智能合约领域里出现比较多、危害最大的一个前10大漏洞。这种漏洞以前一般出现在了Solidity智能合约中,那对于Move智能合约而言,是否会存有同样的危害呢?
SharkTeam【Move语言安全性分析及合同财务审计关键点】系列课程将带大家逐渐深层次,基本内容管理权限漏洞、再入漏洞、逻辑性校检漏洞、函数公式故意复位、返回进攻、提议进攻、控制预言机、合同更新漏洞、三明治进攻、中间人攻击。此章具体内容【提议进攻】。

1、提议进攻详细介绍
提议进攻是针对区块链技术自治组织 (DAO)。在DAO中,参加者会明确提出关于未来协议书更新、资金分配等一系列的提议。为了能让提议起效,必须拥有治理代币账户对它进行网络投票。DAO的治理代币代表着网络投票的投票数,拥有治理代币就会有DAO的整治管理权限,能够参加提议的发起、网络投票和执行等一系列主题活动。所持有的治理代币越大,其管理权限也就大了,乃至会对区块链技术水平。
尽管提议整治有益于基本建设区块链技术未来的发展,但也存在一些缺点。治理代币拥有占比比较小的消费者对提议决策危害不大, DAO的整治消沉懈怠且参与性低,治理代币拥有占比相对较高的客户往往会全身心投入到整治中,对提议管理决策影响很大,乃至也会主动回收消沉者所持有的治理代币,这进一步造成 DAO 之中选举权的去中心化,继而立足于极少数人权益。拥有比较多治理代币的消费者,有着过多选举权。
当某一客户的选举权超出网络投票阀值时,提议的递交与执行一定可以由单独客户确定,彻底违反了DAO的用意。当提议需要由单独客户确定时,这便形成了提议进攻的前提,与此同时该用户可变成进行提议攻击网络攻击。
在DAO中,网络攻击长期或临时性拥有绝对性选举权,随后进行并实施违法提议,危害别人利益而让自己盈利,这种做法称之为提议进攻。例如,Solidity绿色生态里的Beanstalk Farms和Fortress Loans这俩新项目都曾经遭遇过提议进攻。
2、Beanstalk Farms攻击事情
2022年4月17日,以太币上边的优化算法稳定币新项目Beanstalk Farms遭黑客入侵,损害超出8000万美金,包含 24830 ETH 和 3600 万 BEAN。此次事件完备的进攻全过程以及买卖如下所示:

网络攻击根据进攻合同进行对方案的网络投票与执行的关键过程如下所示:
(1) 根据闪电贷、加上流通性及其代币兑换,网络攻击得到了很多的治理代币,总共58,924,887 BEAN3CRV-f
(2) 应用上边所得到的全部BEAN3CRV-f对方案展开网络投票,使提议根据并实施。

提议实行后,网络攻击赢得了36,084,584 BEAN,0.5407 UNI-V2,874,663,982 NEAN3CRV-f及其60,562,844 BEANLUSD-f
(3) 清除流通性得到买卖对心货币,随后偿还闪电贷金额及其服务费,同时向Ukraine Crypto Donation捐助了250k USDC 。
(4) 将剩下的Token折算成WETH,将所获得的24,830 WETH分离出来,并转帐到网络攻击详细地址,进行进攻。
本次提议进攻中,网络攻击根据闪电贷得到了很多的治理代币,盗取了DAO里的绝对控制权,即无需再别人网络投票就可以用与执行提议。这也使得其递交的违法提议InitBip18的根据与执行需要由网络攻击自身投票表决。最后,违法提议InitBip18取得成功实行,让网络攻击获得了大批违法盈利。
3、Fortress Loans攻击事情
2022年5月9日,币安智能链的Fortress Loans遭受黑客入侵。本次进攻事情促使项目方流失了1048.1 ETH及其40万DAI。此次事件进攻全过程以及买卖如下所示:

在其中重要进攻全过程如下所示:
txHash: 0x13d19809b19ac512da6d110764caee75e2157ea62cb70937c8d9471afcb061bf
(1)网络攻击合同启用Fortress整治合同实施了Id=11的提议。在其中,Id=11的提议内容为设定fToken的质押因素为700000000000000000。
(3)改动完质押因素后,进攻合同启用了Chain合同的submit函数,更改了这其中的初始条件,进一步影响了价钱预言机的价格计算。
submit函数如下所示:

这儿之所以能取得成功改动初始条件fcds,是由于submit函数中缺乏了对signer本身的校检及其power的校检。载入价钱的函数公式如下所示:


因为调用submit函数更改了初始条件fcds,最后更改了价钱预言机中的价钱。
(4)进行之上重新编辑,网络攻击从借款合同中借出了很多的别的Token,随后所有换取变成USDT。
进攻中,Id=11的议案的建立、网络投票及其执行过程如下所示:
(1)5月3日,建立提议;
(2)5月6日,提议根据2次网络投票后启用了queue函数把它导入到实行序列。

这儿,鼓励的投票数只需不少于400,000 FTS,网络投票就能导入到实行序列中等候实行。2次网络投票鼓励的总投票数为296,193 119,774 = 415,917 FTS > 400,000 FTS,而且eta一直为0,因而提议状态应该给Suceeed,能够被参与到实行序列中。
除此之外,网络投票的FTS乃是网络攻击帐户根据跨链协议书Celer Network从以太币账户上掌握到的(期为4月19日)。因为FTS质优价廉,网络攻击具体只是应用9 ETH就领取了高于400,000 FTS(实际上是400,413 FTS),实现了全部进攻全过程。
(3)5月8日,网络投票实行提议,完成提议进攻。
本次提议进攻中,DAO的治理代币价钱非常低,网络攻击只是应用9 ETH就换取到超出DAO网络投票阀值(400000)的治理代币。这也使得网络攻击发起提议仅必须网络攻击自身开展网络投票就可以用随后实行。
4、Move里的提议进攻剖析
提议进攻出现于DAO中,运用了DAO的所有新项目都可能会产生提议进攻,跟编程语言不相干。因而,在Move生态中,用了DAO项目更加需要防备提议进攻。
根据Solidity绿色生态中的两大事情,我们不难发现,进行提议攻击一个必需的前提就是为了得到大量选举权。网络攻击能通过借款、闪电贷、代币兑换等得到超出网络投票阀值的治理代币,或者利用行贿别的拥有比较多总数治理代币的消费者来获取网络投票等。
非常容易遭受了提议攻击新项目,其治理代币很容易出现中心化的状况:
(1)根据闪电贷得到超出网络投票阀值的治理代币;
(2)治理代币质优价廉,网络攻击投入少许使用价值就能获得超出网络投票阀值的治理代币;
(3)治理代币都集中在极少数客户,只需极少数客户(例如2个客户)参加就能获得超出网络投票阀值的投票数,网络攻击能够行贿别的用户来获取超出网络投票阀值的投票数。
运用了DAO项目应尽量地防止出现上述情况,要确保仅有大部分参加者网络投票才可以提议,这可以避开提议进攻。
Token的区块链技术整治,即DAO是区块链必不可少的一部分,同时又是区块链新项目及其货币管理方法的发展方向。例如Starcoin,其标准库中自带了DAO模块完成,能通过该控制模块对各类链上主要参数开展网络投票整治。别的各种新项目,如去中心化交易所等,如果采用了DAO来达到货币的整治,则应该考虑怎样避开提议进攻。
About Us
SharkTeam的企业愿景是全方位维护Web3全球的安全性。精英团队由来自全国各地的资深的安全性专业人员高级科学研究人员构成,熟练区块链和智能合约的最底层基础理论,提供专业的智能合约财务审计、链上剖析、应急处置等工作。已经与区块链生态体系每个领域的关键所在参加者,如Polkadot、Moonbeam、polygon、OKC、Huobi Global、imToken、ChainIDE等创建合作关系关联。

Twitter:https://twitter.com/sharkteamorg
Discord:https://discord.gg/jGH9xXCjDZ
Telegram:https://t.me/sharkteamorg
大量区块链安全咨询和分析,点击进入连接查询
D查下|链上风险性审查https://m.chainaegis.com
转载:驼鸟区块链
- 免责声明
- 世链财经作为开放的信息发布平台,所有资讯仅代表作者个人观点,与世链财经无关。如文章、图片、音频或视频出现侵权、违规及其他不当言论,请提供相关材料,发送到:2785592653@qq.com。
- 风险提示:本站所提供的资讯不代表任何投资暗示。投资有风险,入市须谨慎。
- 世链粉丝群:提供最新热点新闻,空投糖果、红包等福利,微信:juu3644。

SharkTeam



