Aptos:Move VM の型混同で、あるオンチェーン資源が別の資源として扱われ得た(約 3,000 ドルの検証環境で再現)

事案日
2026-07-04
公開日
2026-07-10
発行
Lemma Critical Team
関連 Pack
Pack AIncident Response

TL;DR

ブロックチェーンセキュリティ企業 Hexens が、Aptos の Move VM(同レイヤー 1 上の全スマートコントラクトを処理する実行環境)に、stale-cache(古いキャッシュ)由来の type-confusion(型混同)で、あるオンチェーン資源を別種の資源として扱わせ得る重大な脆弱性を公開した。攻撃者が制御するコードが他コントラクトのストレージへ書き込み、各プログラムのデータを分離しているはずの型システムの保証を回避できた。Hexens は、メインネットに近いステーク分布・トランザクション負荷・実行競合を再現した 30 超のバリデータノード(約 3,000 ドル、バリデータ網の約 3 分の 1 相当)で概念実証を行い、現実に近い条件で 90% 近い成功率(20 回中およそ 17〜18 回)を得た。Aptos 本体の直接的な露出を「低い一桁の 10 億ドル台」、そこから波及し得る一次的なシステミックリスクを約 700 億ドルと見積もった。2026-02-25 に報告、Aptos は数時間でメインネットを修正し、パッチ後の 2026-07-04 に公開された(資金流出なし)。欠けていたのは、下流の信頼システムが Aptos 側の状態を受け入れる前に、その状態の完全性を独立検証する層である。検出と事前証明は代替ではなく補完である。


事案概要

  • 対象: Aptos(レイヤー 1 ブロックチェーン)の Move VM。ネットワーク上の全スマートコントラクトの実行を担う中核コンポーネント
  • 報告: ブロックチェーンセキュリティ企業 Hexens による研究開示。責任ある開示手順に沿い、パッチ適用後に公開された
  • 脆弱性の性質: stale-cache(古いキャッシュ)に起因する type-confusion(型混同)。システムを騙して、あるオンチェーン資源を別種の資源として扱わせることができ、攻撃者が制御するコードが他コントラクトのストレージへ書き込み、各プログラムのデータを分離する型システムの保証を回避し得た
  • 概念実証(PoC)の規模と成功率: メインネットに近いステーク分布・実際に近いトランザクション負荷・高い実行競合を再現した 30 超のバリデータノードで検証。構成費用は約 3,000 ドルで、バリデータ網の約 3 分の 1 を模擬。現実に近い条件で 90% 近い成功率(20 回中およそ 17〜18 回)。インサイダー権限・特別な許可は不要だったとされる
  • 被害・リスク評価(Hexens 推計): 資金流出はなし。Aptos 本体の直接的な露出は「低い一桁の 10 億ドル台」、ブリッジ・cross-chain メッセージング・ステーブルコイン運用・取引所を通じて波及し得る一次的なシステミックリスクを約 700 億ドルと評価(いずれも Hexens の推計であり、確定した損害額ではない)
  • 対応: 2026-02-25 に Hexens が報告。Aptos は数時間でメインネットに修正を投入し、公開リポジトリの活動は 2026-02-27 の作業を示す。公開は 2026-07-04
  • 核心: レイヤー 1 の実行環境が、資源の「型(それが何であるか)」の同一性を健全に保てなかった。結果として、下流でその状態・資産を受け入れる側(ブリッジ・ステーブルコイン発行者・取引所)は、Aptos 側の状態の完全性を独立検証する手立てを持たないまま、それを前提に動く構図になっていた

タイムライン

  • 2026-02-25: Hexens が Aptos の緊急セキュリティ経路を通じて Move VM の脆弱性を報告
  • 2026-02-25〜27: Aptos が数時間以内にメインネットへ修正を投入。公開リポジトリの活動は 2026-02-27 の作業を示す
  • 2026-07-04: パッチ適用済みを前提に、Hexens の解析と手口が公開される(資金流出なし)

注: 技術的事実は Hexens の開示および CoinDesk ほかの報道に基づく。PoC の成功率(90% 近く)・約 3,000 ドルの検証環境・バリデータ網の約 3 分の 1 模擬は Hexens の検証によるもの。直接露出「低い一桁の 10 億ドル台」・システミックリスク約 700 億ドルはいずれも Hexens の推計であり、確定した損害額ではない。公開日は 2026-07-04(一部報道は 07-05)とされ、出典により幅がある。根本原因・評価の最終確定は Hexens・Aptos の公式資料を参照されたい。


