據慢霧區消息,2021 年2 月13 日,以太坊DeFi Alpha Finance 遭受攻擊,慢霧安全團隊第一時間跟進分析,並以簡訊的形式分享給大家,供大家研究。

1. 攻擊者用一部分的WETH 在Uniswap WETH-UNI 池子上添加流動性,再把一部分的WETH 兌換成sUSD 並在Cream 中添加流動性獲得cySUSD 憑證。

2. 攻擊者通過Alpha Homora V2 從IronBank 借出sUSD,並將LP 抵押到WERC20 中為後面開槓桿做準備。

3. 攻擊者再通過Alpha Homora V2 將上一步借出的sUSD 歸還給IronBank。

4. 上面幾步似乎只是試探。

5. 隨後攻擊者開始利用Alpha Homora V2 的槓桿借貸從IronBank 中循環借出sUSD,每次借出數量都是上一次的一倍,最後將藉出的sUSD 再轉到Cream 中添加流動性獲得cySUSD憑證。

6. 之後攻擊者不滿足於這種低效的槓桿循環借貸疊cySUSD 的方式,開始使用閃電貸加快速度。

7. 攻擊者開始從AAVE 中閃電貸借出180 萬USDC,並通過Curve 將USDC 兌換成sUSD,這時候攻擊者就拿到了大量的sUSD 了。

8. 隨後攻擊者先用sUSD 到Cream 中添加流動性,並獲得cySUSD 憑證,再開始繼續使用Alpha Homora V2 的槓桿借貸從IronBank 中循環翻倍的借出sUSD,最後利用借出的sUSD 去歸還閃電貸。 (償還的閃電貸中有包含先前幾步的一部分sUSD 作為利息,因為最後一步借出的不足以還貸,但都是拿從Alpha 借的去還的)

9. 重複上一步,閃電貸借出1000 萬USDC,換成sUSD,先添加在Cream 中,添加9,668,335 的流動性拿到cySUSD,再繼續槓桿借貸,最後翻倍到10,088,930 應該基本把池子借空了。然後開始重複添加流動性,獲取cySUSD。最後再去歸還閃電貸。

10. 再閃電貸借出1000萬,再重複添加流動性與借貸,獲取cySUSD 並歸還閃電貸。

11. 由於經過以上步驟攻擊者已獲得大量cySUSD,因此攻擊者開始直接在Cream 借出WETH、USDC、USDT、DAI、sUSD。

總結:攻擊者使用閃電貸到Alpha Finance 中進行槓桿借貸,並使用Alpha Finance 本身的Cream IronBank 額度來歸還閃電貸,在這個過程中攻擊者通過在Cream 添加流動性獲得了大量的cySUSD,使攻擊者得以用這些cySUSD 在Cream Finance 中進行進一步的借貸。由於Alpha Finance 的問題,導致了兩個協議同時遭受了損失。