KEN:Pickle Finance被攻击全过程

2020年11月22日,以太坊DeFi项目PickleFinance遭受攻击,损失约2000万DAI。慢雾安全团队跟进相关事件并进行分析,以下为分析简略过程:

1、项目的Controller合约中的swapExactJarForJar函数允许传入两个任意的jar合约地址进行代币的兑换,其中的_fromJar,_toJar,_fromJarAmount,_toJarMinAmount都是用户可以控制的变量,攻击者利用这个特性,将_fromJar和_toJar都填上自己的地址,_fromJarAmount是攻击者设定的要抽取合约的DAI的数量,约2000万DAI。

CFP委员会为加密货币顾问设定了高标准:金色财经报道,注册财务规划师 (CFP) 委员会于12月5日发布了“致CFP专业人士关于加密货币相关资产财务建议的通知”。通知概述了与加密货币投资相关的一系列风险,并列出了财务顾问在决定提供或不提供加密货币投资建议时可以遵守的一些标准。

该报告阐明了CFP委员会的准则和标准,既不禁止顾问就加密提供建议,也不禁止他们不提供任何建议。它强调,财务顾问在提供加密建议时必须遵守信托义务,充分考虑客户的目标、风险承受能力和个人/财务状况。它强调了提供与加密相关的建议所必需的能力标准。[2022/12/23 22:02:08]

2、使用swapExactJarForJar函数进行兑换过程中,合约会通过传入的_fromJar合约和_toJar合约的token()函数获取对应的token是什么,用于指定兑换的资产。而由于_fromJar合约和_toJar合约都是攻击者传入的,导致使用token()函数获取的值也是可控的,这里从_fromJar合约和_toJar合约获取到的token是DAI。

花旗银行选择瑞士公司Metaco进行数字资产托管:6月22日消息,花旗银行选择瑞士加密货币托管公司Metaco进行数字资产托管。托管平台与证券服务进行集成。据花旗银行代表电子邮件显示,花旗目前重点为Token化证券等。

此前消息,花旗支持比特币期货交易,曾于去年11月透露计划雇佣100名员工来加强服务机构客户的数字资产部门。[2022/6/22 1:24:01]

3.此时发生兑换,Controller合约使用transferFrom函数从_fromJar合约转入一定量的的ptoken,但是由于fromJar合约是攻击者控制的地址,所以这里转入的ptoken是攻击者的假币。同时,因为合约从_fromJar合约中获取的token是DAI,然后合约会判断合约里的资金是否足够用于兑换,如果不够,会从策略池中赎回一定量的代币然后转到Controller合约中。在本次的攻击中,合约中的DAI不足以用于兑换,此时合约会从策略池中提出不足的份额,凑够攻击者设定的2000万DAI。

Solana生态钱包Solflare宣布支持Keystone硬件钱包:6月11日消息,Solana 生态钱包 Solflare 宣布支持 Keystone 硬件钱包。Keystone 的硬件支持用户使用二维码转账,并有效防止用户“盲目签名”遭遇钓鱼攻击。[2022/6/11 4:18:01]

4.兑换继续,Controller合约在从策略池里提出DAI凑够攻击者设定的2000万DAI后,会调用_fromJar的withdraw函数,将攻击者在第三步转入的假ptokenburn掉,然后合约判断当前合约中_toJar合约指定的token的余额是多少,由于_toJar合约指定的token是DAI,Controller合约会判断合约中剩余DAI的数量,此时由于第三步Controller合约已凑齐2000万DAI,所以DAI的余额是2000万。这时Controller合约调用_toJar合约的deposit函数将2000万DAI转入攻击者控制的_toJar合约中。到此,攻击者完成获利。

来源:金色财经

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

金星链

[0:15ms0-1:110ms