“科学家”的盛宴:Cheese Bank被带走的330万美元

“科学家”的盛宴:Cheese Bank被带走的330万美元

今年11月,去中心化金融(DeFi)总锁仓量再创新高,突破16亿美元。,宣称人人公平可参与,凭借吸纳百亿资金入场在今年备受瞩目,但与此同时出现了一群人,他们依靠者技术实力和知识门槛专薅 DeFi 的羊毛,这群人被中文币圈中戏称为 “科学家”。

据PeckShield统计,自今年起,已发生多起“科学家”薅 DeFi 羊毛的安全事件。今年2月,有“科学家”利用DeFi 贷款协议 bZx 通过一笔交易获取十几万账面收益;10月,攻击者利用闪电贷攻击 Harvest.Finance 协议,使其损失高达 3380 万美元,以及11月攻击者利用闪电贷攻击 Value DeFi 的 MultiStablesVault 池子,导致平台亏损价值近 740 万美元的 DAI。

DeFi 中的“科学家”可类比为互联网的技术羊毛党。在移动互联网补贴大战中,职业羊毛党应运而生。一个手机号只会注册一次享受一次优惠,这些职业羊毛党则开辟了一条养卡、注册账号、代收短信验证码、薅羊毛的产业链。

而在 DeFi 的世界里,“科学家”则把 “借款、转移(执行)、还款” 都编程到一笔发往智能合约的交易里,以此来实现以极低甚至零成本在各个 DeFi 协议之间进行高额套利,或者利用可组合性的漏洞进行攻击盗取巨额资金。

PeckShield 近日发现,“科学家”于北京时间11月7日凌晨3时22分,利用闪电贷(Flash loan)通过一笔交易攻击一家去中心化数字银行 Cheese Bank 获利 330 万美元。

通过 dYdX 闪电贷贷出21,000 枚ETH

随后,在 UniswapV2 中将 50 枚WETH 兑换为 107,000 枚CHEESE (Cheese Bank 通证),此时 CHEESE 的单价为 0.00047 ETH/枚(在 UniswapV2 协议中可将 ETH 1:1 转换为 WETH,同时WETH 也可 1:1 转换为 ETH ),攻击者剩余 20,950 枚ETH;

“科学家”的盛宴:Cheese Bank被带走的330万美元

在 UniswapV2 中将 50 枚WETH 兑换为 107,000 枚CHEESE

接下来,攻击者在 UniswapV2 中抵押 107,000 枚CHEESE 和 78 枚ETH 来提供交易流动性,同时获得 UniswapV2 上自动生成的 UNI_V2 LP 凭证。UNI_V2 LP 凭证是流动性提供者(LP)在 UniswapV2 上提供流动性并提取相应资产的唯一质押凭证。此时攻击者剩余 20,871 枚ETH(包含交易手续费);

“科学家”的盛宴:Cheese Bank被带走的330万美元

在 UniswapV2 中抵押 107,000 枚CHEESE 和 78 枚ETH 提供交易流动性

据悉,Cheese Bank 于今年10月推出借贷协议 2.0 版本,2.0 版本支持创新的流动性凭证(LP Tokens)抵押借贷功能。攻击者在上一步获取 UNI_V2 LP 凭证,有利于他接下来在 Cheese Bank 上贷出其他加密资产。

攻击者进一步把所获取的抵押品 UNI_V2 LP 凭证转换为 sUSD_V2 凭证,这一步有利于攻击者以 UNI_V2 LP 凭证作为抵押品在 Cheese Bank 上贷出稳定币;

“科学家”的盛宴:Cheese Bank被带走的330万美元

把所获取的抵押品 UNI_V2 LP 凭证转换为 sUSD_V2 凭证

随后,攻击者在 UniswapV2 中将 20,000 枚ETH 兑换为 288,000 枚CHEESE,这一步会影响 UniswapV2 上 CHEESE 池子的平衡,进而抬高 CHEESE 的价格,此时 CHEESE 的单价为 0.069 ETH/枚(相较于此前 0.00047 ETH/枚的价格提高了145倍),攻击者剩余 871 枚ETH(包含交易手续费)。CHEESE 单价的提高能够有效地提升抵押在 Cheese Bank 中 UNI_V2 LP 的价值,帮助攻击者提高在 Cheese Bank 中借贷加密资产的额度。值得注意的是,Cheese Bank 以流动性矿池 UNI_V2-CHEESE-ETH 中 WETH 的数量来衡量所对应的UNI_V2 LP 凭证的价格,攻击者通过提高 UNI_V2 LP 凭证的价格能有效地贷出更多 USDC 、USDT 、DAI。

“科学家”的盛宴:Cheese Bank被带走的330万美元

抬高 CHEESE 的价格

在这一步中,攻击者通过重置喂价预言机来操纵 UNI_V2 LP 凭证的价格,从下列公式可知,UNI_V2 LP 的价格受到流动池中 WETH 的数量和 UNI_V2-USDT-ETH 池中 ETH价格的影响,即 WETH*2*ETH的价格=LP总价,LP单价=LP总价/LP总供应量,当攻击者将增加池中 WETH 的数量时,UNI_V2 LP 凭证的价格也会上涨。

“科学家”的盛宴:Cheese Bank被带走的330万美元“科学家”的盛宴:Cheese Bank被带走的330万美元

重置喂价预言机来操纵 UNI_V2 LP 凭证的价格

攻击者就是通过上一步,即提高 UNI_V2 LP 凭证的价格来贷出价值 330 万美元的 USDC 、 USDT 和 DAI,并顺利从 Cheese Bank 转出,将其纳入囊中,此时,他只需将所贷的 21,000 ETH 还上即可。

据 PeckShield 统计,攻击者共计从 Cheese Bank 中贷出 2 百万枚USDC, 123 万枚USDT 和 8.7 万枚 DAI 。

“科学家”的盛宴:Cheese Bank被带走的330万美元

从 Cheese Bank 中贷出 2 百万枚USDC

“科学家”的盛宴:Cheese Bank被带走的330万美元

共计 2 百万枚USDC, 123 万枚USDT 和 8.7 万枚 DAI

并将这笔攻击所获资产从 0x02b7 的地址中分批转出。

最后,攻击者在 Uniswap V2 上将 288,000 枚CHEESE 转换为 19,980 枚ETH (包含手续费),为补足所贷的 21,000 枚ETH,他将 58,000 枚 USDC 转换为 132 ETH ,再加上剩余的 871 枚ETH(包含交易手续费)归还给 dYdX ,一切就好像没有发生过一样。

“科学家”的盛宴:Cheese Bank被带走的330万美元

归还 dYdX 闪电贷

PeckShield相关负责人表示:“在追踪过程中,我们发现这实际上是‘科学家’精心设计的一次攻击。在实施之前,‘科学家’演算过他所持有的 LP 凭证值正好是能把 Cheese Bank 清空的数额。”

“科学家”的盛宴:Cheese Bank被带走的330万美元

“科学家”精心设计的攻击

在DeFi浪潮上,获利的多为“科学家”和大户,技术和资金是他们的资本,而安全才是 DeFi 项目唯一有利的防线。科学家们的薅羊毛游戏会无限进行下去,DeFi 们将如何守住最后一道防线?PeckShield 将持续紧密关注。

免责声明:本文来自网络投稿,观点仅代表作者本人,不代表自链财经赞同其观点或证实其描述,版权归原作者所有,转载请注明出处。
温馨提示:投资有风险,入市须谨慎。本资讯不作为投资理财建议。

公众号