PeckShield预警“玩家”高回报异常获利
7月27日凌晨3点至上午10点,PeckShield安全盾风控平台DAppShield监测到THeRTT开头的地址在参与MULTI.TODAY合约游戏时,持续获得高回报异常获利,短短数小时内便获利102,652个TRX。
PeckShield安全人员分析发现,该“玩家”采用了一种针对游戏机制的“卡位”回滚投注方式,通过部署脚本合约来参与游戏,利用游戏本身存在的运营机制“不平等”特性,成功实施“卡位”进而获取最大的投资回报率。
这类似于互联网上利用脚本程序恶意刷单,把原本属于普通玩家的收益权限给侵占了。这让人想起,去年Fomo3D火爆时,黑客利用以太坊公链因gas费用机制存在的交易拥堵问题,成功制造阻塞,拿走10,469个ETH奖金的攻击事件。
以太坊NFT FOMO情绪下滑至2021年以来最低水平:金色财经报道,据RoundtableSpace发推表示,“上周买卖以太坊NFT的活跃交易者数量下滑至约49,000人,为2021年以来的最低水平。以太坊NFT底价下跌,加上市场波动加剧,抑制了普通交易员通常的购买紧迫感,即FOMO情绪。”[2023/5/19 15:13:44]
这个“聪明”的玩家,采用了类似Fomo3D式的“特殊方式”,狠狠地薅了MULTI.TODAY游戏一把羊毛。
“wojak”重现江湖
这个“聪明”的玩家究竟是何方神圣呢?
PeckShield安全人员进一步分析发现,THeRTT开头的地址就是此前大名鼎鼎的“wojak”,他曾经攻击过TronBankPro,并因此获利2,673万个TRX。
当时TronBankPro遭攻击的原因是,其合约代码中留有“后门”,而“wojak”则成功地命中了后门,并将合约余额全部取走了。尽管这件事情本身扑朔迷离,是巧合还是背后有阴谋,到现在都没人说得清楚,然而,这倒让“wojak”这一代号名扬四方了。不禁要问,此次“wojak”重现江湖,又会掀起怎样的风浪呢?
美联储威廉姆斯:美联储加息幅度可能超过FOMC的终端利率预期:金色财经报道,美联储威廉姆斯表示,美联储的政策进展顺利。不需要超过6%的联邦基金利率。美联储比欧洲央行更接近结束加息,美联储加息幅度可能超过FOMC的终端利率预期,美国没有陷入衰退,不认为它会陷入衰退。[2022/12/17 21:49:47]
MULTI.TODAY游戏玩法说明
要理清这个问题,我们得先系统了解下MULTI.TODAY游戏。按照官方说明,所有参与投资的玩家会组成一个队列,每次排名队列首位的玩家会获得投资额的11%—41%作为回报,之后该玩家会被移除队列。
只要不断有玩家参与投资,那么先参与游戏的玩家都将获得丰厚回报,同时,为了避免最后一位玩家吃亏,游戏还规定如果持续30分钟没有后续玩家投资,那么最后一位玩家将获得奖池的5%作为回报。
外媒:亚洲散户FOMO或助力了XRP反弹:CoinDesk今日发文称,XRP出现两位数涨幅可能是散户投资者(尤其是亚洲投资者)大胆押注XRP可能追随更广泛的加密货币牛市的结果。也就是说,似乎某些市场参与者没有被监管机构的行动吓到。香港加密货币交易员Simons Chen表示,当比特币和其他加密货币上涨时,由于SEC的消息,XRP的价格走势却相反。对他而言,这意味着“买进”的绝佳机会。根据Nomics的数据,全球主要交易所(尤其是亚洲)也显示出XRP / USDT和XRP / KRW(韩元)的交易量很大。[2021/1/9 15:42:34]
“wojak”的卡位回滚操作技术原理
MULTI.TODAY于每天的22:00GMT3(北京时间凌晨3点)开启新的一轮游戏,只有当游戏正式开始后,玩家的投资才会被认可。由于游戏规则的设定,所有玩家都争抢着第一个参与。
华尔街分析师:山寨币唯一目的是从由FOMO驱动的投资者手中夺走比特币:金色财经报道,Cryptowatch数据显示,基于以太坊的去中心化借贷协议Compound的代币COMP在过去24小时内下跌约40%。对此,华尔街金融分析师、比特币支持者MaxKeizer在推特评论称,山寨币唯一的目的就是从由FOMO(害怕错失的情绪)驱动的投资者手中夺走比特币。[2020/6/23]
通过PeckShieldTRON大数据分析平台,可以看到在北京时间07月27号凌晨3点之前,多个玩家尝试参与游戏,但因为游戏时间还没有开始,交易都被回滚了:
当游戏时间到达后,有多笔交易都被打包进了11315294区块。在这个区块中与该游戏合约有交互的前两笔交易分别为“wojak”发起的Tx1合约交易,以及由普通玩家发起的Tx2交易。
下图2为普通玩家发起的交易,图3为“wojak”发起的合约交易:
分析 | 以太坊gasprice上涨 或造成Fomo3D游戏结束:近日,国外媒体Trustnodes分析指出以太坊gaspirce上升可能跟争夺Fomo3D终极大奖有关。据了解,Fomo3D游戏倒计时也出现异常波动,甚至一度在3分钟左右徘徊,濒临结束。
区块链安全公司PeckShield安全人员进一步分析发现,这是由于MetaMask默认的gasprice值普遍较低导致的。一旦当前以太坊网络的gasprice超过该默认值,基于该默认值的正常交易被打包的可能性降低。如果无法打包的情况一直持续,超过游戏设定的终止时长,就会造成该游戏“意外”结束。[2018/8/8]
“wojak”首先调用TK5HmY地址开头的合约,再由TK5HmY地址开头的合约调用游戏合约完成投资。PeckShield安全人员分析后发现,区别于普通玩家,“wojak”发起的交易可不简单,存在多层调用。
TK5HmY地址开头的合约首先调用MULTI.TODAY智能合约中的startTime(),prizeAmount()等静态方法,以此来判断游戏是否开始,是否已有玩家投资;当确认游戏开始,且尚未有玩家投资后,再多次调用游戏合约的deposit()方法进行投资。虽然游戏合约设置在返利后移除排名队列首位的玩家,但因为该玩家是通过合约来进行多次投资的,可以保证被移除后仍然保持榜首。“wojak”获利的关键是得让这笔合约交易率先被SR节点打包。
在以太坊中,攻击者可以通过提高gasPrice来恶意竞争,让交易被矿工先打包处理,而波场没有类似gasPrice的概念,所有交易是通过SR节点打包产生的。“wojak”事先准备好自动化脚本,在时间到达前通过自动化脚本不断调用合约来完成交易,这会比普通玩家的手速要准确的多。同时,智能合约中的交易都是原子操作的,只要上链,合约可以保证交易中的所有操作按顺序进行,这就大大提高了合约交易率先被SR节点处理的概率。
从链上数据分析看,“wojak”通过合约投资32次,单笔交易就获利近10万个TRX。他确实是一位极度聪明的玩家,当其他玩家还在拼手速时,他已经通过部署合约的方式,制造了不平等特殊权限,获取了丰厚回报。
下图为“wojak”的合约调用流程:
“wojak”除了在MULTI.TODAY每轮游戏开始时争当头名玩家外,PeckShield安全人员还发现,针对游戏第二种类似Fomo3D式的玩法,“wojak”也一直在“守株待兔”。
例如TKjcLB地址开头的账户于07月27号09:13:57发起了一笔投资,在此之后的30分钟内没有玩家参与,直至09:43:57,“wojak”发起了另一笔交易,在最后时刻成功阻拦TKjcLB地址开头的账户获得大奖。跟之前分析类似,“wojak”的这笔交易也是调用游戏合约的stage(),getCurrentCandidateForPrize()等静态方法,获取游戏当前回合数和投资资金,以此判断30分钟内是否有玩家参与。
事件后续
PeckShield安全人员在发现该问题后,第一时间和游戏项目方取得了联系,项目方也及时升级了合约。
需要说明的是,“wojak”并没有攻击MULTI.TODAY合约,MULTI.TODAY游戏本身也不存在相关智能合约的漏洞,“wojak”只是聪明地利用了合约的设定规则,达到了“薅羊毛”获利的目的,不能称其为一次黑客攻击行为。
不过,透过事件本身我们看出,上次TronBankPro事件并非偶然,“wojak”确实是一位不折不扣的“技术牛人”。
写在最后
虽然此次事件并非因漏洞诱发的黑客攻击行为,仅是聪明“玩家”合理利用游戏机制实施的高智商薅羊毛行为,但其暴露的问题却值得我们深思:
1、游戏运营机制设计的缺陷同样会威胁到游戏的参与体验,透支并伤害大部分普通用户对游戏本身的信任;
2、合约玩家对如今DApp生态而言是把双刃剑,合约会帮助黑客以最低的成本,扫荡全网大量DApp,且总能找到疏漏之处,进而下手;
3、游戏项目方应完善自身的风控应急响应机制,一旦监测到异常获利或攻击行为,应立即对游戏实施一键暂停,终止正在进行的攻击行为,必要时可寻求第三方安全公司帮助,进而减少或避免数字资产损失;
4、游戏玩家在参与游戏时,应时刻注意项目官方或者安全公司发出的预警消息,对于已经遭受攻击尚未停止运营的游戏,应避免再次参与,以免遭受更大的数字资产损失。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。