SharkTeam:Prisma Finance被攻击事件分析

2024年3月28日,Prisma Finance遭受闪电贷攻击,项目方损失约1221万美元。

20240402162014331image.png

SharkTeam对此事件进行了技术分析,并总结了安全防范手段,希望后续项目可以引以为戒,共筑区块链行业的安全防线。

一、攻击交易分析

攻击者1:0x7e39e3b3ff7adef2613d5cc49558eab74b9a4202(简记为0x7e39)

攻击合约1:0xd996073019c74b2fb94ead236e32032405bc027c(简记为0xd996)

攻击者2:0x7fe83f45e0f53651b3ed9650d2a2c67d8855e385

攻击合约2:0x4148310fe4544e82f176570c6c7b649290a90e17

被攻击的目标合约:0x1cc79f3f47bfc060b6f761fcd1afc6d399a968b6

攻击包含16笔交易,以第一笔攻击交易为例:

0x00c503b595946bccaea3d58025b5f9b3726177bbdc9674e634244135282116c7

攻击流程如下:

1. 读取地址0x56a201b872b50bbdee0021ed4d1bb36359d291ed(简记为0x56a2)在目标合约中的所有抵押物和债务。

20240402162028308image.png

返回结果如下:

20240402162035243image.png

地址0x56a2在目标合约中抵押物共有1,745 wstETH,总债务共有1,442,100 mkUSD。

2. 攻击者0x7e39通过攻击合约0xd996调用mkUSD债务合约中的flashLoan函数。

20240402162047257image.png

参数receiver设置为MigrateTroveZap,amount为上面查询到的全部债务。

20240402162059315image.png

然后,在flashLoan函数中会调用receiver(这里是MigrateTroveZap)中的onFlashLoan函数。

20240402162108042image.png

onFlashLoan函数通过闪电贷先偿还原来的所有债务,提取抵押物到receiver,然后receiver将一定数量的抵押物重新抵押,并借取一定的债务。其中主要调用了2个函数:

(1)closeTrove函数,偿还债务并将所有的抵押物(1745.08 swtETH)从troverManager提取到receiver(这里是MigrateTroveZap合约);

20240402162118182image.png

(2)openTrove函数,由receiver将463.18 wstETH重新抵押到troverManager中,并负债1,443,598 mkUSD。

20240402162124982image.png

从上面数据可以看出,flashLoan函数执行完成后,receiver中仍然保留了从troverManager中提取的属于地址0x56a2的抵押物,数量约为1745.08 – 463.18 = 1281.90 wstETH。

3. 攻击者0x7e39通过攻击合约0xd996从Balancer中通过闪电贷借取了1 wstETH。

20240402162133813image.png

然后,抵押1 wstETH并借取债务2000 mkUSD,加上fee,共计负债2200 mkUSD。

20240402162141046image.png

4. 与步骤2类似,调用mkUSD债务合约中的flashLoan函数,这里参数receiver仍然设置为MigrateTroveZap,amount为上一笔质押1 wstETH后的全部债务,即2000 mkUSD。在FflashLoan函数中会调用receiver中的onFlashLoan函数,然后调用closeTrove和openTrove函数。

20240402162149855image.png

20240402162152773image.png

只是,这里closeTrove和openTrove函数中的参数account不再是上面的地址0x56a2,而是质押了1 wstETH的攻击合约0xd996。

(1)closeTrove函数,偿还债务并将所有的抵押物(1 swtETH)从troverManager提取到receiver(这里仍然是MigrateTroveZap合约)。此时receiver中共有1281.90 +1=1282.90 wstETH.

20240402162206373image.png

(2)openTrove函数,由receiver将1282.80 wstETH(几乎全部)重新抵押到troverManager中,并负债2001.8 mkUSD。

20240402162215268image.png

实际上,这里抵押物中1281.80 wstETH是不属于攻击合约0xd996,而是属于上面的地址0x56a2。

5. 最后,攻击者0x7e39通过攻击合约0xd996单独调用closeTrove函数,将抵押的1282.80 wstETH 提取到了攻击合约0xd996中。

20240402162224877image.png

20240402162230775image.png

偿还闪电贷后,攻击者仍获利1281.80 wstETH,约2.30M USD。

20240402162241932image.png

二、漏洞分析

本次事件的根本原因是项目合约存在逻辑和权限校验,使得攻击者可以利用该漏洞获取其他账户地址的质押资产。

