慢雾发布OMNI被黑简析,建议在关键函数采用重入锁来防止重入问题_NER:Burn Floki

慢雾安全团队对此前7月10日OMNIProtocol闪电贷攻击事件进行了分析:1.攻击者首先通过supplyERC721函数抵押doodle,抵押后合约会给攻击者相应的凭证NToken;2.调用borrow函数借出WETH;3.调用withdrawERC721尝试提取NFT,跟进到内部函数executeWithdrawERC721发现,提款会先通过burn函数去燃烧凭证而burn函数中的safeTransferFrom函数会去外部调用接收地址的OnERC721Received函数,攻击者利用这点重入了合约的liquidationERC721函数;4.在liquidationERC721函数中,攻击者先支付了WETH并接收doodlenft,接着通过判断后会调用_burnCollateralNTokens函数去燃烧掉对应的凭证,同样的利用了burn函数外部调用的性质攻击者再次进行了重入操作,先是抵押了清算获得的nft,接着调用borrow函数去借出了81个WETH,但由于vars变量是在liquidationERC721函数中定义的,因此第二次借款不会影响到liquidationERC721函数中对用户负债的检查,这导致了攻击者可以通过userConfig.setBorrowing函数将用户的借款标识设置为false即将攻击者设置成未在市场中有借款行为;5.在提款时会首先调用userConfig.isBorrowingAny()函数去判断用户的借款标识,假如借款标识为false,则不会判断用户的负债,故此重入后的81WETH的负债并不会在提款时被判断,使得攻击者可以无需还款则提取出所有的NFT获利

关于慢雾安全审计未发现Parallel Finance漏洞的不实消息的声明:7月11日消息,针对今日媒体报道慢雾安全审计了遭受重入攻击的DeFi平台Parallel Finance项目智能合约一事,慢雾安全再次声明,近日发生重入攻击的项目是Omni Protocol,该项目是Parallel Finance项目的另一个项目,慢雾审计的是Parallel Finance在波卡生态里的项目代码,具体的审计报告可见原文链接。针对上述事件,慢雾将保留依法追究名誉侵犯的权利。

此前消息,DeFi平台Parallel Finance遭受重入攻击,导致了约200万美元的损失。[2022/7/11 2:06:00]

此次攻击的主要原因在于burn函数会外部调用回调函数来造成重入问题,并且在清算函数中使用的是旧的vars的值进行判断,导致了即使重入后再借款,但用户的状态标识被设置为未借款导致无需还款。慢雾安全团队建议在关键函数采用重入锁来防止重入问题。

慢雾安全提醒:近期有黑客团伙进行钓鱼攻击 目前已经有部分交易平台遭受攻击:据慢雾区伙伴无极实验室消息,近期有黑客团伙利用 Windows10 的 IE11/Edge Legacy 和 MS Teams 结合 ms-officecmd 的远程代码漏洞进行钓鱼攻击,攻击者通过构造恶意的 exploit 的链接发送给交易平台的内部人员,并诱导内部人员点击恶意的链接,从而控制内部人员的电脑,来实施对交易平台的盗币攻击。目前已经有部分交易平台遭受攻击,请自查是否有访问过如下的链接或 IP 地址。

攻击者相关信息:

链接: https://giantblock[.]org,https://financialtimes365[.]com

C&C: plusinfo24[.]com

IP 地址: 162.213.253.56[2022/2/11 9:45:23]

声音 | 慢雾科技余弦:所有数字货币项目方应完整review所有第三方模块:据IMEOS报道,慢雾科技余弦提醒所有数字货币相关项目(如交易所、钱包、DApp 等)都应该强制至少一名核心技术完整 review 一遍所有第三方模块,看看是否存在可疑代码,也可以抓包看看是否存在可疑请求。供应链攻击不计代价,数字货币依然炙手可热。

比如最新发现的: Hacker backdoors popular JavaScript library to steal Bitcoin funds 。[2018/11/27]

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金智博客

[0:0ms0-4:437ms