Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
GIGABYTE-H510M-K-V2-BIOS-SMM-Reverse-Engineering-CVE-2025-7026-7027-7028-7029-Research — GIGABYTE H510M K V2 (`H510MKV2.F3`) BIOS イメージの静的リバースエンジニアリング: PI-spec SMM Core メモリアロケータの完全な UEFI ファームウェアボリューム抽出分析と、GIGABYTE/Binarly が2025年に開示した4つの SMM メモリ破壊脆弱性 (CVE-2025-7026 CVE-2025-7027 CVE-2025-7028 CVE-2025-7029) を対象としたハンティング。 | Kitploit
ツール/GitHubGitHub/tobss8/gigabyte-h510m-k-v2-bios-smm-reverse-engineering-cve-2025-7026-7027-7028-7029-research
静的分析脆弱性分析リバースエンジニアリングハードウェアセキュリティバイナリ解析ファームウェア解析
GitHubtobss8/gigabyte-h510m-k-v2-bios-smm-reverse-engineering-cve-2025-7026-7027-7028-7029-research

GIGABYTE-H510M-K-V2-BIOS-SMM-Reverse-Engineering-CVE-2025-7026-7027-7028-7029-Research

GIGABYTE H510M K V2 (`H510MKV2.F3`) BIOS イメージの静的リバースエンジニアリング: PI-spec SMM Core メモリアロケータの完全な UEFI ファームウェアボリューム抽出分析と、GIGABYTE/Binarly が2025年に開示した4つの SMM メモリ破壊脆弱性 (CVE-2025-7026 CVE-2025-7027 CVE-2025-7028 CVE-2025-7029) を対象としたハンティング。

リポジトリを見る
1291ヶ月前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

GIGABYTE H510M K V2 BIOS SMM リバースエンジニアリング & CVE-2025-7026/7027/7028/7029 リサーチ

GIGABYTE H510M K V2(H510MKV2.F3)BIOSイメージの静的リバースエンジニアリング: PI仕様のSMM Coreメモリアロケータの完全なUEFIファームウェアボリューム抽出分析、およびGIGABYTE/Binarlyが2025年に開示した4件のSMMメモリ破壊の脆弱性(CVE-2025-7026 CVE-2025-7027 CVE-2025-7028 CVE-2025-7029)を対象とした的を絞った探索。

ステータス: 4件中1件のCVE(CVE-2025-7027)が存在することを確認。残り3件はアクセス可能な全ファームウェアにわたって積極的に検索したが発見されず、それが何を意味し何を意味しないかの正確な内容は未確認のCVEを参照。


リサーチの全ファイル: GOOGLE DRIVE ダウンロード: SMM_ALL

目次

  • 免責事項 / スコープ
  • 対象
  • TL;DR
  • 手法とツール
  • ファームウェア構成
  • リポジトリ構成
  • 背景: 公開済みCVE
  • ボーナス発見: SMMメモリアロケータ (PiSmmCore)
  • 確認済み: CVE-2025-7027
  • 未確認のCVE: CVE-2025-7026 / 7028 / 7029
  • 対策
  • 制限事項
  • 参考文献

免責事項 / スコープ

これはn-dayリサーチであり、0-day開示ではありません。ここで参照する4件のCVEはすべて、このリサーチが始まる前に、GIGABYTEによってすでに公開開示・パッチ適用済み(パッチ済みファームウェアは2025-06-12に出荷開始)であり、BinarlyとCERT/CCによってCVEが割り当てられ文書化されていました。このリポジトリの内容は新しい脆弱性の発見ではありません。これは、特定の公開ダウンロード可能なBIOSビルドに、以前に開示・パッチ適用済みのバグクラスが存在するかどうかを検証する独立した静的解析です。

  • 実働するエクスプロイトやPoCは含まれておらず、作成もされていません。 これは静的解析のみです(抽出したファームウェアモジュールの逆アセンブル/逆コンパイル)。何も実行されておらず、SMRAMの読み書きもなく、ハードウェアにも触れていません。
  • 新しい脆弱性は主張されていません。 CVE-2025-7027の存在は、Binarlyがすでに公に説明している脆弱なコードパターンとの一致によって確認されたものであり、独自に発見したものではありません。
  • 教育/防御的セキュリティ目的で公開: n-dayファームウェアバグが実際にどのように見えるかを理解すること、そしてこの特定のボード/BIOSリビジョンに対するGIGABYTE自身のアップデート推奨を具体的な証拠で裏付けること。
  • このボードをお持ちの場合は: BIOSを更新してください。 対策を参照。

対象

