【链安科技】Token合约F_E漏洞

【链安科技】Token合约F_E漏洞_第1张图片

有相关安全公司风险监控平台于今日发现,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] 溢出。


【链安科技】Token合约F_E漏洞_第2张图片

这个由于代码中判断条件错误引发的漏洞,与之前已经爆出的诸多ERC20 合约漏洞如出一辙。任何人都可以在未授权的情况下转出其他人账户中的所有或部分Token;已授权用户可以转出超过授权额度的Token。

根据etherscan显示,该合约最近一次交易在4天前,也就是说该Token最近还在活跃交易中。


【链安科技】Token合约F_E漏洞_第3张图片

同时,SECBIT实验室监控平台也发现,该Token已经上线交易所,并且至今仍有活跃交易。


【链安科技】Token合约F_E漏洞_第4张图片

该安全公司第一时间试图向项目方发出告警提示,但是由于该项目的官网已经关闭,暂时无法与项目方取得联系。

早些时候,成都链安科技发现的RMC漏洞,其原理跟此漏洞一样。如此严重漏洞在多个Token合约里同时存在,值得我们深思。一个小小的逻辑判断错误就给项目招来致命性灾难,对项目方,交易所和Token持有者都是不小的打击。该安全公司再次呼吁,项目方发行Token一定要慎之又慎,对合约代码进行详细检查,更不能随意复制网上的代码,并且在发布前寻求专业的团队对合约进行审计,杜绝隐患。

本文转载自《Token合约F_E漏洞》,版权属于原作者,已获得转载授权。

你可能感兴趣的:(【链安科技】Token合约F_E漏洞)