18 日間で 6 億 600 万ドル:アップグレードに起因するバグが DeFi の新たな主要攻撃手法となった 理由
2026年 4月のわずか 18日間で、攻撃者は DeFi から 6億 606万ドルを流出させた。この期間だけで 2026年 第1四半期の損失額の 3.7倍を上回り、2025年 2月の Bybit ハッキング事件以来、最悪の月となった。被害の 95% は、Solana 上の Drift と Ethereum 上の Kelp DAO の 2つのプロトコルによるものだった。両者とも監査済みであり、静的解析もパスしていた。どちらもルーチン的なアップグレードを行ったが、それが監査人が検証した前提条件を密かに無効にしてしまったのである。
これが DeFi リスクの新たな側面だ。2026年の壊滅的なエクスプロイトは、もはや CI のファザーが発見できるようなリエントランシー・バグや整数オーバーフローに関するものではない。それは、アップグレードによって導入された脆弱性である。ブリッジの設定、オラクル・ソース、アドミン・ロール、あるいはメッセージングのデフォルト設定に対する微妙な変更が、Solidity のコードに明らかな間違いが一行もなくとも、かつて安全だったコードを「開かれたドア」へと変えてしまうのだ。
DeFi で構築、カストディ、あるいは単に資産を保有しているなら 、2026年 4月からの教訓は受け入れがたいものだ。3ヶ月前のクリーンな監査レポートは、もはやそのプロトコルが今日安全であるという証拠にはならない。
4月のパターン:コードではなく設定
「アップグレード導入型」がなぜ独自のカテゴリーに値するのかを理解するために、2つの最大規模のエクスプロイトが実際にどのように展開されたかを見てみよう。
Drift Protocol — 2億 8,500万ドル、2026年 4月 1日。 Solana 最大の無期限先物 DEX(perp DEX)は、攻撃者がチームに対して 6ヶ月間にわたるソーシャル・エンジニアリング・キャンペーンを展開した後、TVL の半分以上を失った。信頼関係が構築されると、彼らは Solana の「デュラブル・ノンス(durable nonces)」機能(ユーザーが後で送信するためにトランザクションに事前署名できるように設計された UX 上の利便性)を悪用し、Drift セキュリティ評議会のメンバーを騙して、ルーチン的な運用署名だと思い込ませて承認させた。これらの署名は最終的に攻撃者に管理者権限を譲り渡し、攻撃者は偽の担保トークン(CVT)をホワイトリストに登録し、5億ユニットをデポジットして、2億 8,500万ドルの本物の USDC、SOL、ETH を引き出した。Solana の機能は設計通りに動作していた。Drift のコントラクトは管理者が指示した通りに動作していた。攻撃は、マルチシグの署名者が承認して いると思っていた内容と、実際に承認していた内容の「隙間」に完全に存在していた。
Kelp DAO — 2億 9,200万ドル、2026年 4月 18日。 LayerZero によって北朝鮮の Lazarus Group によるものとされた攻撃者は、Kelp のクロスチェーン rsETH ブリッジを支える 2つの RPC ノードを侵害し、そこで実行されているバイナリを入れ替え、DDoS 攻撃を使用してベリファイアのフェイルオーバーを強制した。その後、悪意のあるノードは LayerZero のベリファイアに対し、不正なトランザクションが発生したと通知した。このエクスプロイトが成功したのは、Kelp が 1-of-1 のベリファイア設定 で運用されていたためである。つまり、単一の LayerZero が運営する DVN がクロスチェーン・メッセージを確認する一方的な権限を持っていた。LayerZero によると、その 1-of-1 の設定はクイックスタートガイドのデフォルトであり、現在 ネットワーク上のプロトコルの約 40% で使用されている。46分間で、攻撃者は全流通量の約 18% にあたる 116,500 rsETH を流出させ、20のチェーンにわたってラップされた担保を立ち往生させた。rsETH をリストしている Aave は、預金者が一斉に出口へ急いだため、流動性危機に追い込まれた。
どちらの攻撃もスマートコントラクトのバグを必要としなかった。どちらも、マルチシグの署名フロー、デフォルトの DVN 数、RPC の冗長性といった「設定」が、「運用の詳細」から「根幹的なセキュリティ上の前提条件」へと密かに昇格していたことを理解する必要があった。
なぜ静的監査はこの種のバグを見逃すのか
従来の DeFi 監査は、誤った脅威モデルに対して最適化されている。Certik、OpenZeppelin、Trail of Bits、Halborn といった企業は、行ごとのコードレビューや、凍結されたコントラクトバージョンに対する不変条件(invariant)テストの実行に長けている。これにより、リエントランシー、アクセス制御のミス、整数オーバーフロー、OWASP スタイルの障害などは捕捉される。
しかし、アップグレードによって導入されるバグクラスには、そのワークフローを無効にする 3つの特性がある。
-
ソースコードではなく、複合的な実行時の挙動に存在する。 ブリッジの安全性は、メッセージング・レイヤーのベリファイア設定、DVN セット、それら DVN の RPC 冗長性、およびそれらオペレーターのスラッシング・リスクに依存する。オーディターが読む Solidity コードには、これらは一切含まれていない。
-
初期デプロイ時ではなく、「変更」によって導入される。 Kelp のブリッジは、LayerZero v2 が最初に統合されたときは問題なかったと思われる。DVN の設定が危険になったのは、TVL が攻撃する価値があるほど大きくなり、Lazarus が RPC インフラの侵害に投資した後のことだ。
-
「振る舞いの差分テスト(behavioral differential testing)」が必要である。 つまり、「新しいコードパスの下で不変条件 X は維持されて いるか?」という問いに答えることだが、主要な監査法人のいずれも、これを定期的なアップグレード後サービスとして製品化していない。バージョン 1.0 で一度限りの監査を受け、バージョン 1.1 で別の監査を受けることはあるが、1.0 から 1.1 へのアップグレードが、1.0 が依拠していた特性を損なわないか という継続的な証明は得られない。
2026年 第1四半期の統計はこのギャップを数値化している。DeFi は四半期全体で 34件のインシデント、1億 6,550万ドルの損失を記録した。しかし 4月だけで 12件のインシデントで 6億 606万ドルが発生した。デプロイ側は拡大し、第1四半期には 400億ドル以上の新規 TVL が追加されたが、監査能力、インシデント対応、およびデプロイ後の検証はほぼ横ばいのままだった。どこかに歪みが生じるのは避けられなかったのだ。