04月11日凌晨00:17,PeckShield态势感知平台监测到TCX1Cay…开头的黑客,创建了名为BTTx,tokenid为1002278的TRC10token,并于凌晨00:25至01:00之间向多个地址转入4,000万个BTTx代币,这多个地址对TXHFhq…开头的BTTBank理财类合约实施攻击。
原文标题:《波场假币攻击全过程:BTTBank理财合约遭黑客假BTT攻击》
BTTBank项目介绍
BTTBank又名TronBankBTT,是属于TronBank旗下的一款专属于BitTorrent(BTT)-ThetokenthatwillenableblockchainmassadoptionBTTtoken的投资产品,根据官网TronBank介绍:
TronBankBTT的智能合约将为您产生每天3.6-6.6%的投资收益(取决于你购买的产品计划),自动发放到你的收益余额中。举例,购买4.6%收益计划,21天你即可获得超过100%收益。收益每秒都会计算,你甚至每秒都可以提取收益或重新投资。当您重新投资收益时,投资金额会增加,可以更快的获得更多收益。
消费金融应用Telda完成2000万美元种子轮融资:10月12日消息,消费金融应用Telda宣布完成2000万美元种子轮融资,Global Founders Capital (GFC)、红杉资本和Jack Dorsey的加密公司Block(原 Square)参投。据悉,Telda已经获得了埃及中央银行 (CBE) 的许可,将以数字形式发行银行卡并提供客户服务。(TechCrunch)[2022/10/12 10:32:44]
其产品界面如下:
其理财过程大致如下:
1、用户根据收益率和投资期限购买相应的理财产品;2、投资期限到期之后,用户提现理财产品到自己的钱包。
使用上,和当前的各类P2P理财产品类似,用户的使用门槛仅在于一个TRON钱包,但从产品收益率来看,这个资产回报率还是相当可观的。
攻击回溯
攻击事件简述
去年年底,波场孙宇晨发起12号提议,即符合波场TRC10规范的Nativetoken的名字将不再唯一,涉及到TRC10token的转账等操作将使用ID来代替。这使得波场创建token的流程变得简单易上手,然而却带来一个潜在的威胁,一旦合约疏于检查tokenid的匹配性,就会存在假币攻击的可能。简而言之,本次BTTBank遭受攻击正是因为缺乏tokenid的一致性验证造成的。
ETH跌破3200美元,为去年10月1日以来首次:行情显示,以太坊下破3200美元,为去年10月1日以来首次,日内跌6.12%。[2022/1/7 8:31:44]
背景知识
TRON中的token分为几种规范:
TRXTRC20TRC10其中,TRX为TRON的平台币,类似于Ethereum中的ETH。
而TRC20是与EthereumERC20兼容的token,实质是一种可编程的智能合约,由用户通过智能合约创建token之后,其token的转账、发送等操作均在智能合约内部完成,对于一般的小白用户来说,ERC20/TRC20使用过于复杂,不便于上手使用。
故此,TRON中引入了TRC10token,这是一种可以由用户直接操控的token,每一个自然用户支付1024TRX便可创建一个TRC10token,同时一个用户只能创建一个TRC10token。每一个TRC10token在创建之后,由系统分配一个唯一ID,这是一个从1,000,001开始往后自增的整数,一个tokenId标识一个唯一的token,当前TRON平台上共有1850个TRC10。
LTC大涨27%接近200美元:LTC今早9时开始发力上涨,连创日内新高,火币Pro现价198.35美元,涨幅27.18%,LTC上次达到这一价位还是在1月29日。LTC今早曾宣布将于2月26日上线Litepay接入LTC支付,而莱特币社区成员则称LitePay将是莱特币版的PayPal。[2018/2/14]
为了提高TRC10的流动性和使用价值,TRON平台在Odyssey3.2版本之后,使能了在智能合约内部转账TRC10token的功能,参考TRC10TransferinSmartContracts,其示例代码如下所示:
上述代码简单解释如下:
1、transferTokenTest()接口内部用于转账TRC10token,接口调用方可以通过address.transferToken(uint256tokenValue,trcTokentokenId)往address转账数量为tokenValue的tokenid为tokenid的TRC10token;2、msgTokenValueAndTokenIdTest()接口表明,调用者可以直接在发送的message中加入tokenid和tokenvalue字段,这也说明了TRC10是TRON平台上的一等公民,属于内置类型,与TRC20通过函数参数的形式来表征token价值是完全不同的;3、getTokenBalanceTest()通过tokenid获取账号的余额。
Animoca Brands将在秘密开发的BAYC项目中引入ApeCoin:3月17日消息,Animoca Brands在社交媒体上宣布,将在秘密开发的BAYC项目中引入ApeCoin。
此前,BAYC公布了与Animoca Brands合作的项目页面,该页面目前已支持KYC认证注册。双方并未透露合作项目的具体内容,但BAYC曾表示并非P2E游戏或Token发布。[2022/3/17 14:02:27]
由此可知,TRC10token可以在智能合约内部通过tokenid完成转账,TRC10token作为价值承载者,在智能合约内部即反映在tokenid的差异上。
因此,合约开发者在处理TRC10转账相关逻辑时,需要特别注意tokenId的有效性和真实性。
攻击事件
PeckShield安全人员在分析BTTBank合约时,发现其合约源码实现中存在致命漏洞,可导致项目方资金受损。
下图为黑客攻击的原过程:
动态 | PeckShield 安全播报: “假EOS”攻击再出现 又一EOS竞猜类游戏遭黑客攻击:据 PeckShield 态势感知平台11月21日数据显示:今天15:43 - 18:31之间,黑客(kuybupeykieh)向EOS竞猜游戏合约(vegasgame111)发起攻击,共计获利数百个EOS,追踪链上数据发现,为了防止资金流向被追踪,该黑客采用多达几十次的创建子账号操作来顺序转移所获资产。PeckShield 安全人员分析发现,该黑客利用的是“假EOS”漏洞实施攻击,这一漏洞在10月份较为普遍,不过随着多数开发者合约开发趋于规范,类似攻击事件已经很少。一些较小规模的游戏还可能还存在类似漏洞,PeckShield在此提醒广大游戏开发者和游戏玩家,警惕安全风险。[2018/11/21]
1、黑客先行创建一个名为BTTx的TRC10token;2、黑客往一批自己控制的账号中转入4,000万个BTTxtoken;3、通过控制的账号往BTTBank合约发起数次攻击;4、最后顺序将BTT提取到控制的账号中。
下文从BTTBank投资及赎回的过程还原本次BTT假币攻击的全过程。
投资
投资的核心代码如下:
public接口的invest()提取msg.tokenvalue,并调用private的invest()函数完成投资的过程,invest()内部计算并保存用户这一次的投资数量、时间等信息到合约的内部资产账单上。值得注意的是,这里invest()只提取了msg.tokenvalue,这里并没有提取msg.tokenid,也没有验证msg.tokenid是否属于BTTToken的tokenid(为1002000)。
前面我们提到BTTBank是一款投资理财类DApp,用户存入BTTtoken,资产到期之后,再赎回投资的BTT和对应的利息,在这里并没有检查是否是真正的BTT,也就是不论你投资的阿猫阿狗币,都被认为是BTTtoken。
提现
提现的核心代码如下:
赎回的过程比较简单,先从合约的内部投资账单上计算用户已经到期的投资金额,并将这一部分投资金额转回给用户,注意:msg.sender.transferToken(withdrawalAmount,BTT_ID)中是固定的BTT_ID即1002000.
至此,用户投入BTT,收获BTT;而黑客投入BTTx,收获BTT,一个完美的『狸猫换太子』过程。
防御策略
PeckShield安全人员在此提醒广大开发者,虽然TRC10/TRC20都是token,但两者在TRON平台上有着本质的差异性,若要在智能合约内部转账TRC10,一定要检查所转移的TRC10对应的tokenid是否为预期值。针对上例,可将投资代码增强如下:
另外,PeckShield安全人员根据上述的代码样式分析TRON平台上其它类BTTBank合约时,也发现了相似的问题。在此,PeckShield安全人员提醒在进行智能合约开发的时候,虽然复用现有代码可能会带来开发功能上面的便利,但也须注意可能带来的安全风险。
来源链接:mp.weixin.qq.com
本文来源于非小号媒体平台:
PeckShield
现已在非小号资讯平台发布1篇作品,
非小号开放平台欢迎币圈作者入驻
入驻指南:
/apply_guide/
本文网址:
/news/3627176.html
免责声明:
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表非小号的观点或立场
上一篇:
波场DApp再遭手!游戏TronWow变提款机,Peckshield深度讲解黑客手法
下一篇:
少写一行代码的教训:TronBank1.7亿BTT仅3小时就被洗劫一空
标签:TOKENTOKEBTTBANvv3tokenOracle Top 5 Tokens IndexBTTR价格ELONBANK
据Coindesk9月19日报道,新加坡中央银行新加坡金融管理局(MAS)表示,根据该国的证券法,任何加密代币都无需进行监管.
三言财经5月23日消息,据CoinDesk消息,5月20日香港高等法院一份文件显示,币安CEO赵长鹏已通过其律师向法院递交申请,起诉红杉资本损害其名誉,阻止币安以高估值筹集资金.
据Tass报道,俄罗斯中央银行将考虑使用黄金支持的加密货币来促进国际结算。?Nabiulina在国家下议院说:俄罗斯数据交换协议项目Prometues将基于Lambda主网发布全新应用:据官方消.
2018年9月17日,第五届国家网络安全宣传周如期举行,直到当月23日,全国范围内将迎来为期一周的网络安全盛会,围绕「网络安全为人民网络安全靠人民」这一主题.
5月23日,“世界数字经济论坛暨WBFex亚洲启动仪式”千人大会在深圳大中华喜来登酒店成功召开。中国200多家传统及区块链主流媒体,以及100万线上观众,共同见证了此次论坛的盛大举办.
据记者了解,与其他黑客组织相比,Lazarus不仅实力强劲,是世界上最赚钱的加密货币黑客集团,而且还有国家级背景参与其中……原文标题:《起底Lazarus:加密世界最成功的窃贼》文章来源:公众号.