ボードGIGABYTE H510M K V2 (H510MKV2)
BIOSファイルH510MKV2.F3
ファイルサイズ16777216 バイト (16 MB)
ファイル日付2023-12-20
MD5a9bca8aeb55061824af1c3eedfb5c846
SHA-256934a935e5faba8d2cea4e1d51e9edb6aed86b32f412d0da5bae602bd9fd8f9f3
チップセットIntel H510
ベンダーパッチ提供開始2025-06-12 (このビルドはそれより約18か月前)

TL;DR

  • BIOSイメージから完全なUEFIファームウェアボリュームツリーを抽出(uefi_firmware / uefi-firmware-parser)。SMM/DXEボリューム全体で356個のFFSファイルを列挙し、そのうち302個に抽出可能なPE32/TEイメージが含まれていました。
  • PiSmmCore(PI仕様のSMM Core)を分離し完全にリバースエンジニアリング。ハードコードされた"sphd"/"tail"ガードシグネチャを介して、実際のSMMプール/ページアロケータ(SmmAllocatePool/SmmFreePool/SmmAllocatePages/SmmFreePages内部)を確認・命名しました。これはEDK2のオープンソースMdeModulePkg/Core/PiSmmCore/Pool.cと完全に一致します。
  • ROM内で見つかったすべてのファームウェアボリューム内のすべての抽出可能なモジュール(合計325以上)を、Binarlyの公開CVE-2025-7026/7027/7028/7029解説書の識別マーカーについて検索しました。
  • CVE-2025-7027 確認済み。 GenericComponentSmmEntry内の正確な脆弱コードパスを発見・追跡しました。NVRAM変数(SetupXtuBufferAddress)がGetVariable()を介して検証なしで取得され、SW SMI 0xB2経由で到達可能な書き込みポインタとして直接使用されています。これはBinarlyの公開された根本原因の説明と細部に至るまで一致します。
  • CVE-2025-7026 / -7028 / -7029 は未発見。アクセス可能なファームウェア全体を文字列/バイトレベルの徹底的な掃引を行ったにもかかわらず見つかりませんでした。これは「無問題」ではなく、未解決・結論不確定な結果として報告されます。その理由と本当の答えに何が必要かは専用セクションを参照してください。

手法とツール

  1. 抽出 uefi_firmware (uefi-firmware-parser -e) がBIOSイメージを再帰的に展開: Intel Flash Descriptor領域 → ファームウェアボリューム → FFSファイル → セクション。見つかったすべてのLZMA/Tiano圧縮ファームウェアボリュームを解凍しました。
  2. モジュール分離 .ui(ドライバ表示名)セクションと.pe/.teイメージセクションを持つすべてのFFSファイルを、<DriverName>__<GUID8>.<pe32|te>という名前のスタンドアロンPE32+/TEバイナリとしてコピーしました。
  3. 静的解析 Hex-Rays逆コンパイラを備えたIDA Pro(ida-pro-mcp / idalibヘッドレスワーカーインターフェース経由)。モジュールごとに1つのデータベース。自動解析 + Hex-Raysのみ。この環境ではFLIRTシグネチャやEDK2型ライブラリは利用できませんでした(後述の制限事項に記載)。
  4. マーカー検索 Binarlyの公開アドバイザリに記載された識別子(変数名、マジック定数、関数ラベル)について、抽出したすべてのモジュール(および生の16 MBイメージ)をPythonでバイト/文字列スキャンしました。
  5. 手動トレース マーカーがヒットするたびに、参照している関数を逆コンパイルし、そのコールグラフ(呼び出し元/呼び出し先)を手動で辿って実際のコードパスを再構築し、公開された根本原因の説明と照合しました。
  6. 名前変更 確認された関数はIDAデータベース内で名前を変更し、文章だけでなく解析可能な成果物に直接発見を記録しました。

ファームウェア構成

BIOSイメージには4つのIntel Flash Descriptor領域が含まれています。GIGABYTE/OEMコードを含むのはregion-biosのみです(region-me.fd region-gbe.fd region-pdr.fdはIntel Management Engine / GbE / ディスクリプタファームウェアであり、別コンポーネントのためスコープ外として調査していません)。

region-bios内で4つのファームウェアボリュームが見つかり抽出されました:

ボリューム (コンテナFFS GUID)内容抽出されたファイル数
file-9e21fd93-... → volume-ee4e5898-...メインDXE/SMMドライバボリューム。すべてのSmm*ドライバ、プラットフォームDXEドライバ302
file-f641ac56-... → volume-ee4e5898-...上記の複製/PEIフェーズコピー(より小さなサブセット: PiSmmCommunicationPei IT8728FSmmFeaturesPei など)22
file-3417f275-... → volume-3417f275-...初期PEI/DXEブリングアップボリューム(DxeIpl FspS3Notify ...)21 (うち2つはイメージ付き)
file-05ca020b-... → volume-05ca020b-...小さな補助ボリューム。実行可能イメージなし2

