波场 DApp 再遭手!游戏 TronWow 变提款机,Peckshield 深度讲解黑客手法

据区块链安全公司PeckShield安全盾风控平台DAppShield监测消息,4月10日23点02分,黑客向波场竞猜类游戏TronWow发起攻击1,203次,共计获利2,167,377个TRX。PeckShield安全人员当即展开分析发现,黑客每投注20TRX,即可获得1,940个TRX作为回报,回报率高达97倍。最终,通过此次攻击,黑客共计投注23,004个TRX,获利2,167,377个TRX。

此后,PeckShield安全人员进一步深入分析发现,TronWow合约在检查下注范围时存在缺陷,允许用户在非页面下注时构造恶意输入,从而实现稳赢的游戏结果。

原文标题:《TronWow遭攻击详解:黑客能稳赢且回报率高达97倍》

攻击细节:

TronWow是一个典型的dice类游戏。玩家通过选定下注数字和押大押小来进行一轮游戏。

波场TRON用户数突破8400万:2022年3月30日,TRONSCAN最新数据显示,波场TRON账户总数达到84,086,755,正式突破8400万。波场TRON各项数据稳中前进,波场TRON生态逐渐强大的同时,也将迎来更多交易量。[2022/3/30 14:26:48]

如下图所示,当用户在TronWow游戏页面中参与游戏,无论选择Under模式或Over模式,都被限制了下注数字的范围和胜率。其中

Under模式可下注数字为,Over模式可下注数字为,游戏随机生成数字范围为,Under和Over两种模式的胜率均为,奖励倍数为。

PeckShield安全人员在深入逆向分析TronWow合约时发现,TronWow合约在检查下注范围时存在缺陷,允许用户在非页面下注时构造恶意输入。换而言之,一旦用户避开游戏页面,直接调用游戏合约的下注函数,即可设法绕过合约中的下注范围检查条件,实现100%胜率以及最高回报倍数。

JUST与JustStable、JustLink等波场TRON生态去中心化网络应用达成战略合作:据官方消息,JUST基金会发布公告表示,波场TRON网络首个DeFi项目JUST携手JustStable、JustLink、JustLend、JustSwap、跨链资产BTCTRON、跨链资产ETHTRON?众多知名波场TRON生态去中心化网络应用达成战略合作。在未来,由JUST带领的众多DApp将继续迭代优化,整合资源优势,共同促进波场TRON繁荣生态发展,为用户提供更加便利、更透明的数字资产金融服务。

?JUST是在波场TRON上运行的第一个DeFi项目,旨在打造基于波场TRON的稳定币借贷平台,JUST平台币JST已于香港时间2020年5月5日22:00,以0.00202?USD的发售价完成全球发售,用时4分26秒全部售罄。[2021/2/3 18:49:19]

下面以正常下注交易和恶意下注交易对该合约漏洞进行说明。

CoinBene满币将支持基于波场链发行的BTC的充提:据最新消息,CoinBene满币将支持基于波场链发行的BTC(TRC20-BTC)的充值及提现。据悉,TRC20-BTC 由 JUST 基金会发行,是继发行量突破 40 亿美元的 TRC20-USDT 之后,波场(TRON)网络资产的又一力作。任何 BTC 持有者都可以参与 TRC20-BTC 的发行,目前 P 网(Poloniex)已支持 TRC20-BTC 兑换。TRC20-BTC合约已由第三方代码审计公司慢雾科技进行审计。[2020/10/23]

在TronWow合约代码中,函数placeBet(uint24_betMask,uint256_commit,bytes32_r,bytes32_s)为下注函数,参数uint24_betMask为玩家的下注信息。

基于波场主网开发的预言机项目AlphaLink登顶JustSwap交易量榜首:据最新消息,基于波场主网开发的预言机项目AlphaLink(ANK)昨天上线JustSwap平台不到3小时,ANK-TRX交易对交易量达到2,614,843美金,登顶JustSwap平台交易量榜首,截止目前ANK-TRX交易对的交易量达到3,389,769美金,项目交易量及流动性均排JustSwap第一。据悉,AlphaLink(ANK)作为JustSwap上首批白名单项目在上线JustSwap不到16小时后,被加密货币信息门户网站CoinMarketCap(简称CMC)收录。[2020/8/20]

