前言
CF代币合约被发现存在漏洞,它允许任何人转移他人的CF余额。到目前为止,损失约为190万美元,而pancakeswap上CF/USDT交易对已经受到影响。知道创宇区块链安全实验室第一时间对本次事件深入跟踪并进行分析。
事件详情
加密初创公司Nova Labs正在推出月费5美元的手机套餐:金色财经报道,区块链初创公司Nova Labs宣布正在推出每月5美元的手机套餐,可无限量发送短信、通话和无限流量。 Nova Labs在声明中表示,该计划最初仅适用于迈阿密居民或收到使用该产品邀请的人。其最新产品将由个人和企业拥有的 5G 热点提供支持,注册的人将能够使用Helium网络通过移动设备(包括iPhone和Android设备)连接到热点。该公司表示,全美有7,000多个热点。
根据PitchBook的数据,2022年Nova Labs从Tiger Global Management和Andreessen Horowitz领投的投资者那里筹集了2亿美元,估值为12亿美元,迄今为止已从风险投资公司筹集了超过2.5亿美元。[2023/8/16 21:26:21]
受影响的合约地址
Gemini已支持XRP存款功能,将上线XRP交易服务:8月10日消息,加密货币交易所Gemini已支持XRP存款功能,将上线XRP交易服务,Gemini提醒用户需要将移动应用升级更新到23.808.0版本才能进行XRP存款操作。[2023/8/11 16:18:58]
https://bscscan
GMX社区提案提议降低GLP中USDC权重,分配至FRAX:8月25日消息,近期GMX社区更改Stablecoin权重提案引发广泛讨论,该提案建议减少Arbitrum上GLP中3%USDC权重占比,提高3%FRAX。当前USDC占比36%、USDT占比2%、DAI占比5%、FRAX占比2%。
据悉,当前Arbitrum上GLP质押年利率达31.33%。[2022/8/25 12:48:20]
uint256fee=0;..
_transfer()函数是直接转移代币transfer()和授权转移代币transferFrom()的具体实现,但该函数的修饰器是public,因此任何人都可以不通过transfer()或transferFrom()函数直接调用它。而当变量useWhiteListSwith设置为False时,该函数不会检查调用地址和传输地址是否合规,直接将代币转移到指定地址。
在区块高度为16841993时,管理员就把useWhiteListSwith设置为False:
此时开始有攻击者利用_transfer()函数直接转移代币:
总结
经过完整分析,知道创宇区块链安全实验室明确了该次事件的源头由函数本身权限出现问题,而管理员同时操作不慎关闭了白名单检测,两方结合导致攻击者可以实现转移任意钱包代币的操作。
在核心函数上我们一直建议使用最小权限原则,像这次的_transfer()函数本不该用public修饰器,使得transferFrom()函数检查授权额度的功能形同虚设;而合约管理者也不该随意修改关键变量值,导致攻击者可以绕过白名单检查的最后一道防线。
合约不仅仅是代码层面的安全,不光需要白盒代码审计,更需要合约管理员共同合理维护。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。