千尋ファイナンスの100万ドルのラグプル:どのようにしてそれが起こったのか

6月26日、分散型金融(DeFi)アグリゲータのChibi Financeが、自身のデプロイヤーアカウントによって攻撃され、約100万ドル相当の暗号通貨が契約から抜き取られるというラグプルまたは出口詐欺が発生しました。プロトコルの公式ユーザーインターフェースが消え、404エラーが発生し、アプリのすべてのソーシャルメディアが削除されました。資金が抜き取られた後、それらはWrapped Ether(WETH)に交換され、イーサリアムにブリッジされ、その後、攻撃者によってTornado Cashに送られました。

Chibi Finance(CHIBI)のガバナンストークンの価格は、ニュースが公開されると90%以上下落しました。

しかし、「ラグプル」というのはDeFiではありえないはずです。なぜなら、これらのアプリは定義上、中央集権型のインフラストラクチャ上で動作しないからです。したがって、アプリの作成者が誰かの暗号通貨や現金を持って逃げることはできません。

そのため、疑わしい詐欺がどのように行われたのかを分析することは役立つかもしれません。

CertiKは、この事件を調査した後、詳細なレポートを作成しました。このレポートは、ブロックチェーンのデータと組み合わせることで、攻撃がどのように行われ、将来同様の攻撃や詐欺から自分自身を守るためにユーザーができることを明らかにすることができます。

Chibi Financeアプリ

ユーザーインターフェースがオフラインになる前、Chibiは自身を「Arbitrumで最も人気のあるリターンアグリゲーター」と説明していました。ユーザーはArbitrumエコシステム全体からリターンを得ることができると主張していました。

CertiKによると、このDeFiアグリゲーターは4月にロークンの総額(TVL)で成長してきました。6月21日、ChibiはTVLで50万ドルを達成したと発表しました。当時、チームは100万ドルに到達することを目標としていました。

6月26日、アプリは初めてCoinGeckoにリストアップされ、より多くの露出を得ました。このイベントの直後、トークンが契約から抜き取られる直前に、1百万ドルの目標に到達したようです。その結果、投資家は攻撃または詐欺で1百万ドル以上の暗号通貨を失いました。

Chibi Finance契約

攻撃は、Chibi Financeプロトコルで使用される8つの異なる契約に存在するループホールを悪用しました。これらの契約は他のプロジェクトからフォークされ、Chibiに特有ではありませんでした。たとえば、その1つはArbitrumアドレス0x45E8a9BA6Fcd612a30ae186F3Cc93d78Be3E7d8dのStrategyAave.solであり、これはAbitrum、Ethereum、BNB Smart Chainなどの他のネットワークにも展開されています。

もう1つの例は、Arbitrumおよび他のネットワークにもいくつかのバージョンが存在するStrategySushiSwap.sol契約の0x9458Ea03af408cED1d919C8866a97FB35D06Aae0です。

これらの契約は、Chibi Financeだけでなく、DeFiアグリゲーターアプリケーションで一般的に使用されるようです。

関連記事: DeFiアグリゲーション:大量採用への道

パニック機能

ブロックチェーンデータによると、Chibi Financeで使用される一部の契約には、プールからすべてのトークンを引き出し、特定のアドレスに送信するために使用できる「パニック」機能が含まれています。この機能は、攻撃者の手法に不可欠でした。以下は、例としてStrategySushiSwap.solが使用される場合の説明です:

StrategySushiSwap.solの340〜343行目には、「パニック」関数が呼び出された場合、ISushiStake契約の「emergencyWithdraw」という2番目の関数を呼び出すと記述されています。

ISushiStake契約はインターフェースであり、実行可能なコードは含まれていません。代わりに、0xF4d73326C13a4Fc5FD7A064217e12780e9Bd62c3のSushiSwap: MiniChefV2契約を指します。

MiniChefV2のアドレスは、分散型取引所SushiSwapの公式契約としてリストされています。したがって、「panic」関数はSushiSwap内の「emergencyWithdraw」関数を呼び出します。

SushiSwapのアドレスでは、emergencyWithdraw関数は626〜643行目に表示されます。

この関数は、資金の所有者が報酬を受けずに引き出すことを可能にします。これは緊急時に役立つかもしれません。たとえば、報酬契約のバグにより報酬を受け取れなくなった場合、ユーザーはこの関数を呼び出したいと思うかもしれません。

emergencyWithdraw関数には、不正な使用を防ぐためのセーフガードがあります。360行目には「UserInfo storage user = userInfo[pid][msg.sender]」と記載されており、これは「user」がメッセージの送信者として定義されていることを意味します。通常の場合、これによりユーザーは自分の資金を緊急引き出しできますが、他の誰かの資金を引き出すことはできません。

SushiSwapのこの関数には悪意は見られません。しかし、ユーザーがこの関数を直接自分のウォレットから呼び出さない場合に問題が発生する可能性があります。

たとえば、ユーザーがChibi Financeを使用して資金を預けた場合、その暗号通貨はエンドユーザーではなくStrategySushiSwap契約によってSushiSwapに送信されました。これにより、Chibi Financeアプリが資金を引き出す「ユーザー」として認識されました。結果として、Chibiはユーザーの代わりにユーザーの資金を引き出すことができました。

関連記事:DeFiのラグプルを見つける方法:Kocooからの6つのヒント

ただし、パニック関数はエンドユーザーのみが呼び出せるようにする必要があります。

