首发 | 卖意外险的保险公司也遭受了意外?Cover Protocol漏洞分析
本文由CertiK安全验证团队撰稿,授权金色财经首发。
最近小区出现了一些流浪狗,听说邻居家有孩子看到狗吓得就跑,结果反而被狗狂追咬了一口。
还好父母机智,给孩子上了个意外险,几针狂犬病疫苗下来没怎么花钱。
作为币民如果加密资产不幸被盗,但项目方或者你个人购买了保险,那么也大可放心让保险公司偿还损失的资产。
可还有最差的一种情况:但是如果连保险公司都出了安全事故,受到攻击了呢?
北京时间12月28日晚, CertiK安全技术团队发现Cover Protocol发生代币无限增发漏洞攻击。
攻击者通过反复对项目智能合约进行质押和取回操作,触发其中包含铸造代币的操作,对Cover代币进行无限增发,导致Cover代币价格崩盘。
主要攻击分为以下步骤:
1. 攻击者设置攻击必要的假代币。
2. 攻击者使用假代币,为Balancer Pool提供流动性:
①总计向Balancer Pool提供了2,573个DAI的流动性
②攻击者通过向Balancer Pool提供流动性,获得了约132,688个Balancer流动性证明代币BPT
3. 攻击者向Cover Protocal中的Blacksmith.sol智能合约质押(stake)前一步中所得的所有Balancer流动性证明代币。
质押时,攻击者调用位于0xe0b94a7bb45dd905c79bb1992c9879f40f1caed5的Blacksmith.sol智能合约中的deposit函数,如图一所示:
图一:The deposit() function in blacksmith.sol
通过调用deposit函数,攻击者将得到的BPT流动性证明质押到cover protocol中。
首先通过图一中118行将当前流动性证明代币的pool数据读取到memory,然后调用121行代码对当前pool的数据进行更新。
图二:blacksmith.sol中的updatePool()函数
如图二第75行所示,在updatePool()函数中修改的当前流动性证明代币的pool数据是一份存储在storage中的数据,与在deposit()中存储在memory中当前流动性证明代币的pool数据是两份数据。
在图二第84行lpTotal的值代表当前合同中总共存入的流动性证明代币数目,由于该变量数值较小,因此通过84行公式pool.accRewardsPerToken的数值将会增大,更新过的accRewardsPerToken值存储在storage中。
图三:blacksmith.sol中的_claimCoverRewards()函数
接下来如图三中318行所示,deposit()通过调用_claimCoverRewards()函数,向函数调用者(msg.sender)铸造一定数目的cover代币。
铸造cover代币的数目与pool.accRewardsPerToken, CAL_MULTIPLIER以及miner.rewardWriteoff三个变量相关。
请注意这里pool.accRewardsPerToken的数值是使用了存放在memory中的pool数据,并非使用图二中update()函数更新之后的数值。
同时,通过图1中deposit函数得知,miner.rewardWriteoff的数值更新是在_claimCoverRewards()函数执行完成之后发生。
因此原本设计上应使用更新过的miner.rewardWriteoff的数值计算需要铸造cover代币的数目,这里错误的使用了未更新过的miner.rewardWriteoff的数据,导致实际铸造cover代币数目比应铸造代币数目增多,最终导致了代币增发。
质押成功之后,攻击者通过调用blacksmith.sol智能合约中的withdraw()函数,将质押的BPT取回,同时取得额外铸造的cover代币,完成攻击。
通过对比执行deposit()函数和执行withdraw()函数之后的代币结余表,我们可以发现通过这一组deposit和withdraw函数调用之后,攻击者可以获得约704个COVER代币。
deposit()之后:
withdraw()之后:
攻击者通过反复执行deposit和withdraw函数,可以使Blacksmith函数无限铸造代币,并将代币转到自己的地址中,由此获利。
攻击发生后,截止发稿时,cover官方已经将blacksmith迁移到安全版本:
有漏洞的blacksmith地址:
临时修复后的blacksmith地址:
0x1d5fab8a0e88020309e52b77b9c8edf63c519a26
临时修复后的blacksmith合同临时禁止了一切质押和取回操作,以此阻止攻击者继续实行攻击。
本次攻击最初攻击者共获利440万美金,约合人民币2900万人民币。
有其他攻击者利用该漏洞发动类似攻击,例如Grap.finance项目官方参与了利用该漏洞的攻击,获利4350个ETH代币。
在攻击发生后几个小时,Grap.finance项目官方通过Twitter声称对本次攻击负责,并表示已将所有的获利退回给了Cover Protocol。
为了确保数字资产不因任何非技术原因遭受损失,项目方应及时为项目产品购买保险,增加项目方和投资者的安全保障方案,确保其因受到攻击所造成的损失可以被及时补偿。
作为世界顶尖的审计公司,CertiK目前已经进行了超过369次安全审计,审计了超过198,000行代码,并保护了价值超过100亿美元的加密资产。
近期,CeritK推出了CertiKShield去中心化资金保障计划。
CertiKShield不仅可以为项目及其社区成员提供保障,同时,CertiK作为主营业务为审计的安全公司,我们确保自己的保险项目拥有更高的安全性。
相比于纯粹的保险公司,安全技术的背书及团队对于安全的重视和一系列的保障,CertiKShield是安全领域内构建的保险,并且有着巨大的成长和发展空间。
本文由CertiK安全验证团队撰稿,授权金色财经首发。
图一:The deposit() function in blacksmith.sol
图二:blacksmith.sol中的updatePool()函数
图三:blacksmith.sol中的_claimCoverRewards()函数
《精灵达人3D》正式首发 Cocos-BCX 主网:据官方消息,近日,由生态合伙人 DAPPX 参与开发的《精灵达人3D》正式首发于游戏公链 Cocos-BCX 主网。《精灵达人3D》是一款以精灵宝可梦为题材的抓宠游戏,游戏美术采用全3D 制作。用户可通过 CocosWallet , DAPPX 或 IMCOCOS 登录 COCOS 主网账号即可体验。截至目前,Cocos-BCX 主网已上线《加密骑士团》《恶龙必须死》《XPEX怪兽世界》《Go Block》《可可夺币》《熊猫运动会》等多款玩法多样的趣味性链游,游戏公链生态在逐步壮大和完善。[2020/8/20]
首发 | 区块链技术及软件安全实战基地正式成立:金色财经报道,今日,中软协区块链分会、人民大学、菏泽市局相关部门联合共建的区块链技术及软件安全实战基地正式成立。同时聘任中软协区块链分会副秘书长宋爱陆为区块链技术及软件安全实战基地特别专家。 \n区块链技术及软件安全实战基地主要涉及领域为:非法数字货币交易与、区块链与电信、网络、四方支付、冒用商标注册等,联合社会治理、城市安全、前沿技术领域的行业专家,进行警协合作。 \n据公开报道,近期菏泽市下属机关刚破获一起特大电信网络案,打掉多个涉嫌以网贷和投资“比特币”为名的团伙,抓获犯罪嫌疑人83名,扣押冻结涉案资金2700万元。[2020/7/21]
首发 | 百度推动246家博物馆线上藏品上链:金色财经讯,近日,百度超级链联合百度百科,基于区块链技术创建 “文博艺术链”,推动百科博物馆计划中的246家博物馆线上藏品上链。基于“文博艺术链”,百度将与博物馆共同推动线上藏品版权的确权与维护,同时探索线上藏品版权数字化交易方式,为合作的博物馆提供更全面的服务和更多的权益。据介绍,此项目将分阶段进行,一期将完成线上藏品的入链确权,为每一件藏品生产专属的版权存证证书。让每一名用户可以在百度百科博物馆计划的PC端和WAP端的藏品页查看证书。后续,百度还将推动AI与区块链技术在文博领域的结合应用,用来保障上链数据与藏品相匹配,为后续进行藏品图像版权数字化交易奠定基础。[2019/1/30]
标签:
区块链热门资讯
原标题:盘点:2020年加密货币领域的黑客攻击、漏洞攻击和盗窃事件 与前几年不同的是,2020年的主要加密货币新闻并不是大型交易所遭遇黑客攻击和价值数百万美元的比特币遭遇盗窃。然而,仍然有相当多的黑客事件发生,其中大部分都起源于新兴的去中心化金融(DeFi)领域。
2020/12/29 9:24:47美国的加密数字金融在2020年第4个季度出现了快速的发展。这方面最有代表性的趋势是美国机构对比特币的大幅买入。同样在12月,Diem协会宣布,它已经向瑞士FINMA提出了申请,现在正在等待FINMA的批准决定。最早在2021年1月就有可能率先发行基于美元的Diem稳定币。
2020/12/29 9:08:37每逢牛市来临,加密市场上中的参与者们都会无法控制自己预测比特币价格的冲动,然而在这些人中,有些人略显保守,有些人则过于激进,惨遭打脸,真正能准确比特币价格走势的仍然只是少数。 神预测一:比特币年底将达2万美元 1月,加密支付公司BitPay CCO Sonny Singh认为,2020年将会发生 “黑天鹅”事件推动比特币的价格涨至2万美元。
2020/12/29 9:08:33头条 ▌美OCC代理署长:担心国会取消亲加密货币法规 美国货币监理署(OCC)代理署长Brian Brooks表示,他担心国会议员正在敦促即将上任的拜登政府以的名义取消亲加密货币的法规。Brooks警告说,国会山可能会废除OCC在规范加密行业方面取得的一些进展。
2020/12/29 7:53:43前几天,比特币突破历史新高时,财经网的微博账号发起了一次投票,有趣的是虽然比特币破了历史新高,但是仍然有过半的人认为比特币是局。作为数字货币龙头、知名度最高的比特币尚且如此,其他一众山寨币就无需多言了。 民众之所以会对数字货币产生这样的观点,除了对区块链思想和核心价值的不认同,也有对于数字货币价格巨大波动的忌惮。
2020/12/28 22:25:27就在12 月 3 日,YFI 创始人 Andre Cronje还 在博客发表了名为《了解 Cover Protocol》(Understanding Cover Protocol)的文章。简单的介绍了 Cover 协议中三种重要的核心角色和其参与方式。
2020/12/28 22:14:34