4つすべてを抽出しマーカースキャンしました(未確認のCVEを参照)。

リポジトリ構成

SMM/
├── README.md                    this file
├── CVE_ANALYSIS.md              full technical deep-dive (code-level detail confidence notes)
├── flash.fd                     copy of the extracted 16MB BIOS image
├── regions/                     raw recursive extraction (every FV/FFS/section as produced by uefi_firmware)
├── smm_modules/                 PiSmmCore isolated + fully analyzed (.pe32 + Hex-Rays .i64 renames applied)
├── smm_modules_all/             all 51 `Smm*`-named drivers as standalone PE32/TE + manifest.txt
│                                 (4 extra ones  PiSmmCpuDxeSmm SmmAccess SmmControl SmmLockBox
│                                  FlashSmiSmm FlashDriverSmm  have auto-analyzed .i64 databases)
├── all_modules/                 every extractable module from the main DXE/SMM volume (302 not just Smm*-named)
├── extra_volumes_modules/       modules from the two smaller auxiliary firmware volumes
└── f641_pei_modules/            modules from the duplicate PEI-phase volume copy

背景: 公開済みCVE

CVEBinarly IDCVSS公開された根本原因の概要
CVE-2025-7026BRLY-2025-0088.2SW SMIハンドラ(SwSmiInputValue 0xB2)は、BinarlyがCommandRcx0と呼ぶ関数内でRBXレジスタを未チェックのポインタとして信頼します。*RBXが'$DB$'/'2DB$'と一致する場合、ハンドラは任意のSMRAM書き込みを実行します。
CVE-2025-7027BRLY-2025-0098.2二重ポインタ参照: 検証されていないNVRAM変数(SetupXtuBufferAddress)と攻撃者制御のRBX由来ポインタの組み合わせにより、任意のSMRAM書き込みが発生します。
CVE-2025-7028BRLY-2025-0108.2RBX/RCXから派生しReadFlash/WriteFlash/EraseFlash/GetFlashInfo経由で到達可能な関数ポインタ構造体(FuncBlock)の検証欠如。
CVE-2025-7029BRLY-2025-0118.2電源/熱(オーバークロック)構成ロジックにおいて、RBXの未チェックな使用が攻撃者の影響を受けるOcHeaderポインタを制御し、任意のSMRAM書き込みにつながります。

4件すべてに共通する点: Software SMIハンドラが、レジスタまたはNVRAM由来の値を、実際にSMRAMの外にあるかを検証せずにメモリへのポインタとして信頼しています。これによりring-0(Administrator/root)の攻撃者が、通常のSW SMIトリガーをSMM特権(ring -2)の任意読み取り/書き込みに変換し、ファームウェア全体の侵害、Secure Bootのバイパス、OSより下の層への永続化を実現できます。

ボーナス発見: SMMメモリアロケータ (PiSmmCore)

これは脆弱性ではありません。セキュリティバグに向けられる前に、ツールチェーン(抽出 → PE分離 → IDA/Hex-Rays → 手動RE)が実際にソースで検証可能な本物のEDK2内部構造を復元できることを証明することで、残りの作業の基盤となった背景調査です。

PiSmmCore(GUID e94f54cd-81eb-47ed-aec3-856f5dc157a9)はPI仕様のSMM Coreです。SmmAllocatePool/SmmFreePool/SmmAllocatePages/SmmFreePagesとSMIハンドラディスパッチテーブルを保持しています。

コールチェーン(smm_modules/PiSmmCore.pe32.i64内のアドレス):

_ModuleEntryPoint (0x1184)
  -> SmmCoreEntryPointHelper (0x14D4)        writes the "SMST" table signature
     -> SmmInternalAllocatePool_wrapper (0x95EC)
        -> InternalAllocPoolByIndex_sphd_tail (0x57A8)     <- the allocator
     -> SmmAllocateZeroedPool (0x961C)        alloc + zero wrapper

SmmFreePool_wrapper (0x9714)
  -> SmmIsBufferInsideSmram (0x95A8)          decides SMRAM-resident vs not
  -> SmmInternalFreePool_sphd_tail (0x591C)   validates sphd/tail frees
     -> InternalFreePages (0x6A2C)            page-granularity free + coalesce
InternalFindFreePages (0x6820)                page-granularity alloc (mirror of InternalFreePages)
ツールをダウンロード