8つの一般的なDeFi経済モデルの攻撃ケースを振り返る
著者:Jonas、Foresight Ventures
暗い森の中の暗号業界で、DeFiはハッカーのATMとなり、今年の損失総額は30億ドルを超えています。第一に、DeFiプラットフォームは大量の資金を保有しており、攻撃が成功した場合のリターンが非常に高いからです。第二に、ほとんどのDeFiプロトコルのコードはオープンソースであり、サイバーセキュリティの脅威にさらされやすいからです。第三に、DeFiは通常エコシステムが相互接続されており、攻撃の便宜を増幅させます。Token Terminalの報告によると、DeFiの約50%の脆弱性はクロスチェーンブリッジで発生し、次に貸付、取引所、マシンガンプールが続きます。
DeFiの経済モデルへの攻撃は、特に極端な状況下でのメカニズムの動向に関して研究の価値があります。これはトークンエコノミクスを理解するのに役立ちます。ある意味で、ハッカーがフィッシングやクラッキングなどのソーシャルエンジニアリング手法を用いて資産を盗むことは、不正な利益と見なされます。一方、DeFiのルールを利用してアービトラージを行うことは、明らかに合法的に利益を得る行為であり、手法は巧妙ですが、批判の余地はありません。
価格操作、契約による現金化
価格操作はDeFiにおける最も初期かつ一般的な脆弱性です。そして、オンチェーンのデリバティブの台頭に伴い、攻撃の利益と損失の比率が非常に高くなっています。
ケース1:MANGO
2022年10月、Solanaチェーンの分散型契約プラットフォームMangoが攻撃を受けました。
成功要素:アルトコイン契約のポジションに制限がない
攻撃プロセス:
a) 建倉:攻撃者は最初にMango取引所のA、Bアドレスにそれぞれ500万ドルを送金しました。その後、ハッカーはAアドレスを使用してMangoでMANGOトークンをショートし、同時にBアドレスでMANGOをロングしました。ロングとショートを同時に行った理由は、Mangoプラットフォームがアルトコイン契約のポジションに制限を設けていないものの、流動性が低いため、自分自身と対戦しない限り、ポジションをこれほど高く開くことが難しいからです。
b) 価格操作:攻撃者はさらに資金を使ってMANGOトークンを購入し、10分以内にその価格を2セントから91セントに引き上げました。MANGOは流動性が低いトークンであるため、攻撃者は迅速に価格を操作することができました。
c) 現金化:この時、攻撃者のロングポジションの利益は4.2億ドルとなり、アカウントの純資産を利用してMangoプラットフォームから借入を行いましたが、流動性不足のため最終的に1.1億ドルしか借りられませんでした。
ケース2:GMX
2022年9月、Arbitrumチェーンの分散型契約プラットフォームGMXが攻撃を受けました。
成功要素:0スリッページメカニズム、攻撃コストが低い
攻撃プロセス:
a) 建倉:攻撃者はGMXで大量のAVAXトークンのロングとショートポジションを繰り返し開きました。
b) 価格操作:GMXは0スリッページであるため、オラクルの価格は実行価格に等しくなりますが、GMX上の大口ポジションは他の取引所のAVAX/USD価格に影響を与え、その後オラクルが反応してGMXに価格を提供します。0スリッページは、攻撃者がいつでも無限の流動性を持つことを意味します。極端な例を挙げると、GMXで10億ドルのAVAXをロングすると、通常このような大規模な資金は実際の取引価格を引き上げるはずですが、GMXのメカニズムは0スリッページであるため、オラクルの価格に基づいてポジションを開きます。しかし、この規模の取引は他の取引所のAVAX価格を引き上げ、仮に20%上昇した場合、オラクルは最新の価格をGMXにフィードバックします。この時、AVAXが20%上昇した価格でポジションを決済し、得たAVAXを他の取引所で売却することができます。
c) 現金化:この時、攻撃者はポジションを決済して利益を得て、攻撃者が得たAVAXはGLP保有者の損失となるAVAXです。
オラクルの誤りを利用し、担保貸付で現金化
この種の攻撃は実行が非常に複雑ですが、そのパターンは似ています。つまり、価格フィードのシステムが一時的にフィードを操作してプロトコルの内部計算を歪め、その後、資金を優遇金利で預け入れ、オラクルを正常値にリセットした後、すぐに別の通貨または同じ通貨で引き出します。
ケース3:ANKR
2022年12月、BSCチェーンの貸付プロトコルHelioが攻撃を受けました。
成功要素:オラクルの価格フィードが遅延
攻撃プロセス:
a) オラクルの誤り:BSCチェーンのステーキングプロジェクトAnkrがハッカーによって直接契約の脆弱性を利用され、10兆個のaBNBcを無から鋳造し、aBNBcの価格がほぼゼロに近づきました。一方、貸付プロトコルHelioのオラクルの価格フィードは6時間の平均加重設定を使用しています。
b) 建倉:攻撃者は10個のBNBを使用してAnkrが超発行した18万個のaBNBcを購入し、その後aBNBcをHelloのhBNBに交換しました。
c) 担保貸付:攻撃者はhBNBを担保としてHelioで貸付を行い、1644万の安定通貨HAYを借り出しました。
d) 現金化:攻撃者は安定通貨HAYをBNBやUSDCなど約1500万ドル相当の資産に交換し、引き出しました。
ケース4:XVS
2022年5月、BSCチェーンの貸付プロトコルVenusが攻撃を受けました。
成功要素:オラクルの価格フィードが遅延
攻撃プロセス:
a) オラクルの誤り:LUNAの増発崩壊時、ChainlinkはLUNAの価格フィードを価格下限に達し、0.107ドルで停止しました。しかし、BSCチェーン上の貸付プロトコルVenusのLUNA市場は引き続き運営されており、価格フィードはChainlinkからのものでした。LUNAの価格が約0.01ドルの時点で、チームはようやくプロトコルを停止しました。
b) 建倉:アービトレーダーは二次市場から大量に増発されたLUNAを取得し、BSCチェーンに持ち込みました。
c) 担保貸付現金化:アービトレーダーはVenusでLUNAを担保として貸付を行い、約1400万ドル相当の資産を引き出しました。
ケース5:BZRX
2020年5月、BSCチェーンの貸付プロトコルbZxが攻撃を受けました。
成功要素:オラクルの価格ソースが単一
攻撃プロセス:
a) 建倉:まず攻撃者はフラッシュローンを通じて分散型契約プラットフォームDYDXから1万ETHを借り出し、そのうち5500ETHを使用して貸付プラットフォームCompoundから112WBTCを借り出しました。
b) オラクルの誤り:bZxはマージン取引プロトコルであり、ユーザーは1つの通貨を担保として別の通貨をレバレッジで借り出すことができます。この2つの通貨の浮動為替レートは、bZxがオラクルに依存して価格フィードを行いますが、Uniswapの価格に単一依存しています。攻撃者は1300ETHを使用してbZxで5倍のETHショートポジションを開き(つまり、5637ETHをWBTCに交換)、Uniswapプールで交換可能なWBTCが限られているため、WBTCの価格が正常値の3倍に引き上げられました。
c) 現金化:攻撃者はCompoundから借りた112WBTCを売却し、合計36万ドルの利益を得ました。
オラクルの操作は常にDeFi攻撃の重災区であり、類似のケースにはVee Finance、Harvest Finance、Value DeFi、Warp Financeなどがあり、ここではすべてを列挙することはできません。
DeFiレバレッジをショートし、デススパイラルを引き起こす
ベアマーケットでは流動性が徐々に枯渇し、非主流資産の価格深度が不足し、ボラティリティが増大します。大規模なショートはDeFiレバレッジの清算と資本のショートによって推進される可能性があります。
ケース6:LUNA
2022年5月、Terraチェーンの安定通貨USTが攻撃を受けました。
成功要素:資金プールがベアマーケットで流動性の圧迫に遭遇
攻撃プロセス:
a) 建倉:攻撃者はLUNA-USTメカニズムが長期的に維持できないと考えました。TerraはAnchorを通じて高い利回りを提供することでユーザーを引き付け、USTの使用を促進しました。しかし、20%の利回りは持続不可能です。利率が20%から7-12%に低下すると、約90億ドルのLUNAが流出しますが、LUNA/USTの流動性が十分でないため、約50億ドルのUSTが退出困難に直面します。50億ドルのUSTをLUNAに交換して市場から安全に退出させるには、400億ドルのLUNAの時価総額が必要ですが、その時LUNAの最大時価総額は400億ドルに過ぎませんでした。Terra側はすでに準備金を使い果たし、USTの安定を維持するための資金がなくなったか、USTの安定を維持することを放棄したようです。したがって、持続可能性を観察するためのウィンドウは、Curve上のUSTプールに不均衡が発生するかどうかです。TerraがCurveから1.5億ドルの流動性を削除し、4プールの準備を行うと、小規模な流動性プールの規模はUSTの販売が価格に与える影響が通常よりも大きくなります。攻撃者は2.85億ドルのUSTを売却し、安定通貨がペッグを外れ始めました。
噂によると、攻撃者AlamedaはUST崩壊前にVoyagerから9桁のBTCを借りて、Terraの準備金を阻止するためにBTCをショートしました。同時にGenesis TradingはAlamedaに10億ドルのUSTを提供し、USTのペッグを外す攻撃に弾薬を提供しました。
b) レバレッジサイクルの清算:
USTはアルゴリズム安定通貨であり、シンプルな鋳造と焼却メカニズムを使用して安定性を維持します。USTを鋳造するには、同等の価値のLUNAを焼却する必要があります。同様に、ユーザーはUSTを焼却することで同等のLUNAを交換できます。USTが下落するにつれて、仮想のデススパイラルが現実となり、投資家はますます低い価格でUSTを焼却してLUNAを取得し、未払いのLUNA供給が過剰に膨張します。実際、LUNAの供給量はわずか数日で3.5億枚未満から6.5兆枚以上に増加しました。
同時にUSTはAbracadabraで大規模な清算を受けました。昨年11月、AbracadabraはUSTのためにDegenbox戦略を開始し、ユーザーはUSTを担保にMIMを借り入れ、循環担保により利回りを大幅に向上させることができました。USTが1ドルを維持している限り、この戦略は基本的に無リスクですが、一旦USTがペッグを外れると、ユーザーの担保の価値が下がり、清算のリスクに直面します。USTの価格が0.97に達すると、一部が清算され、0.9を下回るとこの戦略を使用している人の50%以上が清算されます。循環的に、USTの価格が低くなるほど、清算される人が増えます。
ケース7:CRV
2022年11月、Ethereumチェーンの分散型安定通貨取引プラットフォームCurveが攻撃を受けました。
成功要素:貸付プロトコルがロングテール資産を担保にできる
攻撃プロセス:
a) 建倉:Curveのトークンロックメカニズムと賄賂選挙メカニズムにより、流動性が深刻に不足しています。攻撃者はまず取引所でCRVの高倍率ショートポジションを開きました。
b) 貸付ショート:攻撃者はAAVEで6360万USDCを担保にし、9200万CRVを借り出してショートしました。CRVの価格が急落したため、AAVE上のUSDC担保はさらに多くのCRVを借り出すことができました。
c) レバレッジサイクルの清算:CRV自体が貸付プロトコルの担保であるため、価格の急落は大量のCRVの清算を引き起こし、デススパイラルの連鎖反応を引き起こす可能性があります。攻撃者はCRVの創設者の担保ポジションの清算ラインを突破し、彼を清算させる意図がありました。後に創設者とコミュニティの協力によりショートは失敗し清算されましたが、その操作の考え方は学ぶべき点があります。
フラッシュローンガバナンス攻撃
DeFi攻撃はもはや価格操作に限らず、プロトコルの防御線が不十分であれば、ガバナンスメカニズムの脆弱性も攻撃者に利用される可能性があります。
ケース8:BEAN
2022年4月、Ethereumチェーンの分散型安定通貨Beanstalkが攻撃を受けました。
成功要素:投票可能な資金にタイムロックを追加していない
攻撃プロセス:
a) 提案:攻撃者は攻撃の前日に悪意のある提案を発表し、提案が通過するとBeanstalk契約から資金が引き出されます。
b) 建倉:攻撃者はフラッシュローンを通じて3.5億DAI、5億USDC、1.5億USDT、3200万BEAN、1100万LUSDを資金準備として獲得し、大量のこのプロトコルのガバナンストークンを蓄積しました。
c) 投票:攻撃者はBEAN3CRV-fとBEANLUSD-fを使用して提案に投票し、提案を通過させました。攻撃者は24830ETHと3600万BEAN安定通貨を獲得し、約8000万ドルの利益を得ました。
ベアマーケットであっても、DeFi市場は依然として一定の活力を保っています。ロックされた資金量を見ると、暗号市場が原生資産ETHで計算される場合、2022年のMaker DAO、LidoなどのトッププロジェクトのTVLは依然として正の成長を実現します。ドルで計算しても、DeFi市場は400億ドル以上のTVLを維持しており、21年前よりもはるかに良好です。これはDeFi市場が暗号市場にとって不可欠な部分となったことを意味します。
この牛市はDeFiの繁栄の起点であり、この業界の台頭が人々の注目を集める中、攻撃者もこの分野に注意を向けるようになりました。上記の攻撃から明らかにわかるように、DeFiプロトコルを攻撃する方法は単一ではなく、いくつかの一般的な攻撃ベクトルがあり、若いDeFiプロジェクトが犠牲になっています。これまでのところ、これらの増加する攻撃による損失は壊滅的ではありません。しかし、エコシステムの持続的な発展と総ロック量の増加に伴い、関与する資金は増え、攻撃はより利益をもたらすようになり、今後はより複雑なDeFi攻撃が見られるでしょう。実践は真の知識をもたらします。