攻击者最终获得的wstETH是原本地址0x56a2在troverManager合约中的抵押物,通过mkUSD合约的flashLoan函数,自定义MigrateTroveZap合约中onFlashLoan函数的参数,利用 MigrateTroveZap将其转变为攻击合约的抵押物,然后将其提取出来。

攻击者通过mkUSD合约中的flashLoan函数以及MigrateTroveZap合约中的onFlashLoan函数操纵其他账户地址的抵押和提取。

20240402162254209image.png

20240402162304089image.png

(1)flashLoan函数中缺少对参数receiver地址的校验,因为onFlashLoan函数中receiver会接收account的所有抵押物,因此需要对receiver进行可信的校验;

(2)onFlashLoan函数中缺少对account地址的校验,因为closeTrove和openTrove函数都是操作的account的资产,因此需要对account增加权限方面的校验;

除了对这两个地址参数的校验外,可能还需要对flashLoan函数中的数量参数以及实现逻辑进行校验。

三、安全建议

针对本次攻击事件,我们在开发过程中应遵循以下注意事项:

(1)项目在设计和开发过程中,要保持逻辑的完整性和严谨性,尤其是涉及到资产的转移过程中,更要加强对函数调研权限的校验,保证调用者、调用函数、函数参数、转账逻辑等都是安全可信的。

(2)项目上线前,需要找专业的第三方审计团队进行合约审计。

About Us

SharkTeam的愿景是保护Web3世界的安全。团队由来自世界各地的经验丰富的安全专业人士和高级研究人员组成,精通区块链和智能合约底层理论。提供包括风险识别与阻断、智能合约审计、KYT/AML、链上分析等服务,并打造了链上智能风险识别与阻断平台ChainAegis,能有效对抗Web3世界的高级持续性威胁(Advanced Persistent Threat,APT)。已与Web3生态各领域的关键参与者,如Polkadot、Moonbeam、polygon、Sui、OKX、imToken、Collab.Land等建立长期合作关系。

官网:https://www.sharkteam.org

Twitter:https://twitter.com/sharkteamorg

Telegram:https://t.me/sharkteamorg

Discord:https://discord.gg/jGH9xXCjDZ

WEEX唯客是一家安全易用的加密货币交易所,由新加坡顶级区块链投资机构斥资1亿美元打造,注册用户超百万,日均交易额超15亿美元,已获得美国MSB、加拿大MSB、SVGFSA金融牌照。

WEEX唯客平台所有数据皆于海外数据库严格保存,服务器多地部署和备份,并采用满足银行级安全需求的亚马逊AWS及高速高稳定性的香港CDN,为全球用户提供最安全、最专业、最具隐私性的交易服务。

WEEX唯客是全球交易深度最好的合约交易所之一,位居CMC交易所流动性排名前五,订单厚度、价差领先同行,微秒级撮合,零滑点、零插针,最大程度降低交易成本及流动性风险,让用户面对极端行情也能丝滑成交。

在WEEX唯客,用户不仅能享受行业最低的交易手续费(Taker 0手续费,Maker 0.06%),还可零门槛一键跟随专业交易员操作,复制高手的交易策略,平台严格甄选数5,000多名优秀交易员供用户挑选。

为保障用户资金安全,WEEX唯客设立了1,000 BTC投资者保护基金,以在非用户自身原因的情况下有效补偿用户资金出现的意外损失,并公示资金池热钱包地址,让用户交易安心无忧。

WEEX官网:weex.com

你也可以在 CMCCoingecko非小号X (Twitter)中文 X (Twitter)YoutubeFacebookLinkedin微博 上关注我们,第一时间获取更多投资资讯和空投福利。

在线咨询

WEEX华语社群:https://t.me/weex_group

WEEX英文社群:https://t.me/Weex_Global

WEEX唯客是一家安全易用的加密货币交易所,由新加坡顶级区块链投资机构斥资1亿美元打造,注册用户超百万,日均交易额超15亿美元,已获得美国MSB、加拿大MSB、SVGFSA金融牌照。

WEEX唯客平台所有数据皆于海外数据库严格保存,服务器多地部署和备份,并采用满足银行级安全需求的亚马逊AWS及高速高稳定性的香港CDN,为全球用户提供最安全、最专业、最具隐私性的交易服务。

WEEX唯客是全球交易深度最好的合约交易所之一,位居CMC交易所流动性排名前五,订单厚度、价差领先同行,微秒级撮合,零滑点、零插针,最大程度降低交易成本及流动性风险,让用户面对极端行情也能丝滑成交。

