← 最新の論文
💻 computer science

Enforcing Control Flow Integrity on DeFi Smart Contracts

DeFi スマートコントラクトの攻撃は正常な取引と異なり新たな制御フローを示すという発見に基づき、デプロイ時に一度設定するだけで実行時に制御フローの整合性を強制し、既知のハックを事前に知らなくても 37 件中 35 件の攻撃を阻止する新しいフレームワーク「CrossGuard」を提案した。

原著者: Zhiyang Chen, Sidi Mohamed Beillahi, Pasha Barahimi, Cyrus Minwalla, Han Du, Andreas Veneris, Fan Long

公開日 2026-04-22
📖 1 分で読めます☕ さくっと読める

原著者: Zhiyang Chen, Sidi Mohamed Beillahi, Pasha Barahimi, Cyrus Minwalla, Han Du, Andreas Veneris, Fan Long

原論文は CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) でライセンスされています。 これは以下の論文のAI生成解説です。著者が執筆または承認したものではありません。技術的な正確性については原論文を参照してください。 免責事項の全文を読む

🏰 物語:銀行と泥棒、そして「新しいルール」

1. 背景:なぜ今、セキュリティが必要なのか?

DeFi(分散型金融)は、銀行のような中央管理者がいなくても、人々が資産を貸し借りしたり取引したりできる「自動銀行」のようなものです。しかし、このシステムは**「レゴブロック」**のように、異なる契約(プログラム)同士をつなぎ合わせて作られています。

  • 問題点: 泥棒(ハッカー)は、このレゴブロックのつなぎ目や、想定外の使い方を巧妙に組み合わせて、銀行の金庫を盗もうとします。
  • 従来の対策: 過去の泥棒の手法を調べて「この手口はダメ」というリストを作ったり、銀行の設計図を徹底的にチェックしたりしてきました。でも、泥棒は新しい手口(新しいレゴの組み合わせ方)を次々と生み出すので、従来の対策は追いつかなくなっていました。

2. 発見:泥棒の「足跡」はいつも新しい

研究者たちは、過去にハッキングされた 37 の銀行(プロトコル)の取引履歴を詳しく調べました。そこで面白いことに気づきました。

  • 普通の利用者: 銀行の窓口で「預金」や「貸し出し」をするとき、いつも決まった手順(例:窓口→窓口→終了)を踏みます。
  • 泥棒: 彼らは、誰も見たことのない**「奇妙で複雑な手順」**を踏んで銀行に侵入します。例えば、「窓口 A から入り、裏口 B を通って、再び窓口 A に入り、さらに裏口 C を通る」といった、本来ありえない動きをします。

結論: 「普通の人の動き」と「泥棒の動き」は、**「動きのルート(制御フロー)」**を見れば、明確に区別できるのではないか?

3. 解決策:CrossGuard(クロスガード)

そこで開発されたのが**「CrossGuard」です。これは、銀行の入り口に立つ「超優秀な警備員」**のようなものです。

  • 仕組み:

    1. 白リスト(許可リスト)方式: 「普通の人が取る行動(ルート)」だけを事前に登録しておきます。
    2. リアルタイム監視: 誰かが銀行に入ろうとした瞬間、警備員がその人の動きを監視します。
    3. 即座の排除: もし、登録された「普通のルート」と違う、**「見たことのない奇妙な動き」**をしようとしたら、その取引を即座にキャンセル(リセット)して、泥棒を追い出します。
  • すごいところ:

    • 過去のデータ不要: 「前もって泥棒のリストを作る必要はありません」。新しい銀行を作った瞬間から、この警備員は働きます。
    • 賢いフィルタリング: 「単なる読み取り作業(預金残高の確認など)」や「一時的な変更(後で元に戻す作業)」は、警備員が「これは安全な動きだ」と判断して、無駄なチェックを省きます。これにより、システムが重くなりすぎないようにしています。

4. 実験結果:どれくらい効果があった?

研究者たちは、この警備員を 37 件の過去のハッキング事件に適用してテストしました。

  • 結果: 37 件中35 件のハッキングを完璧に防ぎました!
  • 誤検知(False Positive): 普通の利用者を「泥棒」と間違えて止めてしまうことは、わずか0.26%(1000 回に 2.6 回)しかありませんでした。
  • コスト: 警備員を雇うことで、銀行の運営コスト(ガス代)が少し上がりましたが、平均して**3.53%**だけ。セキュリティを考えると、これは非常に安いコストです。

5. なぜこれが画期的なのか?

  • 従来の方法: 「過去の泥棒のリスト」を見て「これに当てはまったら止める」という**「受動的」**な防御。
  • CrossGuard: 「想定外の動き」自体を「危険」とみなして止める**「能動的」**な防御。
    • 泥棒が新しい手口(新しいレゴの組み合わせ)を考えても、それが「普通の人の動き」と違えば、自動的にブロックされます。

🎯 まとめ:一言で言うと?

この論文は、**「DeFi という銀行を守るために、過去の泥棒のリストを作るのではなく、『普通の人の動き』だけを許可する『自動警備システム』を作ったよ。これなら、どんな新しい手口の泥棒も、変な動きをすれば即座に捕まえられるよ!」**という内容です。

まるで、銀行の入り口に「いつもの通り道以外を通る人は、泥棒だから追い出す」というルールを、プログラムが自動で厳格に守ってくれるようなものです。これにより、DeFi の世界はもっと安全で、安心して使えるようになるでしょう。

自分の分野の論文に埋もれていませんか?

研究キーワードに一致する最新の論文のダイジェストを毎日受け取りましょう——技術要約付き、あなたの言語で。

Digest を試す →