UXLINK被盗约1130万美元技术分析

链捕手
Sep 24

事件描述

9月23日,UXLINK项目多签名钱包私钥泄漏,导致约1130万美元资产的加密货币被盗取,并已被分散转移至多个中心化(CEX)和去中心化(DEX)交易所。在被攻击的第一时间,我们与UXLINK一起调查分析这起攻击以及监控了资金流动。UXLINK紧急联系各大交易所请求冻结可疑资金,已向警方及相关机构报案以寻求法律支持和资产追回,黑客的大部分资产已被各大交易所标记冻结,从而最大程度地降低了社区面临的进一步风险。项目方承诺将对社区保持透明,ExVul也将持续分析跟进事件进展。

https://x.com/UXLINKofficial/status/1970181382107476362)

最新进展

在黑客资金流转过程中,流入交易所的资金已被冻结。通过初步链上追踪发现,此前盗取UXLINK资产的黑客,疑似遭遇Inferno Drainer钓鱼攻击。经核实,其非法获取的约5.42亿枚$UXLINK代币已被“授权钓鱼”手法窃取。

黑客被钓鱼交易: https://arbiscan.io/tx/0xa70674ccc9caa17d6efaf3f6fcbd5dec40011744c18a1057f391a822f11986ee

未经授权的1B $UXLINK铸币: https://arbiscan.io/tx/0x2466caf408248d1b6fc6fd9d7ec8eb8d8e70cab52dacff1f94b056c10f253bc2

攻击分析

  1. 此前合约因多签Owner存在恶意操作或私钥泄露问题,致使恶意地址被添加为多签账户,同时合约的签名阈值(threshold)被重置为1,即只需单一账户签名即可执行合约操作。黑客设置了新的Owner地址为0x2EF43c1D0c88C071d242B6c2D0430e1751607B87。

(https://arbiscan.io/tx/0x8504a830e7a7a1ca0308a71130efdebddd78b90a1dcc8a64d7c1d86261754689)

  1. 攻击者首先调用Gnosis Safe Proxy合约中的execTransaction函数。该函数成为恶意移除多签成员的入口,后续所有恶意操作均在此次交易的内部被执行。

(https://arbiscan.io/address/0x7715200141cfd94570bc9d97260ec974ee747972#code)

  1. 在调用execTransaction时,攻击者在其data参数中指定了一个恶意操作:通过delegatecall方式调用Safe: Multi Send Call Only 1.3.0实现合约。

(https://arbiscan.io/address/0x40a2accbd92bca938b02010e17a5b8929b49130d)

  1. 在Safe: Multi Send Call Only 1.3.0的multiSend函数中,执行流回调至Gnosis Safe Proxy合约的removeOwner。具体过程为:攻击者先通过对代理合约执行的delegatecall调用了MultiSend实现合约,使其在代理合约的上下文中运行 multiSend;随后,multiSend根据攻击者构造的参数,以call方式回调Gnosis Safe Proxy合约自身并触发removeOwner函数,从而移除既有的Owner地址。

(https://arbiscan.io/address/0x40a2accbd92bca938b02010e17a5b8929b49130d#code)

  1. 调用能够成功的核心在于满足条件msg.sender == address(this)。在removeOwner函数中,为了防止外部直接调用,合约设置了authorized验证,其内部逻辑通常要求调用者必须是合约自身 (msg.sender == address(this))。因此,只有当合约内部流程回调自身时,removeOwner才会被成功执行。

  1. 黑客通过上述手法逐一删除多签中的其他Owner,破坏多签机制并最终接管合约。

  1. 至此,攻击者通过不断重复上述步骤,导致原有的多签安全机制彻底失效。此时,仅凭单一恶意Owner的签名即可通过多签验证,从而实现对合约的完全控制。

(https://arbiscan.io/txs?a=0x2ef43c1d0c88c071d242b6c2d0430e1751607b87&p=2)

总结

由于多签Owner存在恶意操作或私钥泄露,攻击者将恶意地址添加为多签成员,并将Gnosis Safe Proxy的签名阈值(threshold)设置为1,致使原有的多签安全设计彻底失效。此后,单一恶意Owner即可通过多签验证。攻击者继而逐步移除合约中的其他Owner,最终实现对合约的完全控制,并进一步转移合约资产,在链上恶意铸造$UXLINK代币。

本次攻击事件凸显了多签管理在区块链安全中的关键作用。尽管该项目采用了Safe多签机制并配置了多个多签账户,但由于管理方式存在缺陷,最终使多签设计形同虚设。ExVul团队建议,项目方在多签管理上应尽量实现分散化,例如由不同成员分别保管私钥,并采取多样化的私钥存储方式,从而确保多签机制真正发挥应有的安全防护效果。

附录

以下为ExVul团队链上追踪到的疑似黑客地址:

Disclaimer: Investing carries risk. This is not financial advice. The above content should not be regarded as an offer, recommendation, or solicitation on acquiring or disposing of any financial products, any associated discussions, comments, or posts by author or other users should not be considered as such either. It is solely for general information purpose only, which does not consider your own investment objectives, financial situations or needs. TTM assumes no responsibility or warranty for the accuracy and completeness of the information, investors should do their own research and may seek professional advice before investing.

Most Discussed

  1. 1
     
     
     
     
  2. 2
     
     
     
     
  3. 3
     
     
     
     
  4. 4
     
     
     
     
  5. 5
     
     
     
     
  6. 6
     
     
     
     
  7. 7
     
     
     
     
  8. 8
     
     
     
     
  9. 9
     
     
     
     
  10. 10