内容简介:上近期最火爆的Dapp应用FOMO 3D 第一轮大奖于北京时间8月22日下午14点48分揭晓。钱包地址尾号为5的获奖者(以下简称5哥)获得了价值2200万元人民币(10,469以太坊)的大奖。
文//DAPDAP区块链
01
黑客拿走大奖
上近期最火爆的Dapp应用FOMO 3D 第一轮大奖于北京时间8月22日下午14点48分揭晓。
钱包地址尾号为5的获奖者(以下简称5哥)获得了价值2200万元人民币(10,469以太坊)的大奖。
而从钱包交易历史来看,该获奖人仅仅付出了6000元人民币左右的成本(2.7个以太坊)。
该玩家于8月15日开始进入游戏,经过6天时间,145笔交易的努力,在数十万的玩家中杀出重围,以小博大,斩获大奖,获得了4000倍的收益。
为何价值北京二环两套房的大奖能被5哥夺走?是命中注定还是暗箱操作?
DapDap的小伙伴们深入调查了中奖事件和5哥钱包相关的交易记录,发现事情果然不是5哥撞大运这么简单。
几乎可以断定是黑客行为。
黑客5哥所做的准备工作,也远比表面看起来的买买买这么简单。
02
真正的高级玩家
接下来,我们层层剥开事件真相。
首先,我们简单介绍一下获得大奖的规则。
规则1:最后一个购买的人获得奖池中的大奖
规则2:每有人购买一个KEY,倒计时时间会增加30秒
规则3:游戏启动后从24小时开始倒计时
也就是说,只要你是最后一个购买KEY的人,就可以捧走北京两套二环房。
当然有人会怀疑团队有暗箱操作的可能。但是由于FOMO 3D 的智能合约全程开源,公开透明,因此可以查到黑客5哥是使用正常的购买功能进行购买的。
所以不存在官方暗箱操作的可能。
相关链接请见文末。
那作为想要获得2200万大奖的玩家,会怎么去做呢?
如果你是小白玩家:
你可能会24小时盯着电脑,每次在倒计时快要结束的时候,花一点钱买一个KEY,然后祈祷后面不要再有人购买。
如果你是 程序员 玩家:
你可能会写一个脚本,设定在倒计时快要结束的时候,自动花一点钱买一个KEY,然后不断重复该过程。
如果你真的这么做了,只能说明你很傻很天真。
因为高达2200万的大奖,只要一旦接近倒计时结束,就一定会有人去购买,甚至已经有上百个脚本会等着购买。
真正的高级玩家是这么做的:
买了KEY之后,以各种手段确保后面没有人能够再买进来。
这也是黑客5哥,拿走大奖的关键原因。
03
中奖的两个手段
如下图所示,从黑客5哥的近期钱包交易记录看,他只是每隔一段时间就会买一个KEY。
所以不少人猜测黑客5哥只是写了个脚本,然后正好赶上了以太坊拥堵,或者游戏热度下降没人关注,然后运气好中了奖而已。
但是如果进一步仔细观察 ,就会发现在黑客5哥购买KEY之后长达3分钟、12个区块的时间里,仅有一人有过一次失败的购买。
除此之外,再无任何人发出过购买的指令。
这和之前每次倒计时3分钟的时候就会大抢一番完全不同,显得异常的冷清。
那么在以太坊上,如何可以做到这一点呢?主要有以下两个途径:
1)和矿主合谋,让矿主在我的交易后,不再打包其他购买KEY的交易;
2)在自己成功购买KEY之后,把以太坊堵塞,让其无法打包其他购买KEY的交易。
04
以太坊工作原理
这里给区块链小白简单科普一下以太坊网络的工作原理。
一般家用计算机每秒都在执行很多程序。但是以太坊可以理解为平均每14秒才执行一次, 专业术语叫做“打包交易”。
负责执行程序(打包交易)的计算机被称为“矿机”,拥有矿机的人叫做矿工或矿主。
这个世界上有上万台以太坊矿机,而由哪台矿机来打包交易,会受到矿机算力和全网算力的影响。争夺打包交易权力的行为被称作“挖矿” 。
出自:ethgasstation.info
由于倒计时一旦低于2分钟后,必然有大量的玩家受大奖刺激入场购买KEY。
所以大奖玩家,必须在倒计时结束前至少两分钟购买KEY,然后和挖到接下来的8-12个区块(14秒一个区块,每分钟4个,2-3分钟8-12个)的矿主协商好,让对方阻止所有要购买KEY的用户,保证自己是最后一个。
但这个做法不但在理论上较难实现,在此次事件的实际操作中,也几乎不可能达成。
如下图所示,从黑客5哥购买KEY直至确定大奖归属之间的12个区块,分别属于Ethermine、SparkPool、pool、BitClubPool、bw等8个不同的矿工。
黑客5哥必须提前和这8个矿主都谈好,然后正好是这8个矿主挖矿成功。
学过概率的同学都可以很快算出来这可能性几乎为零。
分析到这里,我们基本排除了串谋矿池的可能性。
06
异常的交易数据
5哥购买KEY直至中奖的这3分钟、12个区块里的交易笔数异常的低,几乎为平时的1/10不到,而交易费用却数百倍高于平时水平。
这异常的数据让我断定其中必有猫腻,而结合接下来做的一系列数据分析,我们确认:
5哥在自己购买KEY后,使用高额的以太费用和技术手段让以太坊堵塞了3分钟。
进而使得其他玩家无法打包购买KEY的交易,从而获得了最后的大奖。
以下是实锤和步骤解析:
首先,我们把中奖前以太坊12个区块的一共353笔交易全部提取出来。经过各维度分析,我们有了以下发现:
1、交易次数最多的众多账号中,有一个刚刚建立不到4天的未开源合约账户。该账户在短短3分钟时间内,交易了32笔之多。
2、我们进一步深挖发现,该可疑合约账户就是由黑客5哥在差不多3、4天前创建的。
也就是说,5哥购买KEY之后,自己用智能合约向以太坊发送了大量的交易。
到这一步,虽然我们还不确定合约内容到底是什么,但是基本可以断定5哥是在买到KEY之后做了手脚。
具体做了什么手脚,我们还需进一步分析。
3、接着我们统计了在中奖前的12个区块里的GAS消耗。
我们发现5哥所创建的可疑合约账户所耗GAS占据了这段时间GAS消耗的绝大多数。
尤其是在最后的6个区块中,差不多1分半钟的时间里,5哥给出了190到501的天价GAS费用,一举垄断了所有以太坊所有的算力。
其他用户几乎无法在以太坊上执行任何操作。
07
黑客动机
这里简单讲解一下以太坊的原理以及为什么黑客5哥要这么做。
上面我们说过以太坊平均每14秒左右出一个块,该区块中会打包一些交易。而每个区块能够进行的运算量是有限的,一般为800万GAS左右。
超过这个限额的交易,将被延后至后续区块进行交易。
打个比方,以太坊上的每个区块都像一个水桶,用户提交交易请求就像往水桶里倒水,一个桶一旦倒满了水,就无法再处理其他交易请求。
水桶一般会优先处理出价高的交易。
所以5哥在 这里做的事情,就是给他购买KEY之后6191898至6191908那十几个区块中挖到矿的矿机,支付了大量的金钱,让其优先打包5哥所发出的交易。
然后5哥所发出的交易占了过高的资源,把十几个区块几乎都占满了。
其他所有以太坊用户,包括玩FOMO 3D和不玩FOMO 3D的用户,在那3分钟的时间里,都无法和以太坊进行交互。
由于没有玩家可以进来和黑客5哥竞争,5哥成功守到倒计时结束的那一秒。
08
来龙去脉
于是,整个事件的脉络也就基本理清楚了:
1、FOMO 3D倒计时剩下3分钟左右;
2、黑客5哥购买了1个KEY;
3、黑客5哥用其他钱包账号向自己创建的智能合约,发送大量垃圾信息,造成了以太坊拥堵3分钟;
4、3分钟过后,由于无人购买KEY,黑客5哥成功获得大奖。
当然,整个事件当中还有一些有趣的地方和不容易想明白的地方。我们逐一进行讨论:
1、黑客5哥是手动操作的吗?
当然不是,黑客5哥提前写好了脚本以及和脚本配套的智能合约。
在整个过程中,5哥其实写了10来个智能合约,但最终成功使用的还是尾数7801这个智能合约。看来5哥也一直在优化。
2、黑客5哥的成功之路并不十分顺利
黑客5哥在7天前建立了用于赢取大奖的钱包,之后同时在FOMO 3D和 last winner执行了5、6天的脚本,意图争夺最后大奖。
但无奈一直没有成功,还白白损失了不少手续费。
直到1天前,黑客5哥灵机一动,做了一个小的改动,由原来fccbf85主账户购买KEY之后,自行给智能合约发送命令,改为fccbf85主账户只负责购买KEY,由其他若干个账号给合约发送命令。
改动前
改动后
这个改动应该大幅提高了效率,5哥差不多3小时后就迎来了FOMO 3D的大获全胜。
而本次的成功,并不是一次就成的,而是在失败了近千次之后,一次带了一点点运气成分的成功。
3、黑客5哥是谁?
应该是一名区块链领域的职业黑客,我们分析了他的钱包账户往来,但是很遗憾并不能确定最终是谁。
黑客5哥的钱包一共有8个钱包地址向其汇入以太坊。
而这些账户除了5哥自己的账户之外,都是使用了疑似ShapeShift的钱包,而ShapeShift因难以被追踪而被广大区块链黑客喜爱和使用。
同时,黑客5哥在整个过程中,使用了将近20个不同的钱包地址,用于程序运行(跑脚本)。
这些钱包地址基本都无法查到其他来源。
4、赚来的钱去哪了?
分别被存入以下两个钱包:
0xbd321d63a925b439a20ae3260f461c35cbf9b875
0x2c389a86a686ac7ee98ac2606802b5bb4a2186c1
目前暂时还没有转出
5、整个过程中没有人竞争吗?
其实是有的,在5哥买到KEY之后的三分钟时间里,曾经有一位成功的以5000+的GAS 价格挤了进来,尝试购买KEY。
但是非常遗憾的是他所设的GAS上限太低,因此交易报错。 而该名玩家也因此损失了2.1以太坊,约合4000元人民币。
其他时间5哥还是很强势的。
6、交易是被f2pool鱼池打包的,鱼池是否有做手脚的嫌疑?
经过以上讨论,黑客成功的关键要素是堵住购买KEY交易之后的十几个区块。而这些区块和鱼池无关,所以我认为和鱼池无关。
但鱼池的强势出镜,反而让游戏变得更加有趣了起来。
09
少数黑客玩的游戏
Fomo 3D的设计技巧十分高超,我们之前甚至会有种错觉:「这个游戏永远不会结束」
所以在听到游戏结束的时候,我们的第一直觉就是,事情没有那么简单。
于是我们花了一晚上时间,对Fomo 3D的这次大奖进行了深层次的分析,结果种种迹象都证实了我们的猜测,确实是黑客所为。
Fomo 3D的第二轮已经启动,几个小时内,奖池的金额就过了6000以太坊。第二轮的大奖,将会在何时产生,是否还会有黑客行为,大家可以耐心等待和观察。
《GAME启示录》中曾有这样一段话:
真实的世界有太多不可预测的事,而游戏则不然,游戏就是基于规则设计的,虽有局部的随机性,但进度与结果之间的关系是确定的。
有人暴富,就必然有人血本无归。
正如我们所写的,这类资金盘游戏,是「少数黑客玩的游戏」,他们会对以太坊直接发出指令进行交互。
通过游戏页面去玩的,大多数人都是亏损的。
所以永远不要以赌徒心态去玩这类游戏。
因为,当你在凝视深渊时,深渊也在凝视你。
10
其他线索汇总
以下是事件的关键要素汇总:
1、获奖人: 5哥
2、钱包地址:
0xa169df5ed3363cfc4c92ac96c6c5f2a42fccbf85
3、成功购买交易地址:
0x7a06d9f11e650fbb2061b320442e26b4a704e1277547e943d73e5b67eb49c349
4、中奖打款交易地址:
0xe08a519c03cb0aed0e04b33104112d65fa1d3a48cd3aeab65f047b2abce9d508
5、黑客5哥创建可疑合约的交易地址:
https://etherscan.io/tx/0x21ebb34d74aa487f036d5b8b5cf9cbfc7083b9fec3614a312341a3ab01592293
6、购买交易的区块高度: 6191896
7、矿工: f2pool_2 (鱼池)
8、区块信息 :七彩神仙鱼
9、其他参考资料、信息来源:
https://etherscan.io/address/0xa169df5ed3363cfc4c92ac96c6c5f2a42fccbf85
https://etherscan.io/tx/0xe08a519c03cb0aed0e04b33104112d65fa1d3a48cd3aeab65f047b2abce9d508
https://etherscan.io/block/6191896
以上所述就是小编给大家介绍的《Fomo3D,被黑客拿走的2200万》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- 年薪80万不一定当黑客,转型大数据开发【全套教程】拿走吧!
- 2018年度盘点:这一年黑客从区块链口袋里拿走了多少钱?
- 测试大佬私藏的性能测试岗位常见面试题,拿走拿走别客气!
- 30个极简Python代码,拿走即用
- 拿走不谢!2020 潘通色 “经典蓝” 精选配色方案分享
- 如何破解一个 Python 虚拟机壳并拿走 12300 元 ETH
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Iterative Methods for Sparse Linear Systems, Second Edition
Yousef Saad / Society for Industrial and Applied Mathematics / 2003-04-30 / USD 102.00
Tremendous progress has been made in the scientific and engineering disciplines regarding the use of iterative methods for linear systems. The size and complexity of linear and nonlinear systems arisi......一起来看看 《Iterative Methods for Sparse Linear Systems, Second Edition》 这本书的介绍吧!