零时科技 || Ankr 资金被盗分析
2022-12-02 09:10
零时科技
2022-12-02 09:10
订阅此专栏
收藏此文章



事件背景

零时科技区块链安全情报平台监控到消息,北京时间 2022 年 12 月 2 日,

Web3 基础设施提供商 Ankr 的部署者密钥疑似被泄露,10 万亿枚 aBNBc 代币在交易:0xe367...6e33 中铸造,并发送到 0xf3a4 开头的地址,这些 aBNBc 代币正在兑换成 USDC 和 WBNB。随后,0xf3a4 开头的地址通过 Tornado 和 cBridge 转出资金。



被盗分析

Ankr Token 合约部署由代理合约部署,当管理员权限(代理合约管理员权限或者 Token 合约管理员权限)被黑客控制,都有可能造成任意铸造代币,攻击者是通过怎样的流程将资金转出?

通过攻击者铸币交易入手:

0xe367d05e7ff37eb6d0b7d763495f218740c979348d7a3b6d8e72d3b947c86e33

使用 Ankr: Deployer 权限调用代理合约转移 10,000,000,000,000 枚 aBNBc Token。转移的方法签名为 0x3b3a5522

通过上面消息来看,也就是攻击者控制了 Ankr: Deployer 权限调用 aBNBc Token 合约给自己铸币。

但通过分析后发现,aBNBc Token 合约是在几小时前部署,说明攻击者重新部署了 aBNBc Token 合约。

并且在新的 aBNBc Token 合约发现,存在除了 Ankr: Deployer 权限调用合约铸币之外的其他地址调用铸币方法 0x3b3a5522。

分析以上 aBNBc Token 合约 0x3b3a5522 方法,该方法属性为 public,并且未对铸币地址进行限制。这也解释了为什么其他账户可以调用。

这里有一个疑问,新的 aBNBc Token 合约可以任意铸币,之前旧的 aBNBc Token 合约是不是也可以?

打开之前的 aBNBc Token 合约。

可以很明显看到并没有任意铸币的问题,合约在初始化时已经进行了铸币,并且之后铸币由 onlyminter 控制。

攻击者铸币的几个小时后,Ankr 官方重新部署了一份 aBNBc Token 合约 0x9e6616089e3d78faa9b6a1361b67e562c1600871,与最初的合约相似,不存在任意铸币。



总结及建议


此次攻击事件损失资金巨大,部分账户在攻击者兑换洗钱的过程中,进行套利并且获利丰厚。总体来看,攻击者通过获取 Ankr 官方代理合约管理员密钥,从而将官方 Token 合约更新恶意 Token 合约,铸造大量代币获利离场。对于此类管理者密钥被盗的情况时有发生,零时科技安全团队提醒 Web3 团队,注意密钥安全。


安全建议

  • 项目在转移或者合约修改过程中需要安全保存管理员密钥,避免出现管理者之外的人员发现密钥;

  • 尽量避免在线存储密钥,避免被其他软件获取;

  • 提高项目内部人员安全意识,避免管理员被黑客通过钓鱼等其他攻击手法获取密钥。



零时




往期内容回顾


零时科技 | Nomad 跨链桥被盗 1.8 亿美元事件分析

零时科技 | Audius 金库 1850 万枚 AUDIO 被盗事件分析

零时科技 | Fortress 攻击事件分析

Beanstalk Farms 攻击事件分析 | 零时科技

为什么黑客如此“钟爱”跨链桥

零时科技 | Agave Finance 攻击事件分析

零时科技联合创始人黄鱼先生受邀对话《Web3 应用创新与生态安全》

零时科技创始人邓永凯先生受邀对话《公链隐私保护及生态安全》

零时科技 | 被盗 6.1 亿美金,Poly Network 被攻击复盘分析

零时科技 || Uniswap v3 出现漏洞?No,新型钓鱼来袭!

相关Wiki

【免责声明】市场有风险,投资需谨慎。本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况。据此投资,责任自负。

在 App 打开
hyperliquid
wal
jellyjelly
particle
空投
香港
以太坊
rwa
movement
bera
monad
sui