Back to Blog

LI.FI攻撃:クロスチェーンブリッジの脆弱性?いいえ、未チェックな外部呼び出しが原因です!

Code Auditing
March 21, 2022
3 min read

LI.FIプロジェクトのレポートとDaniel Von Fange氏のTwitterによると、2022年3月20日に発生したLI.FIへの攻撃を確認しました。この脆弱性に関する詳細な技術分析がないため、以下に攻撃をさらに分析します。この攻撃の根本原因はチェックされていない外部呼び出しであると判明しました。

攻撃トランザクション

攻撃プロセスを説明するために、攻撃トランザクションから始めます。以下のスクリーンショットは、トランザクション可視化システムの結果を示しています。

上記の画像に示すように、攻撃プロセス全体は非常にシンプルで、**悪意のあるスマートコントラクトはデプロイされておらず、フラッシュローンも関与していません。**攻撃者が実行した唯一のステップは、CBridgeFacetコントラクトswapAndStartBridgeTokensViaCBridge(0x01c0a31a)関数を呼び出したことです。これにより、USDC、MATIC、RPL、GNO、USDT、MVI、AUDIO、AAVE、JRT、DAIなどのさまざまなトークンが、攻撃者が制御するEOAコントローラーから転送されました。

コード分析

次に、被害者であるロジックコントラクトのコードを調べます。

のコード
のコード
のコード
のコード

上記のコードによると、swapAndStartBridgeTokensViaCBridgeは、ソースチェーンでのクロスチェーントランザクションのエントランスです。

LIFIプロジェクトは、オフチェーンで発生するSmart Routingと呼ばれる、ユーザーに最適なルートを見つけることができると主張しています。具体的には、フロントエンドウェブサイトが最適なルートを計算し、パラメータ(スワップコントラクトとルーティングパスを含む)をswapAndStartBridgeTokensViaCBridge関数のパラメータにエンコードします。

明らかに、LIFIプロジェクトは、ホワイトリストやスワップスリッページなどのパラメータに対するチェックが行われないため、この関数が任意のアカウントによってブロックチェーン上で呼び出される可能性があることを考慮していません。最も深刻な点は、CBridgeFacetコントラクトがユーザーにトークンの承認を要求しており、これがユーザーのお金を危険にさらすことです。

利益

結果として、攻撃者はswapAnStartBridgeTokensViaCBridge関数を呼び出すことによって、CBridgeFacetコントラクトにトークンの承認を与えていたLIFIユーザーのお金を盗みました。この関数は、さまざまなトークンのtransferFrom関数を呼び出します。損失統計は以下の表に示されています。総損失は約596Kドルで、これはLIFIプロジェクトの統計とほぼ同じです。

トークン 金額 価格
GNO 0.94 310.22
USDC 202,012.28 0.999655
MATIC 3,144.89 1.46
AUDIO 1,202.37 1.10
AAVE 8.99 149.99
RPL 44.86 31.2
MVI 22.95 131.82
USDT 368,745.29 1
DAI 8,421.49 0.999847
JRT 136,805.06 0.03789613

教訓

このLIFIはクロスチェーンブリッジアグリゲーターであり、被害者コントラクトはクロスチェーン転送のエントランスです。脆弱性は、前回のクロスチェーンブリッジのセキュリティインシデントでも示されたように、複雑なクロスチェーンロジックによるものではありません。むしろ、この攻撃の根本原因は、solidityのトップ10の一般的な問題の1つであるチェックされていない外部呼び出しです。

DeFiプロジェクトがより複雑になるにつれて、プロジェクト開発者は、正しいビジネスコードを書くだけでなく、安全なコードを書くことにもっと注意を払う必要があります。監査されていないコントラクトをブロックチェーンにデプロイしないことを強く推奨します。

BlockSecについて

BlockSecは、世界的に著名なセキュリティ専門家グループによって2021年に設立された、先駆的なブロックチェーンセキュリティ企業です。同社は、Web3の世界のセキュリティとユーザビリティを向上させ、その大量採用を促進することに専念しています。この目的のために、BlockSecは、スマートコントラクトおよびEVMチェーンのセキュリティ監査サービス、セキュリティ開発と脅威のプロアクティブなブロックのためのPhalconプラットフォーム、資金追跡および調査のためのMetaSleuthプラットフォーム、そして暗号世界で効率的にサーフィンするためのWeb3ビルダーのためのMetaDock拡張機能を提供しています。

現在までに、同社はMetaMask、Uniswap Foundation、Compound、Forta、PancakeSwapなど300以上の著名なクライアントにサービスを提供し、Matrix Partners、Vitalbridge Capital、Fenbushi Capitalなどの著名な投資家から2回の資金調達で数千万米ドルを獲得しています。

公式ウェブサイト:https://blocksec.com/

公式Twitterアカウント:https://twitter.com/BlockSecTeam

Sign up for the latest updates
ニュースレター - 2026年6月
Security Insights

ニュースレター - 2026年6月

本月報は2026年6月の主要セキュリティインシデント3件を対象とし、確認済み損失総額は約2,200万ドルです。高度なハニーポット攻撃がトークン許可の未検証を悪用し、JaredFromSubwayのMEVボットから約1,500万ドルを流出。旧型Aztecロールアップ2件はプルーフ決済の境界ギャップにより約435万ドルを損失。SecondFiのEd25519実装欠陥により374ウォレットの秘密鍵が露出し約240万ドルが流出。3件に共通するのは、表面上は保たれているように見えたセキュリティ保証が実際には機能していなかった点です。

約400万ドルの損失:TaikoとSecondFiのエクスプロイト|BlockSec週次レポート
Security Insights

約400万ドルの損失:TaikoとSecondFiのエクスプロイト|BlockSec週次レポート

2026年6月22〜28日のブロックチェーンセキュリティ報告:EthereumとCardanoで約410万ドルの損失を確認。Taikoブリッジ攻撃はSGX署名鍵の露出と不完全なアテステーションポリシーを悪用し、悪意のあるプルーバー登録とL2状態証明の偽造を可能にした。SecondFiはEd25519ナンス導出の欠陥により、公開Cardanoトランザクションから秘密鍵の復元が可能となった。

〜1800万ドルの損失:jaredFromSubway、Aztecなど|BlockSecウィークリー
Security Insights

〜1800万ドルの損失:jaredFromSubway、Aztecなど|BlockSecウィークリー

ブロックチェーンセキュリティ週次レポート(2026年6月15日〜21日):EthereumとBNB Chainで3件の重大インシデントが発生し、総損失約1830万ドル。注目のjaredFromSubway事件では、MEVボットが裁定取引のために自身の資産を未検証の第三者コントラクトに承認するという逆承認攻撃が判明。攻撃者は実イベントを発行しながら承認を消費しない偽トークンとプールを構築し、損失は約1500万ドル。またAztecでは3日間で2度目の攻撃が発生、エスケープハッチZK回路でold_data_rootの等価制約欠如を悪用し、偽マークルツリーに対するノート所有権の証明が可能となった。

Best Security Auditor for Web3

Validate design, code, and business logic before launch. Aligned with the highest industry security standards.

BlockSec Audit