区块见闻 区块见闻
Ctrl+D收藏区块见闻
首页 > DOGE > 正文

DAI:首发 | CertiK:Pickle Finance损失近2000万美元攻击事件分析_PICK

作者:

时间:

北京时间11月22日凌晨2点37分,CertiK安全研究团队通过Skynet发现PickleFinance项目遭到攻击,共损失约1975万枚价值近一亿三千万人民币DAI。

自9月10日PickleFinance开始挖矿起,一直没有什么存在感。

有了食物大军的大幅涨跌经验在前,投资者本身对于异军突起的Pickle项目保持着一定程度的警惕。

但自从9月14日获得V神亲自站台,酸黄瓜在汹涌的DeFi浪潮中凭借其DeFi新玩法及各种背书,可谓是平地起价完成了10倍的涨幅。

“刚用5美元的价格把手里价值1万美元的PICKLE卖掉,睡了一觉它的价值就变成了60美元???这???”

正当各投资者摩拳擦掌预备好入手这一新型食物代币或是已经深陷其中,11月23日传来的消息却令投资者们大惊失色。

据Messari数据显示,自PickleFinance被黑客攻击后,其原生代币PICKLE暴跌50.12%,直至10.17美元,此后稍有回升,截止当前其市值为11.41美元。

首发 | imKey正式支持Filecoin,成为首批Filecoin硬件钱包:12月1日,随着imToken2.7.2版本上线,imKey同步支持Filecoin,成为业内首批正式支持FIL的硬件钱包。Filecoin作为imKey多链支持的优先级项目之一,成为继BTC、ETH、EOS和COSMOS四条公链后的第五条公链。

据悉,imKey团队已在Q4全面启动多链支持计划,计划实现imToken已经支持的所有公链项目,本次imKey升级更新,无需更换硬件,不涉及固件升级,通过应用(Applet)自动升级,即可实现imKey对Filecoin的支持及FIL的代币管理。[2020/12/2 22:52:32]

下文将为你带来本次攻击事件详情分析。

攻击始末

整个攻击流程如下:

第一步:攻击者通过StrategyCmpdDAIV2.getSuppliedUnleveraged()的函数获得当前在位于地址0xcd892a97951d46615484359355e3ed88131f829d的StrategyCmpdDAIV2合约中有多少可以被取出的DAI数目,这里记为Amount_A。

首发 | 火币集团全球业务副总裁:监管将决定区块链技术和加密货币的落地速度:1月21日,火币集团全球业务副总裁Ciara Sun在达沃斯世界经济论坛上表示,对区块链和数字货币的监管态度,2019年是重要的一年。在美国,到2019年底,针对加密货币和区块链政策有21项法案,这些法案包括税收问题,监管结构,跟踪功能和ETF批准,哪些联邦机构监管数字资产等。欧盟(EU)在2020年1月10日实施了一项新法律,要求加密货币平台采取更严格的反做法。瑞士,日本,立陶宛,马耳他和墨西哥通过法律,要求交易所必须根据KYC和AML准则获得许可。中国,土耳其,泰国等国家正在计划自己的中央银行数字货币(CBDC)。而监管将决定区块链技术和加密货币的落地速度。[2020/1/22]

第二步:攻击者调用位于0x6847259b2b3a4c17e7c43c54409810af48ba5210地址处的ControllerV4智能合约中的swapExactJarForJar()函数,并在调用时传入1号和2号脏jar,Amount_A以及0,,作为参数。

首发 | 此前18000枚BTC转账是交易所Bithumb内部整理:北京链安链上监测系统发现,北京时间10月24日,17:07分发生了一笔18000枚BTC的转账,经分析,这实际上是交易所Bithumb的内部整理工作,将大量100到200枚BTC为单位的UTXO打包成了18笔1000枚BTC的UTXO后转入其内部地址。通常,对各种“面值”的UTXO进行整数级别的整理,属于交易所的规律性操作。[2019/10/24]

swapExactJarForJar()函数

其中1号脏jar和2号脏jar由于是攻击者自己部署的,符合IJar接口的智能合约,因此其中的token()函数的逻辑实现以及其他函数都是由攻击者自己决定的。因为PickleFinanceswapExactJarForJar()函数没有对传入的jar是否为官方的智能合约地址进行验证,因此该步骤得以成立。

swapExactJarForJar()函数中传入的jar可以定义代币的类型

调用withdrawForSwap()函数?

公告 | 火币全球站6月29日16:00全球首发 Project PAI:火币全球站定于新加坡时间6月29日16:00 Project PAI (PAI) 充值业务。7月2日16:00在创新区开放PAI/BTC, PAI/ETH交易。7月6日16:00开放 PAI提现业务。[2018/6/29]

随着swapExactJarForJar()函数的执行,当执行到上图289行的位于swapExactJarForJar()函数中的withdrawForSwap()函数时,经过一系列函数调用,最终执行位于0xcd892a97951d46615484359355e3ed88131f829d的deleverageToMin()函数以及deleverageUntil()函数,将当前StrategyCmpdDAIV2中可以被取出的代币(Amount_A)转移到位于0x6949bb624e8e8a90f87cd2058139fcd77d2f3f87地址的PickleJar智能合约中。

?deleverageToMin()函数以及deleverageUntil()函数

IMEOS首发 BM表示EOS合约具有整数溢出保护:据金色财经合作媒体IMEOS报道:近日ETH出现多个ERC20智能合约的处理溢出错误,BM在推特上发表评论:新的ETH契约Bug可能会破坏整个Token的供应,让持有者留下无价值Token.这就算为什么代码不能成为法律,随即表示EOS erc合约不容易受到这种攻击。而EOS官方群也有人表示担忧EOS是否具有整数溢出保护?BM回应:有很多C ++模板类可以封装类型并检查溢出。[2018/4/25]

