By:Victory@慢雾安全团队
2021年12?3?,据慢雾区情报,?位GnosisSafe?户遭遇了严重且复杂的?络钓?攻击。慢雾安全团队现将简要分析结果分享如下。
相关信息
攻击者地址1:
0x62a51ad133ca4a0f1591db5ae8c04851a9a4bf65
攻击者地址2:
0x26a76f4fe7a21160274d060acb209f515f35429c
恶意逻辑实现合约ETH地址:
0x09afae029d38b76a330a1bdee84f6e03a4979359
恶意合约ETH地址MultiSendCallOnly合约:
0x3cb0652856d7eabe51f1e3cceda99c93b05d7cea
Binance Liquid Swap新增JOE/USDT流动资金池:4月3日消息,据币安官方公告,Binance Liquid Swap新增JOE/USDT流动资金池。
另据行情显示,Joe现报0.583 USDT,24H跌幅为7.8%。[2023/4/3 13:41:30]
受攻击的代理合约地址:
0xc97f82c80df57c34e84491c0eda050ba924d7429
逻辑合约地址:
0x34cfac646f301356faa8b21e94227e3583fe3f5f
MultiSendCall合约ETH地址:
0x40a2accbd92bca938b02010e17a5b8929b49130d
攻击交易:
https://etherscan.io/tx/0x71c2d6d96a3fae4be39d9e571a2678d909b83ca97249140ce7027092aa77c74e
持有1000枚以上BTC的地址数量达到1个月高点:金色财经报道,Glassnode数据显示,持有1000枚以上BTC的地址数量达到1个月高点,数量为2152。[2022/8/25 12:46:50]
攻击步骤
第一步:攻击者先是在9天前部署了恶意MultiSendCall,并且验证了合约代码让这个攻击合约看起来像之前真正的MultiSendCall。
第二步:攻击者通过钓??段构造了?个指向恶意地址calldata数据让?户进?签名。calldata??正确的to地址应该是?0x40a2accbd92bca938b02010e17a5b8929b49130d,现在被更改成了恶意合约?ETH地址?MultiSendCallOnly合约0x3cb0652856d7eabe51f1e3cceda99c93b05d7cea。
《“十四五”文化发展规划》鼓励用区块链技术进行版权保护:金色财经消息,近日,中共中央办公厅、国务院办公厅印发了《“十四五”文化发展规划》,其中提到为加强数字版权保护,推动数字版权发展和版权业态融合,鼓励有条件的机构和单位建设基于区块链技术的版权保护平台。[2022/8/17 12:31:08]
由于攻击者获取的签名数据是正确的,所以通过了验证多签的阶段,之后就开始执?了攻击合约的multiSend函数
这时候通过查看攻击合约我们发现此处的修饰器Payable有赋值的情况存在。这时候我们通过对源码的反编译发现:
当payment.version<VERSION这个条件触发的时候每次调?的时候都会对storage进?重新赋值。这个storage是不是特别眼熟?没错我们来看下Proxy合约。
当这笔交易执?完毕时Proxy的storage已经变成0x020014b037686d9ab0e7379809afae029d38b76a330a1bdee84f6e03a4979359。
由于Proxy合约执?的逻辑合约地址masterCopy是从storage读取的,所以Proxy指向的逻辑合约会被攻击者更改为攻击合约。后续攻击者只需等待?户把?够的代币放?此合约,之后构造转账函数把钱取?即可。
我们分析了受攻击的合约的交易记录后,发现该攻击者?常狡猾。
攻击者为了避免被发现,在攻击合约中的逻辑中还实现了保证?户依然能正常使?相关的功能。
反编译攻击者的逻辑合约发现,在攻击合约的逻辑保证了攻击者动?前?户都可以正常使?多签功能。只有当攻击者??调?的时候才会绕过验证直接把?户的钱取?。
MistTrack分析
经MistTrack反追踪系统分析发现,攻击者地址1在11?23号开始筹备,使?混币平台Tornado.Cash获得初始资?0.9384ETH,在?分钟后部署了合约,然后将0.8449ETH转到了攻击者地址2。
攻击成功后,攻击者地址2通过Uniswap、Sushiswap将获利的HBT、DAI等代币兑换为ETH,最后将56.2ETH转到混币平台TornadoCash以躲避追踪。
总结
本次攻击先是使?了钓??段获取了?户的?次完整的多签数据,在利?了delegatecall调?外部合约的时候,如果外部合约有对数据进?更改的操作的话,会使?外部合约中变量存储所在对应的slot位置指向来影响当前合约同?个slot的数据。通过攻击合约把代理合约指向的逻辑指向??的攻击合约。这样就可以随时绕过多签把合约的钱随时转?。
经过分析本次的事件,?概率是?客团队针对GnosisSafeMulti-sig应?的?户进?的钓?攻击,0x34cfac64这个正常的逻辑合约是GnosisSafe官?的地址,攻击者将这个地址硬编码在恶意合约中,所以这?系列的操作是适?于攻击所有GnosisSafeMulti-sig应?的?户。此次攻击可能还有其他受害者。慢雾安全团队建议在访问GnosisSafeMultisig应?的时候要确保是官?的?站,并且在调?之前要仔细检查调?的内容,及早的识别出钓??站和恶意的交易数据。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。