据区块链安全公司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类游戏。玩家通过选定下注数字和押大押小来进行一轮游戏。
孙宇晨:去中心化TRC20-USDT利用波场网络,确保没有任何单一实体控制资金流:近日,波场TRON创始人孙宇晨发布推文表示,波场TRON和Tether致力于建设和维护TRC20-USDT作为业内最安全和方便的平台。TRC20-USDT的关键特征之一是去中心化,其通过利用波场网络,确保没有任何单一实体控制资金的流动,从而降低任何潜在攻击或违规的风险。
TRC20-USDT的另一个主要优势是能够处理大量交易,高达100亿,在过去1500天内无停机或延迟。[2023/1/13 11:09:40]
如下图所示,当用户在TronWow游戏页面中参与游戏,无论选择Under模式或Over模式,都被限制了下注数字的范围和胜率。其中
Under模式可下注数字为,Over模式可下注数字为,游戏随机生成数字范围为,Under和Over两种模式的胜率均为,奖励倍数为。
Tether在波场网络增发6000万枚USDT:据DAppTotal稳定币专题页面数据显示:04月29日19时17分,USDT发行方Tether在波场网络增发1笔价值60,000,000美元的TRC20 USDT,块高度为:19298329,交易哈希值为:c1a62abcbe32fe4caebac5628f88787a5b600b13eba79dfed10519a171a9313a。截至目前,Tether在波场网络上的TRC20 USDT总发行量已达963,395,020枚。[2020/4/29]
PeckShield安全人员在深入逆向分析TronWow合约时发现,TronWow合约在检查下注范围时存在缺陷,允许用户在非页面下注时构造恶意输入。换而言之,一旦用户避开游戏页面,直接调用游戏合约的下注函数,即可设法绕过合约中的下注范围检查条件,实现100%胜率以及最高回报倍数。
Tether在波场网络增发1500万枚USDT:据DAppTotal稳定币专题页面数据显示:04月27日14时36分,USDT发行方Tether在波场网络增发1笔价值15,000,000美元的TRC20 USDT,块高度为:19235136,交易哈希值为:27c08fd8fa748a67ea113589feea8616befa978e0393b4c490229185afd7eba0。截至目前,Tether在波场网络上的TRC20 USDT总发行量已达801,395,020枚。请广大投资者警惕行情变动,谨慎应对市场风险。[2020/4/27]
下面以正常下注交易和恶意下注交易对该合约漏洞进行说明。
在TronWow合约代码中,函数placeBet(uint24_betMask,uint256_commit,bytes32_r,bytes32_s)为下注函数,参数uint24_betMask为玩家的下注信息。
波场TRON总账户数突破490万:3月20日,根据TRONSCAN波场区块链浏览器最新数据显示,波场TRON总账户数达到4916308,突破490万。[2020/3/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?
标签:tronRONTROUSDSHIBA TRONtronlink钱包怎么租能量GastroAdvisorwstUSDT价格
写在前面的话:任何事物都有阴阳两极,阳光总是伴随着阴影。行业里面有很多的投机主义者,也不乏价值的坚守者,他们不畏牛熊,不论阳光或阴雨,将赞赏与诽谤一一吞下,一步一个脚印,朝着理想的目标,前进、前进、在前进.
1900/1/1 0:00:00加密服务提供商VirgilSecurity,Inc.发布了一份报告,引起了人们对TelegramPassport安全性的担忧.
1900/1/1 0:00:00今晚7点-8点30分,巴比特创始人长铗与比原链CTO朗豫将现身链节点AMA。面对网友这个提问时:“Bystack的BaaS,相比BAT的BaaS在实际应用上,有哪些优势?”长铗提到了一下2个方面:1、架构上不一样.
1900/1/1 0:00:00昨天的区块生产者投票结果显示,EOS主网依然无法正式上线。BP将会在24小时之后再次组织一场投票。昨天的这场BP投票过后,期待已久的EOS主网依然无法上线。社区计划在安全公司完成审计之后再次进行投票,也就是24小时之后.
1900/1/1 0:00:00尊敬的LBank用户: 在LBank于?2019.5.2016:00-2019.6.1916:00期间举办的期权交易大赛.
1900/1/1 0:00:00老挝人民民主共和国银行警告商业银行、企业和公众不要购买、出售或使用加密货币进行货币交易,因为这种做法是非法的.
1900/1/1 0:00:00