当前位置:主页 > 列表页 > 正文

Cobo区块链安全月报:盘点解析1月典型安全事件

2022-02-18 02:52 | 出处: odaily

Cobo Labs 是亚太最大的加密货币托管平台,最受机构欢迎的金融资管服务商 Cobo 的加密货币研究实验室。

我们专注于创新项目,前沿加密数字技术领域,全球市场合规动向,市场基本面及波动因子;旨在帮助市场参与者和加密货币爱好者,降低进入市场的认知门槛。

此篇文章由 Cobo 区块链安全研究团队供稿,团队成员来自知名安全实验室,有多年网络安全与漏洞挖掘经验,曾协助谷歌 、微软处理高危漏洞,并获得谷歌、微软等厂商致谢,曾在微软 MSRC 最有价值安全研究员Top 榜单中取得卓越的成绩。团队目前重点关注智能合约安全、DeFi 安全等方面 ,研究并分享前沿区块链安全技术。

我们也希望对加密数字货币领域有研究精神和科学方法论的终身迭代学习者可以加入我们的行列,向行业输出思考洞察与研究观点!

此篇是 Cobo Labs 的第 4 篇文章。

1月18日 知名跨链桥 Multichain(前身 Anyswap)发现并修复了一个针对 WETH, PERI, OMT, WBNB, MATIC, AVAX 共 6 种代币有重要影响的漏洞。凡对 Multichain Router 授权过上述代币的用户均受影响,攻击者可直接利用漏洞转走用户授权的代币。根据 19 日的官方公告,由于部分用户未及时取消授权,有约 445 WETH 被攻击者盗走。

漏洞发生在 AnyswapV4Router 合约上的 anySwapOutUnderlyingWithPermit 函数中,由于函数对 Token 参数的合法性没有校验,攻击者可传入伪造的 Token 合约来代替原本官方的 AnyswapV1ERC20 Token。另一方面 WETH 等代币合约没有实现 permit 方法但是实现了 fallback 函数,因此在后续调用 permit 时不会发生 revert,可以继续成功执行下去。最终导致攻击者可以将受害者 approve 给 AnyswapV4Router 合约的 Token 盗走。

Cobo Comment

对于普通用户来说,需要特别留意 Token 无限授权(ERC20 Infinite Approval )所带来的风险。授权尽可能保证只授权用到的 Token 数量,而不要使用默认的无限授权,避免节约了 gas 却丢失了本金。对已有的无限授权要及时撤销,查询账户的授权情况可以使用 Etherscan的工具 https://etherscan.io/tokenapprovalchecker 。

Reference

https://github.com/W2Ning/Anyswap_Vul_Poc

https://theblockbeats.info/news/28774

https://hackernoon.com/erc20-infinite-approval-a-battle-between-convenience-and-security-lk60350r

问题是因 MasterChef 合约 的 setTrustedForwarder 函数没有正确进行权限校验。当攻击者修改了 TrustedForwarder 后,可以实现伪造 msg.sender 的效果,从而直接获取到 MasterChef 的 owner 权限。然后再利用 owner 权限调用 set 函数设置 strategy 为攻击者的恶意参数 0 xccddce9f0e241a5ea0e76465c59e9f0c41727003 。修改 strategy 后通过少量 deposit 即可 withdraw 大量的 CRSS Token 获利。

官方公告也承认这个漏洞过于明显,似乎是开发者有意为之,其内部调查后开除了 4 个开发者。目前已经对链上数据进行了快照,后续将进行重新部署。官方 git 上已经开始进行整体的代码审计,据称后续会再联合 Certik 进行审计。

Cobo Comment

此次攻击针对的是 MasterChef 合约,其实不会直接盗取用户的 LP 或者 CRSS token,但币价大跌还是会让持有 CRSS 的用户造成实际的损失。查看官方 doc 上无法找到项目审计报告,此漏洞比较明显,如果经过安全公司审计的话,很大概率可以暴露出来。对于个人投资者来说,未经过审计的项目还需谨慎。

Reference

https://twitter.com/peckshield/status/1483340900398895105

https://crosswise.medium.com/post-exploit-update-2a24c3370466

https://bscscan.com/address/0 x70873211cb64c1d4ec027ea63a399a7d07c4085b#code

https://github.com/crosswise-finance/crosswise-code-review-1.1

您可能感兴趣的文章:

相关文章