编者按:本文来自数字彗星科技,星球日报经授权发布。针对前段时间EOS漏洞问题,本文将进行整体细节的回顾,希望大家提起安全意识,但也不要过度恐慌,正确看待安全问题。一、事件概述6月22日凌晨,EOS官方社区发布消息称:发现EOS漏洞,用户抵押投票的代币在漏洞修复之前都无法赎回。随后我们根据相关消息对该漏洞进行验证确认该漏洞确实存在,且在漏洞修复前,通过精心构造的攻击使得特定用户资产进行无限期抵押,无法赎回。我们知道EOS采用DPoS共识机制,该机制通过社区投票选举21个超级节点来维护EOS网络,为EOS网络提供算力、带宽以及存储支持。用户投票不需消耗EOS,但EOS会被锁定。用户可以随时申请赎回抵押的EOS,申请赎回后72小时后到账,同时,投票将被扣减。此次漏洞事件发生在EOS赎回过程中,如果其他用户抵押EOS给赎回用户,系统首先将赎回用户赎回过程中的EOS进行再次抵押。我们已经知道申请赎回的EOS需要72小时才能到账,如前所诉,通过精心构造的攻击理论上使得指定用户资产进行无限期抵押,对用户造成严重危害。二、漏洞攻击流程1.假设被攻击用户拥有0.0005个正在赎回途中EOS。
CoW Swap更新攻击细节:黑客利用外部solver耗尽结算合约,协议不受影响:2月7日消息,抗MEV去中心化交易协议CoW Swap更新攻击细节,昨晚一黑客利用了一个外部求解器(solver)并用它来耗尽结算合约,该合约持有7天的协议费用,用户不受影响,Cow Swap也不受影响,因为这个solver的bond将支付所有损失。[2023/2/7 11:52:36]
2.此时攻击者向赎回用户抵押0.0001个EOS。
声音 | 新华社:央行贸金区块链平台与香港平台对接进入技术细节落地阶段:2月5日消息,据新华社4日报道,中国央行相关人士介绍,央行推出的贸易金融区块链平台已经开启国际化拓展进程。去年11月,该平台与香港贸易联动平台有限公司签署了合作备忘录,启动两地贸金平台的互联互通工作,为不同经济体的贸易主体架设数字化贸易融资桥梁,助推“一带一路”经贸往来。目前,两地平台的对接工作已深入到技术细节落地阶段。未来,央行贸金平台将连接更多国家和国际组织的同类平台,形成一个广泛连接的全球贸易融资高速公路。[2020/2/5]
3.交易生效后,我们看到攻击者的余额没有发生变化,而赎回用户正在赎回途中的0.0001个EOS被迫再次进行抵押。
声音 | 长江商学院教授:区块链没有杀手级应用原因在于匿名机制和技术细节:在7月19日举办的2018全球媒体峰会上,长江商学院金融学教授、金融MBA学术主任、美国财务学会会员曹辉宁发表题为《区块链向何处去》的演讲,谈到区块链没有杀手级应用的原因,一是匿名机制使政府对区块链技术有一定限制,另外技术细节方面有问题,信任机制产生大量能耗。
此外他还表示,区块链有两个优势,第一是分布式记账技术让陌生人之间产生信任,第二是通证经济,无通证区块链是死水一滩。[2018/7/19]
三、漏洞原理解析攻击流程图中的攻击命令如下:cleos--wallet-urlhttp://localhost:6666--urlhttp://mainnet.genereos.io:80systemdelegatebw(attacker)(victim)"0.0001EOS""0.0000EOS"--transfer由于攻击者在调用命令时加入了--transfer参数,在调用到抵押函数delegatebw时会调用changbw函数,此时transfer为true
当transfer变量为true时,from地址变成被攻击对象的地址,
接下来被攻击对象的数据被修改,EOS再次抵押,
四、漏洞缓解方案综合以上分析,本文建议修改部分业务逻辑缓解和修复该抵押漏洞。1.transfer参数不管是否为true,都应该直接在抵押发起方余额中扣除;2.梳理相关业务逻辑,审查是否存在类似漏洞。五、漏洞分析总结通过以上分析,通过精心构造的攻击使得特定用户资产进行无限期抵押,无法赎回。利用缓解方案的措施修补代码能够有效缓解和修复该漏洞。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。