其中正常下注交易调用placeBet函数时输入如下:

这是一个选择了Under模式且下注数字为95的正常交易,换而言之,当游戏生成的随机数小于等于95时玩家获胜。

在此交易中,参数_betMask的值24321转换成十六进制为0x005F01,我们将其分拆为三个字节,分别如下:

其中:

0x00为十进制0;0x5F为十进制95;0x01为十进制1.其中第一部分0x00表示若当该轮游戏产生的随机数计算结果处于之间,则玩家获胜;相反,前两位不为0x00时表示若该轮游戏产生的随机数计算结果处于之外,则玩家获胜。

在逆向过程中,我们将下注函数的部分汇编指令还原成伪代码,如下图所示:

阅读上述下注函数伪代码可以发现,合约只对玩家下注信息中的胜率百分数进行了检查,要求其小于等于95,却未对下注数字做数值限制。故玩家可通过构造下注数字来绕过该检查。

下图为攻击者发起的诸多攻击交易之一:

其中_betMask参数被构造为130971,十六进制为0x01FF9B。其中前两位0x01表示若该轮游戏产生的随机数计算结果处于之外,则玩家获胜。而0x9B、0xFF对应的十进制分别为155、255,则根据合约撰写的胜率百分比计算规则,winRate=100-(0xFF-0x9B)1,即等于1,从而成功绕过下注范围检查函数,并将本次交易的奖励倍数设置为97。需要特别强调的是,在页面下注中,奖励倍数最高仅为48.5倍。

接着,我们将开奖函数settleBet(uint256_reveal,bytes32_txHash)的判断游戏输赢部分汇编指令还原成伪代码:

其中rollResult为本轮游戏的随机数计算结果,取值范围为。而在攻击者设置的恶意参数中,rollResult必然处于区间之外,满足赢得本轮游戏的条件,从而确保了攻击者游戏结果稳赢。

总结:

对于TronWow合约被攻击事件,PeckShield安全人员分析发现:TronWow合约在检查下注范围时存在缺陷,允许用户在非页面下注时构造恶意输入,实现100%胜率。需要注意的是,该漏洞已在TronWow上线的新版本合约中被修复,游戏方增添了对下注范围的约束检查。

在此,PeckShield安全人员提醒广大项目方及交易所应当重视区块链世界中的任何安全问题,确保项目方及用户的资产安全可靠。安全无小事,采取不公布源代码来抵御黑客攻击的行为,在黑客面前形同虚设。DApp开发者应杜绝侥幸心理,在合约上线前做好必要的安全措施和已知攻击特征检查,必要时可联系第三方安全公司进行漏洞排查,避免造成不必要的数字资产损失。

来源链接:mp.weixin.qq.com

本文来源于非小号媒体平台:

PeckShield

现已在非小号资讯平台发布1篇作品,

非小号开放平台欢迎币圈作者入驻

入驻指南:

/apply_guide/

本文网址:

/news/3627185.html

波场游戏链游TRX

免责声明:

1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险

2.本文版权归属原作所有,仅代表作者本人观点,不代表非小号的观点或立场

上一篇:

因高端勒索软件感染增加,Q1加密货币勒索金额几为上季度一倍

下一篇:

PeckShield深入代码层面分析,黑客究竟如何盗走1.7亿BTT?

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

银河链

Luna有几类币 显然不应长期持有

狂人说 随着币圈的蓬勃发展,无论是交易所、项目方还是媒体都在迅速增长,即便熊市的行情下仍然如此,在17年牛市时很多创业公司现在都已经找不到了,要么是跑路了,要么是没有赚钱能力消失了,在熊市里能够坚持的才有希望看到牛市的曙光.

[0:0ms0-1:333ms