以下はご要望の解説記事です。最新の情報を整理しつつ、背景・原因・教訓までわかりやすくまとめました。


AIが書いたコードの欠陥で約2.7億円流出 — DeFi「Moonwell」価格誤設定事件の全貌と教訓

2026年2月中旬、分散型金融(DeFi)のレンディングプロトコルである「Moonwell(ムーンウェル)」が、スマートコントラクトの価格設定ミスを突かれて約178万ドル(日本円で約2.7億円相当)の損失を出した事件が発生しました。この事件は単なるコーディングミスにとどまらず、AI生成コードのリスクやDeFiの構造的な脆弱性を象徴する出来事として大きな注目を集めています。(CRYPTO TIMES)


事件の概要

「Moonwell」は、Ethereum系のLayer2ネットワーク(Base と Optimism)上で動く分散型レンディングプロトコルです。ユーザーは暗号資産を預けて利息を得たり、預けた資産を担保に借入をしたりできます。(Cointelegraph)

事件は、2026年2月15日に実行されたガバナンス提案(MIP-X43)が引き金となりました。この提案で価格オラクル(価格データをブロックチェーン上の契約に提供する仕組み)が更新されたのですが、そこで cbETH(Coinbase Wrapped Staked ETH) の価格が大幅に誤って算出されてしまったのです。正常であれば約2,200ドル程度の資産が、「約1ドル」と評価されてしまいました。(GNcrypto)


仕組みと攻撃の流れ

◆ 価格オラクルの重要性

DeFiプロトコルは市場価格をリアルタイムに取得するため、外部データ源である「オラクル」を利用します。これが不正確だと、担保評価や借入限度額など重要な計算が大きく狂います。(Cryptonews)

今回のケースでは、

  • cbETH/ETH の価格だけを参照し、
  • ETH/USD のレートを乗算し忘れる

という設定ミスがあり、実際の価格の 99.9%以上 undervaluation(過小評価) という異常値になりました。(MEXC)

◆ 攻撃者の動き

この価格誤差を利用して、

  1. 安価に見える cbETH を担保に入れる
  2. 実際より高く借りられる資産を借入
  3. 大量の借入資産を引き出す

という攻撃(一般には フラッシュローンや価格操作系の攻撃)が行われ、結果として約178万ドル相当が奪われました。(MEXC)


AI生成コードの関与と議論

今回の件が特に注目された理由の一つが、AI生成コードの関与疑惑です。セキュリティ監査の研究者がGitHub上のプルリクエストで、AIモデル 「Claude Opus 4.6」 が共同コミッターとして確認され、これがコードの一部を書いた可能性が指摘されました。(Cointelegraph)

これを受け、SNSでは

  • 「AIコードが直接的な原因ではないか」
  • 「AI主体の『バイブ・コーディング(vibe coding)』は危険では」

といった議論が活発化しています。(Cybernews)

ただし、専門家の見方では、

この種のオラクル誤設定は 人間の開発者でも起こし得る基本的なミス であり、
AIだから特別に危険というわけではない

という指摘も出ています。AI利用の是非ではなく、十分な検証プロセスの欠如が根本的な問題という見方です。(Cointelegraph)


DeFi全体が抱えるリスク

今回の事件は、DeFiの脆弱性を象徴するものとして、以下のような構造的リスクも浮き彫りにしました。

オラクル依存の危険性

価格データが不正確になるとプロトコル全体が脆弱になります。これは過去の多くのハッキング事例でも見られ、オラクル設計の強化はDeFi界隈で繰り返し課題として挙げられています。(HOKANEWS.COM)

スマートコントラクトのバグ

スマートコントラクトは一度稼働すると修正が困難なため、どんな小さなミスでも大きな損失につながりえます。AIを活用して効率化する場合でも、最終的な責任は人間にあります。

ガバナンスの責任

ガバナンス提案で重要なシステム設定を変更する際の審査体制やテストプロセスの整備が不可欠です。


教訓と今後の対応

この事件は、AIを使った開発やスマートコントラクト設計が進む一方で、安全性と人間の検証体制の重要性を改めて示しました

今後、DeFi界隈では、

  • オラクル設計の改善
  • テストとセキュリティ監査の定着
  • AI支援ツールとの組み合わせによる品質検証

などが一段と注目されると考えられます。


関連URL(英語・日本語)

By tokita

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です