Cointime

扫码下载App
iOS & Android

SharkTeam:Exactly Protocol攻击事件原理分析

8月18日,Exactly protocol遭遇黑客攻击,攻击者已获利约1204万美元。

SharkTeam对此事件第一时间进行了技术分析,并总结了安全防范手段,希望后续项目可以引以为戒,共筑区块链行业的安全防线。

一、 事件分析

攻击者地址:

0x3747dbbcb5c07786a4c59883e473a2e38f571af9

0x417179df13ba3ed138b0a58eaa0c3813430a20e0

0xe4f34a72d7c18b6f666d6ca53fbc3790bc9da042

攻击合约:

0x6dd61c69415c8ecab3fefd80d079435ead1a5b4d

被攻击合约:

0x675d410dcf6f343219aae8d1dde0bfab46f52106

攻击交易:

0x3d6367de5c191204b44b8a5cf975f257472087a9aadc59b5d744ffdef33a520e

0x1526acfb7062090bd5fed1b3821d1691c87f6c4fb294f56b5b921f0edf0cfad6

0xe8999fb57684856d637504f1f0082b69a3f7b34dd4e7597bea376c9466813585

攻击流程:

(1)攻击者(0x417179df)先通过攻击合约(0x6dd61c69)创建了多个恶意市场代币合约和多个uniswapPool合约。

(2)随后调用被攻击合约(0x675d410d)的leverage函数并传入一个恶意市场代币地址。

(3)在leverage函数中通过deposit函数到pool合约中添加USDC和恶意市场代币的流动性并重入到被攻击合约(0x675d410d)的crossDeleverage函数

(4)在crossDeleverage函数中被攻击合约(0x675d410d)会使用USDC到pool合约中兑换恶意市场代币。

(5)函数调用完成后,攻击合约(0x6dd61c69)移除pool中的流动性,随后提出兑换而来的USDC代币获利。

(6) 多次循环上面的操作,每次攻击都会更换被攻击用户地址和恶意市场代币地址。

(7) 然后将获得的USDC发送给攻击者(0xe4f34a72)。

(8)多次执行同样的操作获利

二、漏洞分析

本次攻击利用了DebtManager(0x675d410d)合约中的漏洞,其中的leverage函数未校验传入market参数是否为可信的市场合约,导致在permit函数修饰器中可将状态变量_msgSender修改为攻击者任意的传参地址。

最后在与pool进行兑换时会使用用户的exaUSDC余额来抵消付给pool合约的USDC数量。

三、 安全建议

针对本次攻击事件,我们在开发过程中应遵循以下注意事项:

(1)在涉及到有关外部地址传参和调用的情况下,应严格校验传参地址是否为可信地址。

(2)项目上线前,需要向第三方专业的审计团队进行智能合约审计。

About Us

SharkTeam的愿景是全面保护Web3世界的安全。团队由来自世界各地的经验丰富的安全专业人士和高级研究人员组成,精通区块链和智能合约的底层理论,提供包括智能合约审计、链上分析、应急响应等服务。已与区块链生态系统各个领域的关键参与者,如Polkadot、Moonbeam、polygon、OKC、Huobi Global、imToken、ChainIDE等建立长期合作关系。

官网:https://www.sharkteam.org

Twitter:https://twitter.com/sharkteamorg

Discord:https://discord.gg/jGH9xXCjDZ

Telegram:https://t.me/sharkteamorg

评论

所有评论

推荐阅读

  • 美国考虑放宽对影子船队的制裁,以降低海运费率

    10月15日,一名美国官员当地时间周三表示,特朗普政府正在考虑放宽针对所谓“影子船队”船只的制裁。这些船只曾运输来自俄罗斯、伊朗和委内瑞拉等国的石油及石油产品。此举旨在降低目前处于历史高位的全球海运费率。此前不久,美国总统特朗普刚刚暂时解除了针对俄罗斯柴油的制裁。这一决定招致了乌克兰总统泽连斯基、欧洲多国政府,以及特朗普所属的共和党内部分参议员的强烈批评。该美国官员透露,目前的讨论重点在于,美国是否允许此前遭制裁的船只运输“合法石油”。这里的“合法石油”是指未受到美国制裁的原油或石油产品,而非受到制裁措施限制的俄罗斯和伊朗石油。该官员表示,此举旨在推动更多成品油和原油从海湾地区运出。(金十)

  • 韩国股指开盘大跌逾5%

    10月15日,韩国KOSPI指数跌破6000点,日内跌5.59%。SK海力士跌超7%,三星电子跌超6%。(金十)

  • 美元指数抹去CPI报告公布以来的所有涨幅

    10月15日,美元指数DXY在亚盘初缓慢下跌,已完全抹去昨日美国9月CPI数据公布以来的所有涨幅(最高累计上涨约70点),现报102.16。英镑兑美元GBP/USD及欧元兑美元EUR/USD涨约0.3%,现分别报1.3231和1.1197。(金十)

  • BTC跌破82000美元

    行情显示,BTC跌破82000美元,现报81984.48美元,24小时跌幅达到2.01%,行情波动较大,请做好风险控制。

  • BTC跌破83000美元

    行情显示,BTC跌破83000美元,现报83015.81美元,24小时跌幅达到0.46%,行情波动较大,请做好风险控制。

  • ETH突破2500美元

    行情显示,ETH突破2500美元,现报2500.4美元,24小时跌幅达到0.23%,行情波动较大,请做好风险控制。

  • 美国现货比特币ETF昨日净流入1.757亿美元

    10月14日,据Farside Investors监测数据,美国现货比特币ETF昨日净流入1.757亿美元。

  • 美国现货以太坊ETF昨日净流入2480万美元

    10月14日,据Farside Investors监测数据,美国现货以太坊ETF昨日净流入2480万美元。

  • 渣打银行在阿联酋推出加密货币交易服务,面向高净值客户

    10月14日,渣打银行宣布在阿联酋推出面向高净值客户的加密货币交易服务,已获得迪拜虚拟资产监管局(VARA)的相关许可。符合条件的客户可通过现有渣打银行账户直接买卖BTC和ETH,无需使用独立钱包或第三方交易平台,由银行负责资产托管及交易结算。 该服务与Zodia Markets合作推出,初期仅面向阿联酋的专业投资者,未来计划拓展至其他市场。渣打表示,这是其首次面向财富管理客户推出加密货币直接交易服务,也是国际银行首次在阿联酋推出此类服务。

  • Solana宣布将于10月21日启动Alpenglow升级,目标实现150毫秒交易最终确认

    10月14日,Solana宣布Alpenglow升级将于10月21日(世界标准时间约14:50)正式激活,本次升级将用Votor共识替换原有的TowerBFT共识。升级后交易最终确认时间中位数约150毫秒,而当前该数值约为12.8秒。 本次升级支持单槽迁移,无需节点重启;升级会将验证者投票信息移出区块,降低运行成本。即便链上实际使用量保持不变,统计显示的总交易笔数也大概率会明显下降。SOL当前价格约107美元,市场暂未出现明显反应。 从叙事层面看,这次升级利好Solana的速度与扩容故事;但Solana历史上多次出现网络中断,本次升级存在执行落地风险,属于潜在预警信号。