菠菜类DAPP已成黑客提款机?元凶竟然是它!

栏目: 编程工具 · 发布时间: 5年前

内容简介:区块链,一直以透明、开源而闻名,也因此成为近两年最受人关注的技术。有数据显示,从2009年比特币的源代码公开后,平均每年有8600多个区块链项目加入GitHub,开发者们的DAPP代码开始大批量涌入。被誉为明星项目的EOS,自从主网上线以来,就一直致力于DAPP生态建设,虽然在DappRadar上,EOS的DAPP数量远不如以太坊的链上DAPP数量,但它的高扩展性被开发者们所认可,DAPP的数量和日活也在逐渐增加。

区块链,一直以透明、开源而闻名,也因此成为近两年最受人关注的技术。有数据显示,从2009年比特币的源代码公开后,平均每年有8600多个区块链项目加入GitHub,开发者们的DAPP代码开始大批量涌入。

被誉为明星项目的EOS,自从主网上线以来,就一直致力于DAPP生态建设,虽然在DappRadar上,EOS的DAPP数量远不如以太坊的链上DAPP数量,但它的高扩展性被开发者们所认可,DAPP的数量和日活也在逐渐增加。

菠菜类DAPP已成黑客提款机?元凶竟然是它!

但天下无不bug的程序,开源让项目更透明,也给了技术高超的黑客以可乘之机。

就在昨天,知名DAPP EOSDice被黑,造成了4633个EOS的损失。而仅在6天前,EOSDice就已经被黑掉过2545个EOS。

这已经是EOS DAPP本月第三次遭到黑客攻击了。这一次的攻击者是之前攻击FFGame DAPP的黑客,攻击手法也是由于使用了可控的随机数种子。

上一次EOS合约竞猜类游戏FFGame被攻击之后,慢雾安全团队经过技术复盘推测了整个攻击过程:

攻击者是通过部署攻击智能合约,并且在合约中使用与FFGame相同算法计算随机数,产生随机数后立即在inline_action中使用随机数攻击合约,导致中奖结果被“预测”到,从而达到超高中奖率。

根据攻击复盘,慢雾预警了该攻击手法,并告诫开发者: 不要引入可控或可预测随机数种子 ,任何侥幸都不应该存在。

果不其然,这一次黑客使用了相同的攻击手法,再次尝到了甜头,也给了开发者们警醒的一击。

那么,这个“可控的随机数种子”究竟是个啥?

我们都知道,随机数是区块链上运行智能合约的一个关键数值。用 程序员 的思维来看,只要你告诉我初始状态,我可以根据你每次给的输入,预测出它的输出。

这里我们不用了解太多技术层,我们只需要知道, 假如想让随机数是不可预测的,那就必须保证随机种子是不可预测的。

那么这个随机数种子就需要从外界输入。简单打个比方,它可以是某个商品的销量,也可以是计算机的系统时间。

但这些数据太过于简单,非常容易被黑客预测到并加以使用,从而大幅提升自己在菠菜游戏里的中奖率,拿走奖金池里的奖金。

因此找到一个优良的、不易被控制的随机数种子,是现在所有菠菜类DAPP面临的难题。

据DappRadar数据显示,EOS上有118个DAPP,其中菠菜游戏类有60多个,几乎占比了一半!一位资深DAPP开发者表示:“目前来看, 区块链第一应用就是赌博 ,其他应用,暂时还火不起来。”

因此对于菠菜游戏来说,智能合约是命脉,是灵魂,任何漏洞都有可能让资金池中的资金被席卷一空。

目前菠菜类游戏的智能合约所参考的随机数比较局限,可作为随机种子使用的公开数据仍然比较少,且大部分都有可能被猜出来,因此暂时无法实现真正的随机。

曾经有人提出用“EOS RAM的交易数据”或者“某活跃DAPP的公开数据”作为随机数,但是被社区中的开发者给否定掉了。原因是这些变化无穷的公开数据依然存在着很大问题,并不能直接被使用——

1、过于依赖其他方数据,必须保证智能合约跟着别人的数据格式同步更新;

2、变化频次时高时低,无法保证不间断的不可预测性。

从近半年的新闻中可以得知,EOS DAPP的安全事件频发。目前被报道的已经有FFGame、DEOSBET、EOS Happy Slot、FairDice、EOSDice,以及损失最为惨重的EOSBet。

我们会发现, EOS DAPP遭受攻击的概率比以太坊DAPP高得多 。这不外乎是以太坊DAPP开发模式已经趋向于成熟,内部安全性较为完整,复杂逻辑较少,因此漏洞范围更低。

还有一个原因是,目前EOS的开发人员并不多,成熟的开发者就更少了。很多情况下,一个DAPP可能背后只有1-2个程序员,甚至连完整的测试人员都不存在。在这种情况下,漏洞出现的可能性就非常大,也更可能被攻击。

多次的黑客攻击和大额损失都证明了,EOS DAPP现在还是个宝宝,不足以说是一个具有完善保护机制的成熟应用链。

当然, 这也是EOS DAPP发展壮大必须经历的过程 。提升其内部安全性,任重而道远。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

深入理解 Flask

深入理解 Flask

[美]Jack Stouffer / 苏丹 / 电子工业出版社 / 2016-7-1 / 79.00

Flask 是一种具有平缓学习曲线和庞大社区支持的微框架,利用它可以构建大规模的web应用。学习上手Flask非常轻松,但要深入理解却并不容易。 本书从一个简单的Flask应用开始,通过解决若干实战中的问题,对一系列进阶的话题进行了探讨。书中使用MVC(模型-视图-控制器)架构对示例应用进行了转化重构,以演示如何正确地组织应用代码结构。有了可扩展性强的应用结构之后,接下来的章节使用Flask......一起来看看 《深入理解 Flask》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具