危险的授权转账:Li.Finance 攻击事件始末

前言

北京时间3月20日晚,知道创宇区块链安全实验室?监测到以太坊上分布式跨链协议。Li.Finance 受到了攻击,攻击者执行了 37 次call注入,获取了多个钱包中约 60 万美元的资产(204个ETH)。此次资产损失并没有非常大,但项目方对于攻击的处理非常积极并值得学习与肯定(见后文),目前项目方已补偿了协议损失并修复后重新部署了协议。

知道创宇区块链安全实验室?第一时间跟踪本次事件并分析。

分析

1.攻击者相关信息

攻击tx:

0x4b4143cbe7f5475029cf23d6dcbb56856366d91794426f2e33819b9b1aac4e96

特朗普:加密货币是一件非常危险的事情,总有一天会爆炸:金色财经报道,美国前总统特朗普在周末接受采访时,对加密货币、他妻子的NFT平台以及他的新社交媒体平台Truth Social发表了评论。特朗普表示,从不喜欢它,因为喜欢拥有美元。认为货币应该是美元,所以从来不是一个粉丝。但它的扩散越来越大,没有人对此采取任何措施。加密货币是一件非常危险的事情,总有一天会爆炸,此外,在谈到他妻子的NFT计划时,特朗普表示。她会做得很好,她有很好的想象力。(news.bitcoin)[2021/12/22 7:55:07]

被攻击合约:

0x5A9Fd7c39a6C488E715437D7b1f3C823d5596eD1--代理合约

0x73a499e043b03fc047189ab1ba72eb595ff1fc8e--逻辑合约

OCC代理署长:稳定币领域创新“太多”是危险的:金色财经报道,当谈到稳定币的开发时,美国货币监理署(OCC)代理署长Michael Hsu表示“创新太多不是你想要的”。Hsu认为,在处理人们的金钱问题时,该领域的创新者过多会带来风险。Hsu称:“如果你在那个领域创新太多,你会得到各种各样的结果,其中一些不会很好。”[2021/11/9 6:39:48]

攻击者地址: ?

0xC6f2bDE06967E04caAf4bF4E43717c3342680d76 -- 部署地址

0x878099F08131a18Fab6bB0b4Cfc6B6DAe54b177E -- 收款地址

2.攻击流程

攻击调用流程

攻击者构造 payload 并调用被攻击合约 0x5a9fd7c3 的 swapAndStartBridgeTokensViaCBridge 函数:

俄罗斯央行行长:加密投资是“最危险”投资策略:俄罗斯央行行长 Elvira Nabiullina近日在接受该国《共青团真理报》(Komsomolskaya Pravda)采访时表示投资加密资产是最危险的投资策略,她解释说,“加密资产具有投机性,无疑是最危险的投资策略,加密货币价格波动很大,损失也很惊人。俄罗斯中央银行从来不提供投资建议,但在这种特殊情况下,我认为绝对不应该投资加密货币。”Elvira Nabiullina认为,银行存款是最好储蓄投资策略之一,她补充说道:“许多人也会涌入古诗,认为投资股票也能获得更高收益。但人们应该记住,股市也存在风险,必须仔细研究投资产品、批判性地看待广告。”(finbold)[2021/6/21 23:53:55]

比特币安全专家:比特币不是最危险的货币实验:金色财经报道,比特币安全专家Andreas Antonopoulos最近在播客中分享了他对美元不确定的未来的看法,并分析了比特币能否解决这一问题。他指出,在比特币支持者中有两个观点各异的大阵营。其中,货币和经济观点是关于健全的货币、稀缺、有限的供应和低通胀。另一阵营认为比特币是一种开放的国际货币,在任何时间、任何地点都可以使用,无需任何授权,有无银行账户的人都可以使用,可以创造经济包容性。而Antonopoulos认为比特币的货币政策并没有人们想象的那么尖锐,他进一步断言,比特币并不是人们所描绘的最大、最危险的货币实验。如果比特币的货币政策薄弱且在金融危机期间无法为世界提供支持,那么其是否就不会被加密社区作为当前情况的解决方案而推动。[2020/4/27]

