eth又被爆重大破绽,七成节点一度涌现瘫痪风险

https://mmbiz.qpic.cn/mmbiz_png/RSvibeH5nmskuIREWPGOMukMsVnvvV1uU0ZbMIn9Rp2pFiam5YHMsTURuuEkcxkAJBob9Rvw4YhYmBgQJMylSuPQ/640?wx_fmt=png
文  | 比萨 祸不单行。比特币击穿6000美元底线后,以太坊又爆隐患。 今天凌晨,区块链安全公司PeckShield披露了一个安全漏洞:通过发送一个恶意报文,攻击者能向以太坊发动攻击。一旦成功,以太坊2/3的节点将停摆,导致一场地震。 在区块链安全的世界里,安稳难求,步步惊心。 01 “致命报文” 这个漏洞,被命名为:“致命报文”。 它出现在以太坊官方客户端geth上。后者对于以太坊至关重要:有大约70%的节点运行在geth之上,包括交易所和矿池这些关键节点。 通过这个漏洞,攻击者可以直接让以太坊瘫痪。一旦成功,以太坊市场将面临巨震。 PeckShield 向一本区块链揭示了“致命报文”的漏洞细节: 以太坊的核心,在于所有的客户端都必须遵守同样的协议,以保持共识。 这些协议由RLPx、DΞVp2p和其他子协议组成,后者包括以太坊线路协议、轻量级以太坊协议等。 为了支持轻量级的客户端,轻量级以太坊子协议(LES)允许以太坊节点在同步获取区块时,仅下载区块的头部,在需要时再获取区块的其他部分。为了实现这一功能,还需要一个全节点(或archive节点)作为LES服务器,为轻量级节点提供服务。 执行以下命令,可以启动一个支持LES服务的geth全节点: geth --lightserv 20 在向LES服务器请求区块头部时,LES客户端会发起类型为GetBlockHeaders的消息,而LES服务器的消息处理器负责相应的解析工作。GetBlockHeaders的信息处理器的代码片段如下:
https://mmbiz.qpic.cn/mmbiz_jpg/RSvibeH5nmskuIREWPGOMukMsVnvvV1uUN5lsFlWScEKVyjrdfBWjO8rOPZNdWwG83HJ8HfJI1KywrzYDnbJ7uw/640?wx_fmt=jpeg
由LES客户端发送的查询请求遵循如下格式: 从第17行开始,LES服务器处理not reverse分支。在第19行,LES服务器会检测在忽略了query.Skip区块之后,是否还有可用的区块头部。 如果检测通过,GetBlockHashesFromHash()方法就会被调用(即第20行),并返回一个区块头部数组。 然而,对作为输入的请求,LES服务器并未验证其有效性。攻击者可以构造形如query.Skip = -1 (0xFFF...F)这样的恶意请求。 当query.Skip+1被作为待分配数组的最大长度参数,传递至GetBlockHashesFromHash()方法时,长度为0的数组即被分配并返回。 随后,通过索引query.Skip = 0xFFF…F访问该长度为0的数组时,LES服务器就会彻底崩溃。 “在发现漏洞后的第一时间,我们就向以太坊基金会提交了漏洞报告。目前,以太坊geth客户端的开发团队,已发布了相应的补丁。”PeckShield告诉一本区块链。 因此,虽然这次漏洞危害面广,危险性大,但并没有对以太坊造成实际损失。 PeckShield工作人员向一本区块链展示了以太坊官方的回复邮件。
https://mmbiz.qpic.cn/mmbiz_png/RSvibeH5nmskuIREWPGOMukMsVnvvV1uUF8YqDGxlnylOicxzM5bostSnRcmvW444xqHqkQflI1hOqBlgE1c4InA/640?wx_fmt=png
https://mmbiz.qpic.cn/mmbiz_jpg/RSvibeH5nmskuIREWPGOMukMsVnvvV1uUMcttcxZsSXqYcaeKyY4MuRjePdpfjiafc7VeBeicfHOiaUVLiaXO0LHrjQ/640?wx_fmt=jpeg
“这只是一系列漏洞中的一个,我们会随时公布其他漏洞。”PeckShield公司表示。 02 以太坊黑历史 这不是以太坊第一次爆出安全漏洞,也不是最后一次。 在历史上,以太坊曾出现过两次重大漏洞事件。 最著名的一次,是2016年6月的“The DAO大劫案”。它直接导致了以太坊的硬分叉。 The DAO是部署在以太坊网络上的最大众筹项目。黑客发现了其安全漏洞:其智能合约第666行代码的首字母“t”,被误写成了“T”。 区块链历史上最严重的攻击事件,就此发生。 6个小时里,黑客窃取了The DAO 30%的以太币——1200万个。它们当时价值约6000万美元。 这次的攻击还引发了区块链诞生至今最具争议的事情之一。 为将损失降到最小,以太坊团队决定修改以太坊软件的代码,强行把The DAO的所有资金,转到一个特定的退款合约地址,以夺回黑客手中的资产。 因为对此事看法迥异,以太坊分裂成了两条链,一条是以太坊(ETH),一条是以太坊经典(ETC)。它们各自代表不同的社区共识和价值观。
https://mmbiz.qpic.cn/mmbiz_jpg/RSvibeH5nmskuIREWPGOMukMsVnvvV1uU7zN7D84h7vhQiaA6ryHa7176pf1z2KRgqfn3MKGOatlMCBR4mrhU2IA/640?wx_fmt=jpeg
以太坊的另一次重大安全事故,发生在以太坊钱包Parity身上。 2017年7月,Parity被爆出现重大安全漏洞:其多重签名合约wallet.sol存在bug。 官方确认,因为此事,150000ETH(约价值3000万美元)被盗。但通过对比以太坊上的智能合约,一群计算机专家得出结论:这次攻击至少造成了1.54亿美元的损失。这一金额,是The DAO 事件损失的3倍多。 教训惨痛至极。 在区块链世界中,“代码即法律”。但那些存在漏洞的代码,正在成为黑客薅羊毛的得力工具。 03 卖水好生意 目前,全世界的数字货币已经超过2000种,市值超过3300亿美元,这是一个广阔的市场。 人人淘金时,卖水就有市场。安全漏洞频现时,堵漏就成了好生意。 越来越多专注于区块链安全的团队,正在如春后雨笋般出现。知道创宇、慢雾科技、白帽汇、Haloblock.io、PeckShield等公司,都重兵投入区块链安全领域。 “在区块链产业发展初期,安全事件已经频繁暴露在各个环节,包括:交易所、矿池、钱包、智能合约……因此,区块链安全公司在早期区块链生态建设上,起着关键作用。” PeckShield公司工作人员表示。 目前,市场上的区块链安全公司,不仅提供智能合约审计服务,还要提供一整套安全防护解决方案。 可以说,区块链安全服务正逐渐从上面的业务层转向更底层,着力从代码层面解决漏洞问题。 对于区块链市场来说,这是一个健康的现象。
https://mmbiz.qpic.cn/mmbiz_gif/RSvibeH5nmskuIREWPGOMukMsVnvvV1uUeRicZ7O0EwXxXxIpCjgjLm48b6fAlfUjl0iaK6f8FhoWJwhFcVZs8yug/640?wx_fmt=gif
从EOS漏洞到以太坊“致命报文”,底层公链的安全问题,层出不穷。 每一个漏洞,都可能成为黑客手中的定时炸弹。 从The DAO到EOS,智能合约成为了区块链安全的重灾区。 在区块链的狂野世界里,黑客和白帽子的战争,才刚开始。 记者招聘 如果你对区块链领域兴趣浓厚;如果你有超强的好奇心和学习能力;如果你也相信“内容永生”,追求完美的逻辑与文字;欢迎来到这里,和我们一起记录区块链的历史与未来。 坐标北京,简历请投递邮箱:cdx@yibencaijing.com
https://mmbiz.qpic.cn/mmbiz_jpg/RSvibeH5nmskC19icNlflLRD4zibrEjT52aScbCvjKXYJXxeRzHYD9DwvCAGMWxjoYu52tyEDzEomhI8ZJic0JNmCw/640?wx_fmt=jpeg
推荐阅读 点击图片即可阅读 《去哪儿“兵败”携程后,去哪儿联合创始人要借区块链再战携程》 版权声明 本文为【一本区块链】原创稿件,未经授权不得转载,否则将追究法律责任。在获得授权转载后,须在文章标题后注明“文章来源:一本区块链(ID:yibenqkl)”。
https://mmbiz.qpic.cn/mmbiz_png/RSvibeH5nmskuIREWPGOMukMsVnvvV1uUMM1V0rdVazF5U5sf9gtVdDecbIGgJ91n5QqMZ6rBbqd5ybqicBiaLBcg/640?wx_fmt=png

0 个评论

要回复文章请先登录注册