Cobo 区块链安全月报——盘点解析 3 月典型安全事件
此篇文章由 Cobo 区块链安全团队供稿,团队成员来自知名安全实验室,有多年网络安全与漏洞挖掘经验,曾协助谷歌 、微软等厂商处理高危漏洞并获致谢,在微软 MSRC 最有价值安全研究员Top 榜单中取得卓越的成绩。团队目前重点关注智能合约安全、DeFi 安全等方向 ,研究并分享前沿区块链安全技术。
我们也希望对加密数字货币领域有研究精神和科学方法论的终身迭代学习者可以加入我们的行列,向行业输出思考洞察与研究观点!
此篇是 Cobo Labs 的第 9 篇文章。
Fantasm Finance 攻击事件
Paraluni 闪电贷重入攻击事件
Cobo Comment :
代码层面看,漏洞产生的原因有二:
一,depositByAddLiquidity 没有对传入的 token 参数与 pool 的匹配性进行检查,通过传入伪造 token 合约可以实现任意合约调用;
二,对于 deposit 等关键方法,没有使用 OpenZeppelin ReentrancyGuard 进行防护,从而利用一进行重入攻击。从项目运营角度来说,项目方没有通过知名安全厂商进行安全审计,且没有披露完整的审计报告。对于普通用户而言,尽管第三方审计不能完全保证项目代码安全,对于没有经过知名厂商安全审计的项目,仍然需要保持谨慎态度。
Reference:
https://mp.weixin.qq.com/s/a5fFI5sFNAyuDxGqTFmC2A
https://mp.weixin.qq.com/s/BHViq_7vBUJDWIsMgGDU4w
https://bscscan.com/address/0xa386f30853a7eb7e6a25ec8389337a5c6973421d#code
Deus Finance遭闪电贷攻击
3月15日,部署在 Fantom 链上的 Defi 协议 Deus Finance 遭闪电贷攻击,攻击者获利约 300 万美元。
Deus Finance 的价格预言机直接利用交易池两代币余额与总流动性比值计算价格,导致攻击者可以通过闪电贷从交易池中借取大量的 DEI Token 来操纵币价,随后攻击者以低价清算其他用户的抵押资产,以此获利。
事件发生后,Deus Finance 项目方已经将原预言机修改,并且展开了调查工作。
Cobo Comment :
Deus Finance 使用交易池的实时代币余额进行报价,属于典型的易受闪电贷进行价格操作的预言机模型。攻击者利用此预言机控制攻击进行恶意清算,造成普通用户资产受损。对于投资者,在投资抵押借贷类项目时,建议关注项目文档和代码中使用的预言机模型,避免遭受预言机控制导致的恶意清算。目前各类预言机模型中:ChainLink 等去中心化预言机通常认为最为可靠;Uniswap V2/V3 的 TWAP 预言机也会受大资金的操纵,但有延迟报价机会,因此不受闪电贷操纵;直接使用交易池实时余额进行报价则非常容易遭受预言机操纵攻击。
Reference:
https://twitter.com/peckshield/status/1503632734299701250
https://cryptopotato.com/3-million-in-dai-and-eth-stolen-from-deus-finance-in-the-latest-defi-hack/
Hundred FInance 重入攻击事件
3月16日,xDai 链上借贷项目 Hundred FInance 遭重入攻击,项目方损失约 2363 ETH。
漏洞成因是 Hundred FInance 在实现借款函数 borrowFresh 时,转账操作是在记账操作之前,且没有使用 ReentrancyGuard 进行重入保护,因此存在重入攻击的风险。xDai 链上的 WETH、USDC 等币均使用 PermittableToken 合约模板。该模板中实现了对 ERC677 标准的支持。当转账收款地址是合约时,会自动回调 onTokenTransfer 函数。结合上述两个条件,攻击者得以进行重入攻击。
攻击者首先通过闪电贷获得攻击资金,在攻击合约的 onTokenTransfer 函数中重复调用 borrow 函数,由于记账操作在转账操作后,所以攻击者可以通过一份抵押资产反复使用,贷出远超过抵押金额的贷款,以此获利。
Cobo Comment :
3 月出现了多起重入攻击事件。重入攻击漏洞的存在通常需要满足 3 个条件:
(1)存在可触发重入的调用,如:合约使用 .call 底级调用进行转账;存在回调函数,如ERC777 或 ERC677 标准;
(2)合约的状态修改代码在重入代码之后;
(3)没有使用 OpenZeppelin ReentrancyGuard 进行保护。
开发者应该高度关注此类问题,尤其是项目要支持 ERC777 或 ERC677 资产时,涉及资产转移、记账功能等关键函数都需要考虑是否有重入的可能,防患于未然。
Reference:
https://mp.weixin.qq.com/s/tlXn3IDSbeoxXQfNe_dH3A
https://www.anquanke.com/post/id/270609
https://blockscout.com/xdai/mainnet/address/0xf8D1677c8a0c961938bf2f9aDc3F3CFDA759A9d9/contracts
Cobo Labs 希望协助加密世界投资者规避风险、提高收益,为传统金融机构、风险投资公司、通证基金、个人投资者、交易所、媒体等伙伴提供客观、有深度的数据分析。
关于亚太最大的加密货币托管及资管平台 Cobo:我们向机构提供领先的安全托管与企业资管业务;我们向全球高净值合格投资人提供加密数字钱包业务和丰富灵活的定期与结构化产品,我们关注金融创新,并于 2020 年第三季度成立了第一家面向全球机构的基金产品「DeFi Pro」。
【免责声明】市场有风险,投资需谨慎。本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况。据此投资,责任自负。
来源链接

