昨日の夕方(2024.2.23) ユニが一気に値を引き上げ、7US$.、、様は様は様は様は様は様はオープンからニッポン記念すべき第1回大会が、、、、高松宮記念世界文化遺産登録記念日(高松宮記念世界文化遺産登録記念日(2013年7月13日(高松宮記念世界文化遺産登録記念日高松宮記念世界文化遺産登録記念日
これは、usdcを担保にして多額のユニを借り入れ、そのユニをusdcに売却した数人によって発覚したもので、その後、自分が担保にした以上のusdcを得ていることがわかった。
貸出契約に対するこの攻撃を、https://bad-debt.riskdao.org/ のデータを使って真面目に分析してみよう。ー
このー
このー
このー
0x5968ada261a84e19a6c85830e655647752585ed4
0x49bc3cec1fb7978746f742a4e485d0d601831cea
0x2f99fb66ea797e7fa2d07262402ab38bd5e53b12
この契約では、4つの住所はすべて負債を抱えているが、担保はほぼゼロである。
担保はほぼ0 しかし借りたuni値は33万Uと高い。この場合、この住所は間違いなくこのuniの借金を返すつもりはない。
他の3つのアドレスもすべて同じで、ほとんどゼロの担保を使って10万U以上のユニコインを借りた。
これら4つのアドレスは累積で55,565.9001ユニを借りており、これは現在1枚12Uで合計55,565.9*12=666,790.8usdtの価値があり、66万Uの損失となっています。
なぜ、ほぼ0担保を使って、数十万Uのユニコインを借りて売ることができたのか!?
この攻撃の全体的なロジックは次のとおりです:
1.次のように仮定します。それはT0 時点であり、uniis 市場 の価格である。US">uniフィードは正常であり、また7U/uni
2.そしてT1時点では、uni市場の価格が突然爆発し、瞬時に11U/uni まで上昇した。span>7U/uni.
3.そして誰かが化合物を発見した。にuni間違った値段をつけ、すぐに20を抵当に入れた。百万を屋敷に入れ、担保にして借りた。コインを、 コム フィードバック価格( )で借り入れます。span lang="en-US">7u/uni, 85%の借入率)、20*0.85=170000u/uniを借りることができる。170000/7=24285.7143ウニ、つまり24000ウニを借りることができる。
4.ではこれを取る。2.4millionuni 市場(例えばuniswap v3) でusdcで売ることができます。市場価格は11U/uniなので、2.4*11=26.4wUsdcで売ることができ、担保の 64,000Usdcを上回る利益となります。
次の取引https://etherscan.io/tx/。0xaee0f8d1235584a3212f233b655f87b89f22f1d4890782447c4ef742b37af58d 上記のロジックは非常に明確に見ることができます
193020usdcを抵当に入れ、19748uniを貸し出し、uniをETHに、そしてETHをusdcに売却し、最終的に受け取ったのは
5.その他compoundFeeds the correctunicoin price into the agreement, then those debts are definitely going to be liquidated, not liquidated清算人が担保をすべて取ったとしても、ユニの借金はたくさん残る。それは不良債権だ。
なぜユニなのか?価格フィードエラー?
現在コンパウンドはこの修正を開始しています。span>バグ投票。
Because compoundonTheuni コインの価格は、 チェーンリンク の 2重の保険を使って設定されます。span lang="ja-US">oraclefeeder priceに加え、Uniswap TWAP (Time Weighted Average Price)があります。しかし、2つのフィード間のトレードオフが何なのか、正確には調べていない。しかし、今の結果からすると、価格を適切にフィードするには、両方が同時に正常でなければなりません。
ユニの価格が瞬時に爆発したとき、chainlinkのフィードは正常でしたが、UniswapTWAPの価格は不具合で、compoundのプロトコルは間違った価格を与えました。