【得得预警】ERC20 Token合约惊现毁灭级漏洞,账户余额可以随意转出
摘要: ERC20代币合约F_E由于业务逻辑实现漏洞,任何人都可以随意转出他人账户中的Token。并且该Token已经上线交易所,至今仍有活跃交易,Token随时面临彻底归零风险。
SECBIT 实验室风险监控平台于今日发现,ERC20代币合约F_E由于业务逻辑实现漏洞,任何人都可以随意转出他人账户中的Token。并且该Token已经上线交易所,至今仍有活跃交易,Token随时面临彻底归零风险。
合约地址sha3哈希值:
62c2235a3744a1d15cc15bb7f778e3228e07a9fd73cc8aae727a079dd21f0642
在合约的 transferFrom 函数中,transfer 之前对 allowed[from][msg.sender]进行校验,转账金额 value 不能超过allowed[from][msg.sender]中授权的金额。但是由于判断条件中将 < 误写成了>=,导致授权账户能够并且只能转出超过授权额度的金额才能转账。同时由于 value 大于 allowed[from][msg.sender],allowed[from][msg.sender]-= value 操作使得allowed[from][msg.sender]溢出。
这个由于代码中判断条件错误引发的漏洞,与之前已经爆出的诸多ERC20 合约漏洞如出一辙。任何人都可以在未授权的情况下转出其他人账户中的所有或部分Token;已授权用户可以转出超过授权额度的Token。
根据etherscan显示,该合约最近一次交易在4天前,也就是说该Token最近还在活跃交易中。
同时,SECBIT实验室监控平台也发现,该Token已经上线交易所,并且至今仍有活跃交易。
SECBIT实验室第一时间试图向项目方发出告警提示,但是由于该项目的官网已经关闭,暂时无法与项目方取得联系。
今日早些时候,成都链安科技发现的RMC漏洞,其原理跟此漏洞一样。如此严重漏洞在多个Token合约里同时存在,其背后隐含的安全形势。一个小小的逻辑判断错误就给项目招来致命性灾难,对项目方,交易所和Token持有者都是不小的打击。SECBIT实验室再次呼吁,项目方发行Token一定要慎之又慎,对合约代码进行详细检查,更不能随意复制网上的代码,并且在发布前寻求专业的团队对合约进行审计,杜绝隐患。
注:出于对项目的保护,本文并未直接透露合约名称,以F_E代替。
以上观点由SECBIT(安比)实验室提供。
SECBIT实验室由中科大郭宇博士创立,聚焦智能合约安全研究,致力于打造健康有序的区块链经济体。
Fxe
recent market trades里可是偷偷告诉我们是哪个币了????