残念ながら、パニック関数にはこの要件がありません。代わりに、それはChibi Finance契約内の「onlyGov」関数として単純にリストされており、管理者のみが呼び出すことができます。攻撃者はこの抜け穴を利用して攻撃を行いました。

Chibi Finance攻撃の実施方法

CertiKのレポートによると、Ethereumのユーザー名Shadowout.ethは6月15日にTornado Cashから10 Ether(ETH)を引き出しました。これらの資金はArbitrumにブリッジされ、0.2 ETHがこのユーザーからアドレス0x80c1ca8f002744a3b22ac5ba6ffc4dc0deda58e3に送信されました。この2番目のアカウントは、その後、6月23日にアドレス0xb61222189b240be3da072898eda7db58b00fd6eeで悪意のある契約を作成しました。

攻撃者はこの悪意のある契約上で6月23日に「add pool」関数を8回呼び出しました。この検証されていない契約のコードは不明ですが、CertiKは、これらのトランザクションのそれぞれがリスト内の悪意のある契約のデータにChibi Finance契約を追加した可能性があると推測しています。

6月27日、Chibi Financeのデプロイヤーアカウントは8つのChibi Finance契約の管理権限を悪意のある契約に移管しました。これは、特定の契約上で「setGov」関数を呼び出す8つの個別のトランザクションを介して行われました。

悪意のある契約がこれらのガバナンス権限を取得した後、作成者は「execution」関数を呼び出しました。これにより、それは8つの契約それぞれで「panic」を呼び出し、さらにSushiSwap、Aave、Global HectareなどのDeFiアプリ内の関連するプールで「emergencyWithdraw」を呼び出しました。

その結果、Chibi Financeを介してこれらのプールにユーザーが預けたすべての資金が攻撃者によって排出され、投資家に100万ドル以上の損失が発生しました。

Chibiスタイルのラグプルを回避する方法

攻撃は管理者がユーザーのすべての資金を排出できる「panic」関数に依存していたため、Chibiスタイルのラグプルを回避する方法の1つは、この関数を持つアプリを使用しないことです。

一方、集約者に「パニック」機能がない場合、集約者アプリ内でバグやエクスプロイトが発見された場合に、ユーザーの資金が取り残されるリスクがあります。ユーザーは、直接アンダーライイングプールと対話する代わりに、集約者アプリを使用することを決める場合、これらのトレードオフを考慮することがあります。

関連記事: デフィハックと詐欺で2億4,000万ドル以上が損失に: 報告書

さらに、デフィユーザーは、スマートコントラクトのコードが非常に複雑であり、ほとんどのユーザーがアプリにセキュリティ上の欠陥があるかどうかを自分で判断することはできない可能性があることも考慮する必要があります。CertiKはそのレポートで次のように述べています:

「Chibi Financeインシデントは、Web3スペースにおける中央集権化に関連するリスクを示しています…。通常の投資家が、自分自身の研究を行うだけでChibi Financeのようなプロジェクト内の中央集権化リスクを見抜き、理解することは現実的な期待ではありません。」

そのため、CertiKは、アプリを使用する前に公開された監査を確認することをユーザーに勧めています。

Chibi Financeは、ブロックチェーンセキュリティ企業SolidProofによる監査を受けたと主張しています。報告書の内容はもはや利用できず、プロジェクトのGitHubも削除され、インターネットアーカイブに保管されていません。Kocooは、監査報告書に「パニック」機能が開示されたか、または監査が行われたかどうかさえ判断できませんでした。

Kocooはコメントを求めるためにSolidProofに連絡を取りましたが、公開時には返信を受け取っていません。

ラグプルまたは出口詐欺は、デフィスペースで一般的な問題となっています。6月1日、ブロックチェーンセキュリティ企業Beosinは、5月にラグプルから4,500万ドル以上が失われたと報告し、通常のデフィ攻撃を上回りました。4月には、Ordinals Financeプロトコルも、「safuToken」転送機能を介して100万ドルを超える被害を被ったとされています。

We will continue to update Kocoo; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

ブロックチェーン

「クラーケン、オランダの取引所BCMを買収し、ヨーロッパでの拡大を目指す」

アメリカに拠点を置く暗号通貨取引所Krakenは、今後のヨーロッパ市場での拡大を支援するために、オランダに拠点を置くプラッ...

ブロックチェーン

「日本銀行の金利決定により、金曜日のビットコインの変動が予想されます以下にその理由を説明します」

BOJは国内の債券市場に対する規制を緩和すると予想されており、これは世界の債券市場、為替レート、流動性状況に影響を及ぼす...

ブロックチェーン

「Baseの最大のDEXであるLeetSwapは、エクスプロイトの懸念により取引を停止する」

「Baseの最大の分散型取引所LeetSwapでの取引が一時停止され、一部のアナリストが取引所での攻撃を報告しています」

ブロックチェーン

イーサリアムのウェールズがCoinbaseに486百万ドルを送金、退出の時か?

「イーサリアムの大口投資家は、熊市のリズムに合わせて、大量のETHを中央集権取引所に送り始めています」

ブロックチェーン

「DeFiプロジェクトYield Protocolは年末までに終了する予定です」

2022年4月のピーク時には、DeFiの貸出プロジェクトの総ロックされた価値は2,200万ドルを超えましたが、その後、この数字は約2...

ブロックチェーン

「ビットコインのブルたちは押し続けますが、拒否されます100 SMAが鍵です」

ビットコイン価格は、$26,500の抵抗線を上回る新たな上昇を試みましたしかし、BTCは$26,700以上での定着に失敗し、下方に反応...