攻撃ベクター

本事案は実際の攻撃ではなく、Hexens による概念実証(PoC)である。以下は開示された悪用連鎖の構造を示す。

  1. 型混同の誘発: stale-cache(古いキャッシュ)の条件を突いて、Move VM にあるオンチェーン資源を別種の資源として解決させる(type-confusion)
  2. 型システム保証の回避: 資源の型が取り違えられることで、各プログラムのデータを分離しているはずの型システムの保証が崩れる
  3. 他コントラクトのストレージへの書き込み: 攻撃者が制御するコードが、本来アクセスできない他コントラクトのストレージへ書き込み得る状態になる
  4. 現実に近い条件での再現: メインネットに近いステーク分布・トランザクション負荷・実行競合を再現した環境で、90% 近い成功率で再現。インサイダー権限は不要
  5. 想定される波及: 直接の Aptos 資産にとどまらず、ブリッジ・cross-chain メッセージング・ステーブルコイン運用・取引所を通じて、Aptos 側の状態を前提に動く下流システムへ影響が広がり得る(Hexens はこの一次波及を約 700 億ドルと評価)

構造的論点

本事案は Pillar 01(来歴証明)の code-provenance カテゴリに属する。中心的な失敗 primitive は、レイヤー 1 の実行環境が資源の「型=それが何であるか」の同一性を健全に保てず、下流でその状態・資産を受け入れる側が、Aptos 側の状態の完全性を独立検証できないまま、それを前提に動く点にある。type-confusion は Move VM 内部の欠陥だが、脅威インテリジェンスとして重要なのは、その欠陥が単一チェーンにとどまらず、ブリッジ・cross-chain メッセージング・ステーブルコイン・取引所という「相手チェーンで起きたこと」を前提に動く層へ、独立検証の層なしに波及し得る点である。secondary に、下流のブリッジ・cross-chain が上流状態を前提に動く点で bridge-config-trust、資源の同一性・裏づけという意味で data-provenance を併記する。

本事案は Brief No.067(Syscoin、パースの欠陥で偽の proof が「有効な burn の証明」として受理された)・Brief No.085(Secret Network、偽チャネルからの入金が検証されず無裏づけの発行に直結した)と、受信側が「相手側で実際に起きたこと」の一部だけを検証し、全体としての真正性・完全性を独立検証していない点で同型である。Brief No.016(Verus-Ethereum、Merkle Proof は有効でも入出力額の整合が未検証)とは、cross-chain で受け渡される状態の一部分だけが検証された点で連なる。Brief No.074(Taiko、proof は正しく検証されたのに署名者の正当性が独立検証されなかった)とは、資産移動を認可する根拠の真正性が独立検証されなかった点で通じる。差異は、本事案がブリッジの設定・鍵ではなく、レイヤー 1 の実行環境そのものの型健全性に根を持つ点、そして実被害のない研究開示である点だ。

本事案にはもう一つ、Brief シリーズの thesis を映す層がある。単一の VM 欠陥が、直接露出(Hexens 推計で低い一桁の 10 億ドル台)の何十倍ものシステミックリスク(同約 700 億ドル)に増幅され得るのは、下流の各システムが上流の状態の完全性を独立検証せず、「Aptos 上でそう記録されている」ことを最終的な根拠として受け入れているからである。増幅の経路は、まさに独立検証の層が置かれていない接続点に沿って走る。


検出と証明の落差

Hexens による発見・責任ある開示、Aptos の数時間での修正投入、公開リポジトリでの追跡可能な対応、資金流出ゼロという結果は、重大な欠陥を実害の前に塞ぐうえで機能した。本 Brief がその役割を否定するものではない。むしろ本事案は、研究者による検出と迅速なパッチが最良に働いた例である。検出と是正は確かに機能した。

