经过安全审计的FSwap项目,黑客如何还能有机可乘?

本文约598字,阅读全文需要约1分钟
BSC 链上的 FSwap 项目遭到闪电贷攻击,直接导致损失超 39 万美元。

前言

北京时间 2022 年 6 月 13 日,知道创宇区块链安全实验室 监测到 BSC 链上的FSwap 去中心化交易所项目遭到闪电贷攻击,导致损失 1751 枚 BNB 约 39 万美元。

知道创宇区块链安全实验室 第一时间跟踪本次事件并分析。

经过安全审计的FSwap项目,黑客如何还能有机可乘?

基础信息

FSwap 是一个去中心化交易所项目,可实现对加密资产的链上高效清算和资产的跨链交易。

攻击者地址:0x000c84c59385b64c3ea4d48cc3fca1f08f3abcfc

攻击合约:0x7437e7a923a5b467a197c6fae991f0f0ced9af57

tx:0xe75e30dafd865331e6a002d50effe084c21e413c96d4550d5e09cf647686fcbe

FSwapPair合约:0x0d5F1226bd91b5582F6ED54DeeE739CAC49C37Db

漏洞分析

漏洞关键在于 FSwapPair 合约中的 swap 方法在每次交易计算手续费时会将pair 合约中的储备 token 当作手续费发送给 feeto 地址,这将会导致池子中的代币数量减少,从而引起代币价格上涨,攻击者能够从中套利。

经过安全审计的FSwap项目,黑客如何还能有机可乘?

经过安全审计的FSwap项目,黑客如何还能有机可乘?

攻击流程

1、攻击者使用闪电贷在 BiSwap 中贷款 300 万枚 BSC-USD 代币,并使用255 万枚 BSC-USD 代币在 Fswap 中换取 54 万余枚 MC 代币;

经过安全审计的FSwap项目,黑客如何还能有机可乘?

2、随后攻击者在合约中反复多次贷-还闪电贷以此消耗池子中的 MC 代币,使得池中中得 MC 代币数量急剧减少,价格也迅速上涨;

经过安全审计的FSwap项目,黑客如何还能有机可乘?

经过安全审计的FSwap项目,黑客如何还能有机可乘?

3、攻击者立刻在池子中置换手中的 MC 代币获取大量 BSC-USD 代币;

经过安全审计的FSwap项目,黑客如何还能有机可乘?

4、攻击者偿还闪电贷,将剩余 BSC-USD 代币进行 swap,获利 1751 枚BNB,最后自毁合约离场。

经过安全审计的FSwap项目,黑客如何还能有机可乘?

总结

本次攻击事件核心是项目方误将手续费收取方设定为 pair 合约而不是用户本身,从而导致池子中的代币数量能够被消耗,发生套利风险。

建议项目方在编写项目时应对函数中的手续费收取逻辑实现进行严格的审查,此处应该将手续费收取对象设置为用户而不是 pair 合约。

在此提醒项目方发布项目后一定要将私钥严密保管,谨防网络钓鱼。另外,近期各类合约漏洞安全事件频发,合约审计、风控措施、应急计划等都有必要切实落实。

原创文章,作者:创宇区块链安全实验室。转载/内容合作/寻求报道请联系 report@odaily.email;违规转载法律必究。

ODAILY提醒,请广大读者树立正确的货币观念和投资理念,理性看待区块链,切实提高风险意识;对发现的违法犯罪线索,可积极向有关部门举报反映。

推荐阅读
星球精选