在WEEX唯客,用户不仅能享受行业最低的交易手续费(Taker 0手续费,Maker 0.06%),还可零门槛一键跟随专业交易员操作,复制高手的交易策略,平台严格甄选数5,000多名优秀交易员供用户挑选。

为保障用户资金安全,WEEX唯客设立了1,000 BTC投资者保护基金,以在非用户自身原因的情况下有效补偿用户资金出现的意外损失,并公示资金池热钱包地址,让用户交易安心无忧。

WEEX官网:weex.com

你也可以在 CMCCoingecko非小号X (Twitter)中文 X (Twitter)YoutubeFacebookLinkedin微博 上关注我们,第一时间获取更多投资资讯和空投福利。

在线咨询

WEEX华语社群:https://t.me/weex_group

WEEX英文社群:https://t.me/Weex_Global

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情

    暂无评论内容

随即推荐
你早该这么玩Excel视频课程-H5资源网

你早该这么玩Excel视频课程

原来Excel真的这么好玩!我还以为像我这种菜鸟,跟这些方格子就无缘了呢。现在Excel变得听话了,效率也提高了很多,我再也不用“嗷嗷待哺”地等待着高手来帮我调表了,你早该这么玩 Excel!本课...
12个月前
03111
《小小诺亚:天堂之子》中文版-H5资源网

《小小诺亚:天堂之子》中文版

游戏介绍  名为诺娅的天才炼灵术士少女与名为希帕尔的猫一同踏上神秘古代遗迹的探索之旅! 上手简单又趣味无穷的动作游戏,可利用40种以上的伙伴组合出只属于自己的连招! 
2年前
03013
严谨稳重毕业设计答辩PPT模板-H5资源网

严谨稳重毕业设计答辩PPT模板

严谨稳重毕业ppt设计幻灯片ppt pptX 大小:1.40MB 日期:2019-05-05 效果:静态 下载地址1 下载地址2
10个月前
0419
《异星铁路》v4.7.42.1中文版-H5资源网

《异星铁路》v4.7.42.1中文版

游戏介绍 《异星铁路》是一款在外星殖民地上使用铁路来运送资源与电力工业的管理模拟游戏。作为这颗星球的管理员,你需要在一次灾难性的基础设施崩坏之后努力恢复工业生产。
7个月前
0356
重装系统软装机吧怎么用-H5资源网

重装系统软装机吧怎么用

重装系统软装机吧怎么用?最近有网友想给自己的电脑重装系统,朋友推荐使用装机吧工具进行重装,但是自己不会操作,下面小编就给大家带来重装系统软装机吧使用方法,一起来看看吧。
11个月前
0248
精简版虚拟机VMware Workstation Player 17.5.2.23775571-H5资源网

精简版虚拟机VMware Workstation Player 17.5.2.23775571

VMware Player是VMware出品的精简版虚拟机工具多数 Windows 用户都想尝试一下其他操作系统的魅力,但又怕安装麻烦,
3天前
02914
限制网站只能在QQ微信内置浏览器打开代码-H5资源网

限制网站只能在QQ微信内置浏览器打开代码

前言: 之前发过防洪的源码,因为一些需要,昨天又想起来了之前见到的一些“学习”网站,QQ和微信中能正常打开,浏览器中打不开,这种网站用处多多,所以,我就改了一下之前的那个防洪源码,改成...
2年前
02815
矩阵系统,全新版本(市面没有的版本)-H5资源网

矩阵系统,全新版本(市面没有的版本)

矩阵营销系统多平台多账号一站式管理,一键发布作品。智能标题,关键词优化,排名查询,混剪生成原创视频,账号分组,意向客户自动采集,智能回复,多账号评论聚合回复,免切换,免登陆发布&hel...
3个月前
0245
羊了个羊在线刷通关网站源码-H5资源网

羊了个羊在线刷通关网站源码

羊了个羊在线刷通关网站源码 在线挂机可一直刷 html自适应源码
2年前
02414
xp系统一键安装教程-H5资源网

xp系统一键安装教程

随着时代的发展,电脑的使用得到大量的普及,日常生活与工作中也基本上都需要电脑协助我们完成一些事情。微软已经对xp系统停止了更新,xp系统是很经典的版本,但是它很稳定,所以有些网友任然想...
12个月前
04312