一方で、検出は「Aptos 側で記録された状態・資産が、健全な型解決のもとで正しく生成されたものか」を、下流のブリッジ・ステーブルコイン・取引所がその状態を受け入れる時点で独立に立証する材料にはならない。type-confusion が成立した状態は、形式的には正規のオンチェーン状態と区別がつかない。パッチは将来の同種欠陥を塞ぐが、下流システムが「Aptos 上でそう記録されている」ことを最終的な根拠として受け入れる構造そのものは、パッチでは変わらない。監査で「このブリッジ引き出し・この発行は、健全に生成された正規の状態に裏づけられているか」を立証する材料として、「Aptos 上に記録があった」という事実だけでは、上流の状態の完全性の独立した証跡にならない。これは検出層の射程外にある、構造的に独立した層の落差である。

事前証明(pre-action attestation)は、下流システムが Aptos 側の状態・資産を受け入れて動く前に、その状態の完全性・来歴を独立検証可能な形で確認することでこの落差を埋める。ブリッジの引き出しやステーブルコインの発行を認可する前に「この状態は健全な実行のもとで生成された正規のものか」を検証し、証明が伴わなければ受理を事前に block する。単一の上流欠陥が、独立検証のない接続点を通じてシステミックに増幅されることを、接続点ごとの証明で断ち切る。事前証明は検出(研究者の発見・パッチ)に対する代替ではなく 補完 であり、両者が重なって初めて、cross-chain の資産移動・発行を安心して実務に出せる。


対応経緯と業界動向

  • Aptos: Hexens の緊急報告を受け、数時間でメインネットへ修正を投入。公開リポジトリの活動は 2026-02-27 の作業を示す。パッチにより、公開時点で当該欠陥による資金流出は生じていない
  • 研究(Hexens): stale-cache 由来の type-confusion を特定し、メインネットに近い条件の検証環境で再現。直接露出とシステミックリスクを分けて評価し、単一 VM 欠陥が下流の信頼接続を通じて増幅され得ることを定量的に示した
  • 業界横断の論点: レイヤー 1 の実行環境の欠陥が、そのチェーンの直接資産をはるかに超えるシステミックリスクへ波及し得るという評価は、ブリッジ・cross-chain メッセージング・ステーブルコイン・取引所が「上流チェーンの状態」を独立検証せず前提とする構造への注意を促した。responsible disclosure と迅速なパッチが有効に働いた一方、下流システムが上流状態の完全性をどう独立検証するかは、個別チェーンの修正とは別系統の課題として残る

Lemma による分析

まず前提として、レイヤー 1 の実行環境(Move VM)の型健全性そのものは、当該チェーンが設計・修正すべき領域であり、Lemma がそれを肩代わりするものではない。本事案で Lemma が扱うのは、単一の上流欠陥がシステミックに増幅される経路、すなわち下流システムが上流の状態を独立検証せずに受け入れる接続点である。ここに露呈した検出と証明の落差(下流のブリッジ・ステーブルコイン・取引所が、Aptos 側の状態の完全性を受理の前に独立検証していない)に対し、Lemma は以下の設計を提示する。

  • 上流状態の完全性の事前証明: ブリッジの引き出しやステーブルコインの発行など、上流チェーンの状態を前提とする行動の前に、その状態が「健全な実行のもとで生成された正規のもの」であることを独立検証し、確認できなければ受理を事前に reject する
  • 接続点ごとの検証: 単一の上流欠陥が独立検証のない接続点を通じて増幅されることを、cross-chain の各接続点で状態の完全性・来歴を検証することで断ち切る
  • 来歴の固定と選択的開示: 受け入れる状態・資産の来歴を改ざんできない形で固定し、内部状態を開示せずに「この状態は正規に生成された」ことだけを最小開示で証明する

検出(研究者の発見・迅速なパッチ・追跡可能な是正)は個別欠陥の除去に、事前証明(下流での受理前の完全性検証)はシステミックな増幅の遮断に、それぞれ相補的に働く。


Sources


Brief 配布について

本資料は公開情報の構造化分析であり、特定組織への監査・診断・推奨ではありません。


(c) 2026 FRAME00, INC. — Built for decisions that matter.

Cite this Brief

この Brief を引用する

Lemma Critical Team. (2026).
"Aptos:Move VM の型混同で、あるオンチェーン資源が別の資源として扱われ得た(約 3,000 ドルの検証環境で再現)".
Lemma Critical Brief No.100. Lemma / FRAME00, Inc.
https://lemma.frame00.com/ja/critical/briefs/100-aptos-move-vm-type-confusion/