慢雾:假钱换真钱 揭秘 Pickle Finace 被黑过程

据慢雾区情报,2020 年 11 月 22 日,以太坊 DeFi 项目 Pickle Finance 遭受攻击,损失约 2000万DAI。慢雾安全团队第一时间跟进相关事件并进行分析,以下为分析简略过程

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

俄罗斯议会将讨论加密资产合法化问题:俄罗斯议会下院国家杜马网站称,将成立一个工作组讨论加密货币的合法化问题。自由民主党的Andrei Lugovoi就此准备了一份法案。Lugovoi称,俄罗斯加密货币矿商每年赚20亿美元,却无需缴税;由于缺乏监管,执法当局也无法解决加密货币相关的犯罪。(财联社)[2021/11/11 21:43:40]

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

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

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

总结:此次攻击中,攻击者通过调用 Controller 合约中的 swapExactJarForJar 函数时,伪造  _fromJar 和 _toJar 的合约地址,通过转入假币而换取合约中的真 DAI,完成了一次攻击的过程。

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

DAI数字货币发展前景看好 但还需要实践中检验

由《财经》杂志主办的“财经2021年会”日前在北京召开,来自海内外的政商学界人士,通过线上与线下相结合的方式,就当前全球经济领域热点问题进行了讨论与展望。在今年的财经年会上,数字货币的应用与发展受到了格外关注。

比特币交易解读数字人民币相关的法律问题

作者按 数字人民币试点的城市和场景正在进一步扩大,与数字人民币相关的法律问题,有些已经显而易见,有些逐步显现,有些若隐若现,还有些隐而不见。 正文 自2019年6月Facebook发布Libra白皮书之后,各国和世界经济组织对央行数字货币(CBDC)的研究和探索进度明显提速。

USDC金色观察丨浅谈加密艺术收藏之道

金色财经 区块链11月23日讯     随着区块链技术的发展,数字艺术也逐渐开始艺术化。而目前数字艺术行业惊人的增长速度已让加密领域里的每个人都感到了惊讶。现在,我们不得不承认加密艺术与传统艺术一样都占有非常重要的地位了,而数字艺术市值肯定还将不断增长,超过实体艺术行业也将是指日可待的事情。  谈到实体艺术,在这不得不提一个真实的故事。

[0:0ms0-0:515ms