つみかさね

CVE-2026-23068

High(7.8)

CVE-2026-23068 — Linux kernel spi-sprd-adi ダブルフリー

公開日: 2026-03-15データソース: NVD, GitHub Advisory

影響を受けるソフトウェア

製品ベンダー影響バージョン
Linux kernel (spi-sprd-adi)Linux修正パッチ適用前
CVELinuxkernelダブルフリーCWE-415SPI

概要

Linux kernel の SPI ドライバ spi-sprd-adi に おいて、ダブルフリー(二重解放)の 脆弱性 が 発見 されました。CWE-415(Double Free)に 分類 される この 問題 は、メモリ 管理 の 不備 に 起因 して います。

具体的 に は、spi_alloc_host() 関数 で 割り当てた SPI コントローラ を devm_spi_register_controller() 関数 で 登録 した 場合 に 問題 が 発生 します。devm_register_restart_handler() が 失敗 した 際 の エラーハンドリング パス に おいて、spi_controller_put() が 二重 に 呼び出される こと で ダブルフリー が 発生 します。

この 脆弱性 の 根本原因 は、spi_alloc_host()devm_spi_register_controller() の 組み合わせ に あります。devm_spi_register_controller() は devres(デバイス リソース 管理)フレームワーク を 通じて コントローラ の 解放 を 管理 します が、spi_alloc_host() で 割り当てた コントローラ は devres の 管理 対象外 で ある ため、手動 で spi_controller_put() を 呼ぶ 必要 が あります。エラーパス で この 手動 解放 と devres に よる 自動 解放 が 重複 する こと で、同一 メモリ 領域 が 二度 解放 される 事態 に 陥ります。

ダブルフリー は カーネル パニック、メモリ 破壊、権限 昇格 など の 深刻 な 結果 を 引き起こす 可能性 が あります。CVSS スコア は 7.8(High)で あり、ローカル から の 攻撃 で 特権 昇格 が 可能 と なる リスク が あります。

修正 パッチ で は、spi_alloc_host() の 代わり に devm_spi_alloc_host() を 使用 する よう 変更 されて います。devm_spi_alloc_host() は devres 管理 下 で メモリ を 割り当てる ため、devm_spi_register_controller() と の 組み合わせ で 二重 解放 が 発生 し なく なります。

CVSSベクトル

項目
CVSSスコア7.8
深刻度High
攻撃元ローカル
攻撃条件 の 複雑性
必要 な 特権
ユーザー の 関与不要
機密性 へ の 影響
完全性 へ の 影響
可用性 へ の 影響
CWECWE-415 (ダブルフリー)

影響を受けるソフトウェア

製品ベンダー影響バージョン
Linux kernel (spi-sprd-adi ドライバ)Linux修正 パッチ 適用前 の バージョン

修正バージョンと回避策

  • 修正方法: devm_spi_alloc_host() へ の 切り替え パッチ を 適用 する
  • 修正コミット: kernel.org の stable ブランチ に マージ 済み
  • 暫定回避策:
    • Spreadtrum(Unisoc)SoC の SPI ADI ドライバ を 使用 して いない 環境 で は 影響 なし
    • 影響 を 受ける 環境 で は カーネル の アップデート を 推奨
    • spi-sprd-adi モジュール を 無効化 する こと で 一時的 に 回避 可能

関連リンク


データソース: NVD (NIST), GitHub Advisory Database AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。

Xでシェアはてブ
データソース: NVD (NIST), OSV (Google), GitHub Advisory Database, JVN iPedia (IPA/JPCERT/CC)
AI解説は Claude API により自動生成されています。正確性については原文をご確認ください。