具体使用的 Payload 如下--图中选中部分即为利用授权转账(transferFrom)部分的 payload:

经济学家认为比特币或将面临崩溃的危险:经济学家罗格夫(Kenneth Rogoff)预测,比特币价格将要面临崩溃。他认为数字货币目前的高估值取决于其“几乎匿名”,这种特点让比特币市场可以进行各种犯罪或非法活动,包括贩、无牌销售等,而一旦政府加强监管力度,进行实名认证或创造自己的数字货币,比特币的泡沫将会结束。[2017/11/30]

调用一次正常50刀的跨链桥功能(为了能正常调用 swapAndStartBridgeTokensViaCBridge 函数):

在 payload 中包括多个call方法(调实际用transferFrom)。让 0x5a9fd7c3 调用 37 个call,借此利用多个钱包对于 0x5a9fd7c3 合约的授权(approve)将钱包资产转账到攻击者地址:

后续执行正常的跨链桥逻辑 _startBridge(_cBridgeData); 这也是为什么第一个 swap 是正常的,这样才能让后续逻辑正常执行下去:

3.漏洞细节

导致本次问题的根本原因被攻击合约0x5a9fd7c3的逻辑合约存在一个批量让call 调用传入数据的函数 swapAndStartBridgeTokensViaCBridge:

该合约将会取出payload中的多个_swapData 数据结构并调用,LibSwap.swap(...);实现如下:

借此,攻击者利用该合约的 call 将各个钱包对 0x5a9fd7c3 合约的代码授权转走了多个钱包中的各种代币。

4.项目方进展

在事件发生后,项目方第一时间对合约可能的方法进行了停用,并为其审计和安全性问题进行致歉:

而后,项目方还联系了黑客,希望能与其取得联系并和平解决:

同时,最快的时间将漏洞合约修复后上线:

并将钱包(以Matic为例)对于之前被攻击合约的授权取消,对新的合约进行了重新授权:

最后,将用户资产进行补回:

同时我们关注到,其在 polygon 链上的合约也已实现了新的部署:

总结

此次攻击的根本原因是项目方对于 swapAndStartBridgeTokensViaCBridge 合约的实现过度自由化所导致的 call 调用注入,但项目方积极的面对问题的态度和后续补救的及时性值得学习和肯定。不贵于无过,而贵与改过。

但我们仍希望能将错误扼杀在发生之前,应从他人的错误中学习并避免自己未来的错误,正如 Li.Finance 所说的那样:“我们的使命是最大化用户体验,现在我们痛苦地了解到,为了遵循这种精神,我们的安全措施必须大幅改进。”

近期,各类合约漏洞安全事件频发,合约审计、风控措施、应急计划等都有必要切实落实。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

银河链

NEAR金色趋势丨BTC反弹新高 注意这一压制线

金色财经行情播报 | BTC重回高位持续震荡整理:据火币行情显示,比特币本周五在美国公布非农业人口7月就业数据后,比特币出现了快速的回调行情,从11,750USDT一线快速下探至最低11,322.1USDT.

Uniswap金色趋势丨BTC反弹结束了还是低吸的机会?

上方周线0.618一带有一定压力,近期反弹主要还是受制于这一带压制,不过周线已经突破前顶下降通道,近期日线级别的调整对于周线来说,刚好完成突破回踩的动作,属于健康走势,下方MACD指标线即将金叉,这与13年牛市走势比较相似.

屎币HashKey:全景式解读 DeFi 永续衍生品生态版图与发展脉络

随着永续合约底层性能的限制突破,复杂链上衍生品策略组合开始被采用,永续期权或将成为新的交易者认可的工具。 永续衍生品发展脉络 永续衍生品发展的第一阶段是反向永续合约,即 Bitmex 在 2016 年发展出来的比特币反向永续合约.

[0:15ms0-1:992ms