首页 > 区块链Blockchain > 正文

以太坊、EOS频爆漏洞,区块链安全如何解决?丨大文观链

链得得 2018-05-30 20:30

  EOS又爆出重大安全漏洞,与智能合约无关,且官方尚未完全修复。

  昨天(5月29)中午,360安全卫士官方微博发布消息称, 360公司Vulcan(伏尔甘)团队发现了区块链平台EOS的一系列高危安全漏洞。经验证,其中部分漏洞可以在EOS节点上远程执行任意代码,即可以通过远程攻击,直接控制和接管EOS上运行的所有节点。

  周鸿祎随后在微博表示,360从年初开始,已经在区块链安全方面做了很多研究,已经做了几个区块链安全解决方案,也包括EOS超级节点安全解决方案。

  近几个月以来,市场上的公有链项目和虚拟币集中爆发出了一批漏洞,最严重的BEC被直接“归零”,其他遭受严重损失的项目还包括SMT等其他一大批沿用ERC20体系的项目。

  实际上,在该漏洞被曝光之后,业界还发现了以太坊上多达十几个其他合约也使用了transferProxy这个引起BatchOverFlow 漏洞的函数,该漏洞让攻击者可以通过数据溢出的手段,根据需要创建天量代币,从而将整个代币系统击溃。

  这次攻击发生在上个月,而就在上周,EDU和BAI也遭遇了黑客攻击。在EDU的智能合约中transferFrom 函数内,未校验 allowed[_from][msg.sender] >= _value 并且函数内 allowed[_from][msg.sender] -= _value; 没有使用 SafeMath,导致无法抛出异常并回滚交易,且由于合约没有 Pause 设计,无法及时止损。黑客利用该漏洞获得了30亿token并成功转手。BAI则表示受到了类似的攻击,而且这个问题可能依然会影响到所有ERC20项目。

  这已经不是以太坊智能合约第一次出问题了,2016年,the DAO事件中,黑客利用the DAO智能合约中的漏洞,大规模盗取原the DAO智能合约中的以太币,对以太坊造成了巨大的打击。

  这几次攻击事件让整个以太坊和ERC20体系遭遇了前所未有的重大打击。由于所有的漏洞都集中在智能合约上,智能合约又是区块链技术能否进入商业应用(或被称为区块链3.0)阶段的关键,以太坊和ERC20币价也在几天内呈现出下跌的趋势。

  智能合约频频出现问题的原因很多,但主要可以归结为几点:

  首先,智能合约是不可逆的,这意味着一旦智能合约被部署,基金会就无法升级或修改它们。因此在部署和使用智能合约之前,需要保证一切都不会出错。

  其次,智能合约是可公开访问的,存储在智能合约里的内容对任何人可见,而且每个人都可以调用智能合约里的方法,这也让智能合约成为了区块链鸡蛋上的缝。

  另外,只有上帝写的代码才没有bug。无论多么小心谨慎,让智能合约真正无懈可击几乎是不可能的。

  最后,在以太坊和ERC20体系中,由于EVM本身的特性,智能合约往往会缺乏形式化验证。这也让智能合约的安全性受到了更大的挑战。

  在外界纷纷猜测EOS是否出现了和ERC20类似的漏洞时,今天晚些时候,360更新了其技术博客,发布了该漏洞的具体细节。根据技术博客的内容,5月11日360就发现了这个漏洞,并在5月28日将漏洞报告给了EOS。29日,EOS修复了该漏洞,但根据反馈,目前修复了64位,32位仍未修复。

  在博客中,360表示,这是一个std::vector函数溢出导致的漏洞。在libraries / chain / webassembly / binaryen.cpp(第78行)中,函数binaryen_runtime :: instantiate_module:

  在POC中,只需设置| offset | 字段设置为0xffffffff,函数就会溢出并崩溃。攻击者可以利用此漏洞在nodeos进程中实现远程代码执行,方法是将恶意合约上传到受害节点,并让节点解析恶意合约。

  在攻击中,攻击者首先会向EOS主网络发布恶意合约。EOS超级节点解析恶意合约,然后触发漏洞,攻击者即可控制解析合同的EOS超级节点。攻击者可以窃取超级节点的私钥并控制打包的内容。更重要的是,攻击者可以将恶意合约打包成一个区块并发布,最终导致整个网络中的所有节点都受到攻击者的控制。

  TASChain创始人吴轶群告诉链得得,“这是小毛病,但会造成大问题。这种问题修复起来很简单,但造成的后果可能非常严重。”

  量子链创始人帅初在朋友圈表示,此次漏洞应该和webassembly新的虚拟机和无gas模型有关,远程代码被vm编译后,被无限执行。他认为,该漏洞在支持虚拟机的合约平台上容易发生,智能合约无限的灵活性也留下了无限的隐患。任何一个小的共识协议的疏忽,都会有机会ddos整个区块链网络。而此次漏洞的根本原因是“ETH和EOS,都不是面向货币的设计,面向区块链平台的设计,复杂度很高,也蕴含更多安全隐患。之前unlimited btc,也是因为一个共识bug,网络就会被ddos瘫痪。”

  快的创始人、泛城投资创始人陈伟星则在朋友圈炮轰EOS,称“EOS堪称区块链毒瘤,毫无理想主义的极致炒作圈钱者,区块链共识的最大破坏者”、“一个花几千万人民币就能搞定的技术真的有必要让大家炒的那么欢?”他还列举了EOS的四宗罪:

  1.募集近30亿美元,完全不知去向;

  2.ico一年365天,不知投向与目的;

  3.dpos过度中心化,技术漏洞百出与过度包装;

  4.绝大部分炒币与所谓超级节点来自国内,而超级节点本质是一群利益共同体的炒作;

本文首发链得得App,作者丨大文

  本次漏洞事件EOS官方还没有将漏洞完全修复,360则表示手里还有不少EOS的漏洞。EOS会如何度过这次危机?我们拭目以待。()

一区一块链世界,春风得得为谁来!

阅读更多

上一篇:区块链白皮书代写调查:代写费几千元至5万元不等

下一篇:探寻区块链如何改变生活 | 央视《对话》

您可能喜欢:

关于我们联系我们作者投稿
Copyright © 2013 比特巴手机版
币圈人都爱上的网站,新闻行情教程人物测评资讯大全