StrategyCmpdDAIV2智能合约向PickleJar智能合约转移代币的内部交易截图

PickleJar智能合约中的earn()函数

第三步:调用位于0x6949bb624e8e8a90f87cd2058139fcd77d2f3f87地址的PickleJar智能合约中的earn()函数(如上图所示)。

总共调用三次,目的是将位于当前PickleJar中的pDAI数目的DAI,从0x6b175474e89094c44da98b954eedeac495271d0f地址转移到位于0x6847259b2b3a4c17e7c43c54409810af48ba5210地址处的ControllerV4智能合约中,并在887行通过调用ControllerV4合约中的earn()函数(如下图所示),在下图152行中通过deposit()函数。

从而实现调用0xcd892a97951d46615484359355e3ed88131f829d的StrategyCmpdDAIV2合约中的deposit()函数,将PickleJar中的pDAI数目的cDAI铸造给StrategyCmpdDAIV2。

ControllerV4智能合约中的earn()函数

StrategyCmpdDAIV2合约中的deposit()函数

第四步:再次调用位于0x6847259b2b3a4c17e7c43c54409810af48ba5210地址处的ControllerV4智能合约中的swapExactJarForJar()函数,并在调用时传入3号和4号脏jar,以及0,0,CurveProxyLogic智能合约地址,0x20作为参数。

此处0x20是一个注入参数,目的是为了与CurveProxyLogic智能合约地址配合,执行位于0x6186e99d9cfb05e1fdf1b442178806e81da21dd8地址的CurveProxyLogic智能合约中的add_liquiditya()函数。

3号脏jar:

0xa2da08093a083c78c21aeca77d6fc89f3d545aed

4号脏jar:

0xa445e12d69e8bd60290f6935d49ff39ba31c6115

CurveProxyLogic智能合约地址:0x6186e99d9cfb05e1fdf1b442178806e81da21dd8

swapExactJarForJar()函数使用CurveProxyLogic智能合约地址和注入参数来执行指定函数

CurveProxyLogic智能合约中的add_liquiditya()函数

在此步骤之后,在第三步中存储在StrategyCmpDAIV2被从StrategyCmpDAIV2智能合约中转移到ControllerV4智能合约处。

至此所有可以被取出的代币被以cDai的形式存储在ControllerV4智能合约中,并且攻击者拥有取出cDAI的资格。

第五步,攻击者调用位于地址0x5d3a536e4d6dbd6114cc1ead35777bab948e3643的CErc20Delegator智能合约中的redeemUnderlying()函数,内部调用了位于0xbb8be4772faa655c255309afc3c5207aa7b896fd地址处的CErc20中的redeemUnderlying(),redeemUnderlyingInternal()以及redeemFresh()函数。

最终将所有获得的cDAI转换成DAI,提出所有DAI并完成攻击。

CErc20Delegator中的redeemUnderlying()函数

CErc20中的redeemUnderlying()函数

CErc20中redeemUnderlyingInternal()函数

安全建议

多次的DeFi攻击事件,表明了一个事实:“已审计”并不意味着其拥有了安全保证。

PickleFinance在10月或更早通过的安全审计,并不代表其新增的智能合约均得到了实时的安全检测。

高收益伴随着高风险,此次漏洞的爆发同样也是一个警示。

完备的安全保障=安全审计实时检测资产保障=CertiK审计服务CertiK实时检测安全预言机CertiK快速扫描CertiKShield去中心化资产保障资金池

CertiK的一系列安全服务及工具,覆盖了项目及用户的资产安全需求。

如您有审计需求,欢迎搜索微信关注CertiK官方微信公众号,点击公众号底部对话框,留言免费获取咨询及报价!??

标签:JARDAIPICPICKJarvis AIYFDAIbitopicligand翻译pickle币最新消息

DOGE热门资讯
Filecoin:Filecoin主网启动以后未来是什么发展趋势?_coinw币赢下载

Filecoin的终极意义10月15日22点44分,Filecoin区块高度达到148888,主网正式启动.

OIN:UBIEX.CO上线UTX交易的公告_COINW是什么

尊敬的UBIEX用户: UBIEX将上线UTX交易,并开通UTX/UBNK、UTX/UBG交易对 具体时间如下: UTX交易:11月20日20:00(UTC8)聚币Jubi新上线币种A5T 开盘.

DNA:区块链赋能医疗行业,区块链医疗应用场景开发_区块链

区块链的发展在医疗行业的变化更是令人惊叹,“区块链+医疗”推动了医疗体系的进步,缓解了医患关系,提高了就诊效率,成为医疗机构的首选项目.

HTT:Gate.io今日直播新鲜看,市场分析、投资教学等11个节目即将开播_TPS

Gate.io直播间作为行业内首个交易所内置直播功能,通过多样性的直播形式为平台用户带来具有深度、有趣、开放的信息内容.

:小安论币:炒币亏损的局面时要有正确的心态_

为什么你会亏损,下面有没有你亏损的原因?1.制定合理的交易计划,根据自己的资金量,制定详细的盈利方案和风控方案,不要连个计划都没有就盲目的多空交易.

NCE:巴比特DeFi早知道_Lendefi

昨日要闻回顾1.前三大DeFi贷款协议平台Aave,Compound和MakerDAO未偿还加密贷款价值已超过30亿美元2.DeFi创新项目MEME将上线艺术拍卖项目TheRugPull.