旧坑新伤:授权恶意合约被盗分析

近期,慢雾安全团队接触到几起由于授权引起的盗币事件,这些事件是最简单的 Approve 授权导致的盗币,而关键点在于受害者是在很久之前无意中点击了 Approve 授权。好在区块链的特性 —— 雁过留痕,在大量链上数据中总能发现蛛丝马迹。

背景

近期,慢雾安全团队接触到几起由于授权引起的盗币事件,这些事件是最简单的 Approve 授权导致的盗币,而关键点在于受害者是在很久之前无意中点击了 Approve 授权。好在区块链的特性 —— 雁过留痕,在大量链上数据中总能发现蛛丝马迹。

被盗案例分析

根据受害者提供的信息,被盗交易如下:

旧坑新伤:授权恶意合约被盗分析

(https://bscscan.com/tx/0x59aef62a8cee79996ff2b44b723c97fbc0c6e2a0992c61dea0e65fcb2d78f608)

粗略一看,只能看出受害者地址 0x8CCb 被黑客地址 0xFf6F 盗走了 13,811 USDT。

这笔交易既不是链下 permit/permit2 签名方式,也不存在其他合约漏洞任意授权方式,更不是 create2 方式。

在我们排除了这些常见的手法后,发现这笔交易竟是最简单的 Approve 授权导致的盗币,而且是很久之前埋下的导火索。

通过分析之前的链上交易记录,发现被盗的关键点在于受害者曾在两年多前授权过一个合约地址 (0x3880285800a89AB3C4338bf455acdA3da6f8fA24),授权记录如下:

旧坑新伤:授权恶意合约被盗分析

(https://bscscan.com/tx/0x018479875137e5eafcc183c5574cf9197ee14c7921b5f6796b385bb15e8bf96d)

授权交易及被盗转移交易的时间表列在下面,中间时间间隔长达 767 天:

  • 2021 年 11 月 9 日,08:13:28 – 恶意授权给恶意合约地址交易;
  • 2023 年 12 月 16 日,07:26:53 – USDT-BEP20 被非授权转移交易。

授权给恶意合约地址后,资金是如何被盗走的呢?我们来进一步看看细节。

旧坑新伤:授权恶意合约被盗分析

(https://dashboard.tenderly.co/tx/bnb/0x59aef62a8cee79996ff2b44b723c97fbc0c6e2a0992c61dea0e65fcb2d78f608)

在这笔交易中,发生了以下步骤:

  • 通过调用 0xcc4187 合约地址的 0xe473d7ed 方法,检查被盗地址的余额及对授权给恶意合约的 Allowance;
  • 调用恶意合约(图中的 TransparentUpgradeableProxy)的 Proxy 合约 0xd367b5 的 0xe5ee9334 方法:
  • 验证 0xcc4187 合约地址的 Role 角色权限;
  • 恶意合约作为 msg sender 调用 USDT-BEP20 的 transferFrom 函数,从而实现将授权给恶意合约的 Token 资产转移到黑客获利地址 0xFf6F。

MistTrack 分析

据 MistTrack 分析,黑客地址 (0xFf6FC7eafF07C93b555a1CA2A9efcBbca2b8c83D) 目前已获利约 20 万美元,包括多种代币。

旧坑新伤:授权恶意合约被盗分析

黑客初始资金来自 Tornado Cash 转入的 0.098 BNB,且使用过 Venus, PancakeSwap, DinosaurEggs, WombatExchange:

旧坑新伤:授权恶意合约被盗分析

接着,我们对恶意合约地址 (0x3880285800a89AB3C4338bf455acdA3da6f8fA24) 进行分析:

旧坑新伤:授权恶意合约被盗分析

我们发现这个恶意合约在 MistTrack 里被标记为 King,也就是说这个合约地址是原来项目 King 的合约地址,该合约地址与 Kingfund Finance 也存在交互,King 和 Kingfund Finance 应该是同一个项目:

旧坑新伤:授权恶意合约被盗分析

再看下恶意合约地址的创建者地址 (0x37a7cA97b33b6a9D1d80D33bff9E38f156FF8541) 被标记为 Kingfund Finance: Deployer。

旧坑新伤:授权恶意合约被盗分析

我们在搜索这个项目信息的时候,发现这居然是个 RugPull 项目。在 2022 年 1 月 19 日,Kingfund Finance 卷款带走超 300 WBNB(约 141,000 美元),关闭了其官网和官方推特。也就是说,目前还没对这个恶意合约取消授权的用户仍在被盗,慢雾安全团队建议用户及时取消对恶意合约的授权。

Dune 数据分析

旧坑新伤:授权恶意合约被盗分析

(https://dune.com/misttrack/rugpull-malicious-authorization)

根据上述总结出的特征及借助 Dune 分析,我们还发现了另一个用户在 2022 年 1 月授权了上述提到的恶意合约地址 (0x3880285800a89AB3C4338bf455acdA3da6f8fA24),随后在 5 月份又授权了另一个 RugPull 恶意合约地址 (0x3a40AeC5453dB9b49ACb2993F0F82FB1553f4C23)。

旧坑新伤:授权恶意合约被盗分析
旧坑新伤:授权恶意合约被盗分析

该恶意合约的创建者 (0x406119D496a3b0D1F0B7DA020B5e89d6FFf4Ff08) 已将大部分获利资金转移到 Tornado Cash。

旧坑新伤:授权恶意合约被盗分析

目前相关地址已被 MistTrack 拉黑。

总结

本文主要介绍了一个由于早年授权给 RugPull 项目导致后续资金持续被盗的案例,并根据相关特征扩展出 Dune 数据集。钓鱼无孔不入,一不小心就中招,慢雾安全团队建议用户经常主动查看自己的授权情况,可以使用 RevokeCash、ScamSniffer、Rabby 等工具查询,若发现有异常授权,请及时取消。

(声明:请读者严格遵守所在地法律法规,本文不代表任何投资建议)

(0)
Gao的头像Gao
上一篇 2023年12月30日 下午10:08
下一篇 2023年12月30日 下午10:19

相关推荐

  • SBF的监狱生活:不忘交易员初心,以「大米」进行交易套利

    根据访谈内容,SBF 的饮食以素食为主。由于 MDC 的素食餐让其他囚犯觉得「像粪便一样臭」,所以他主要靠吃豆子和大米为生,并且大米已经「成为 MDC 内部的一种交易货币」。SBF 甚至开玩笑的表示:「与他以前作为高频交易员的生活相比,在监狱里的套利机会要好得多。」

    2024年5月10日
    252
  • Rollux的L2终局野望:如何擘画基于比特币安全性的EVM超级链生态?

    2023 年的 Ordinals 热潮带来了比特币生态的大爆发,其中尤以比特币 L2 最为拥挤,导致上冠以「比特币 L2」的项目多如过江之鲫,但「比特币 +L2」到底要解决什么问题,对很多人来说却并不是一个容易分清的问题。

    2024年4月6日
    396
  • 从技术视角,主流Web3社交平台如何创新?

    在网络成为商业、娱乐和社交互动的中心之前,它主要是一种学术和军事领域的工具。蒂姆·伯纳斯·李(Tim Berners-Lee)在制定第一个网络协议时秉持着平等主义的愿景:互联网的最初设计是一个去中心化的网络,信息可以在节点之间自由传播,没有任何个体可以控制,也不存在单点故障。

    2023年12月1日
    1.1K

发表回复

登录后才能评论
微信

联系我们
邮箱:whylweb3@163.com
微信:gaoshuang613