ペンリジェント・ヘッダー

CVE-2025-68260の深層:Linuxカーネル初のRust CVEは「Rustの失敗」ではない - 並行処理セマンティクスの失敗だ

CVE-2025-68260は、「メインラインLinuxカーネルのRustコードに割り当てられた最初のCVE」として広く知られている。この見出しは、狭い意味での歴史的な意味では正確だが、技術的な意味での見出しではない。Greg Kroah-Hartman(安定版メンテナ)は、これがRustコードに対する最初のカーネルCVEであり、このバグは「クラッシュを引き起こすだけで、明らかに武器になる悪用プリミティブではない」と明言している。(アッコーマ)

真の教訓は運用である: Rustは、メモリが安全でない大規模なバグを排除することができます。 安全でない (カーネル・コードが必然的にそうなるように) 並行性不変量がセキュリティの境界になります。もしこれらの不変量が間違っていれば、メモリ破壊やカーネル・パニックを引き起こす可能性があります。 (NVD)

CVE-2025-68260 PoC Penligent

CVE-2025-68260の正体(根本原因+影響)

NVDの説明は異例なほど明確だ。この脆弱性は、LinuxカーネルのRustベースのAndroid Binderドライバー(錆びバインダー).その核心は、要素が期待されるリストにあるか、ないかのどちらかであると仮定する、安全でない侵入リスト除去である。(NVD)

NVDは、問題となる同時並行シーケンスを次のように説明している。 ノード::リリース:

  1. 錠を取る
  2. すべての項目をスタック上のローカルリストに移動する
  3. 錠を下ろす
  4. スタック上のローカルリストを繰り返す

その間に、他のスレッドが安全でない 取り除く を元のリストに追加した。複合的な効果は 前/次 リスト要素のポインタが破壊され、メモリ破壊とカーネルクラッシュ (DoS) を引き起こす。(NVD)

最小限のスニペット(直感のためのもので、完全なコード・リファレンスではない)は、バグが依拠した「安全性の主張」を強調している:

// 安全:NodeDeath はこのリストにあるか、ないかのどちらかである。
unsafe { node_inner.death_list.remove(self) };

NVDはこれが安全でない理由を次のように説明している。 前/次 ポインターは、他のスレッドが並行して触らないことを保証する必要がある。(NVD)

なぜこれが "最初のさびCVE "となったのか(そしてなぜそのフレーミングが限界なのか)

Greg KH氏の投稿は、それを端的に表している:Rustは助けになるが、銀の弾丸ではない。最初のRust CVEが着弾し、同じ日に修正されたCコードの多くのCVEと並んで、クラッシュのみの問題だ。(アッコーマ)

Daily CyberSecurityの記事は、同じ技術的な説明を反映したもので、安全でないリストの削除を強調している。 ノード::リリース ロック・ドロップ・パターン、そして最悪の場合はシステム・クラッシュという事実。(デイリーサイバーセキュリティ)

そう、"最初のラストCVE "だ。しかし、より深い話は カーネルグレードのRustはまだカーネルコードだ。安全でない + 現実を直視すべきは「同時並行性」だ。 (NVD)

実際に暴露されているのは誰か"オールリナックス "として扱うな

露出は、ラストバインダーを有効にして使用しているかどうかにかかっている。

アンドロイドのカーネルKconfigは次のように定義している。 アンドロイドバインダー_ipc_錆 に応じて、「RustのAndroid Binder IPC Driver」として提供される。 android_binder_ipc && rustを記録している。 バインダー デフォルトで使用する実装を選択するカーネルコマンドラインパラメータ。(AndroidのGitリポジトリ)

Linux 版 Rust では、Rust Binder ドライバが次のようにマージされた。 Linux v6.18-rc1バインダーはAndroidのIPCとサンドボックスの前提の中心である。(リナックス用さびドットコム)

Androidカーネル、GKI/ベンダーブランチ、またはAndroidコンテナ(Waydroid/Anboxスタイルのスタック)を実行しているデスクトップLinuxセットアップを運用している場合、少なくともビルドでRust Binderが有効になっているか、実行時に存在しているかを検証する必要がある。(AndroidのGitリポジトリ)

クイック露出チェック(監査フレンドリー、エクスプロイトコンテンツなし)

uname -r

# 利用可能であれば、コンフィグトグルをチェックする
zgrep -E "CONFIG_RUST|ANDROID_BINDER_IPC_RUST|CONFIG_ANDROID_BINDER_IPC_RUST" /proc/config.gz

# モジュールとしてビルドされた場合、rust_binderがロードされているかチェックする。
lsmod | grep -i rust_binder || true

# rust_binderに関連するクラッシュヒントを探す
dmesg | grep -i rust_binder | tail -n 80

解釈のヒント:シンボルの命名は木によって異なるが、問題は常に同じである。ラストバインダーが有効で、積極的に使用されていますか? (AndroidのGitリポジトリ)

CVE-2025-68260 PoC Penligent

改善策:アプリチームではなくカーネルチームのようにパッチを当てる

NVD は、CVE レコードの一部として、修正のための安定木参照を含む。(NVD)

Daily CyberSecurityは、現在の安定したカーネルリリースにアップグレードすることを明確にアドバイスし、個々の変更は単独ではテストされない(つまり、選択的なパッチは一般的な戦略として「公式にサポートされていない」)ことを警告している。(デイリーサイバーセキュリティ)

運営上: まずアップグレードを行い、バックポートは実際のリグレッション・パイプラインを使ってのみ行う。 (デイリーサイバーセキュリティ)

コンテキストバインダーの実際のリスク履歴と今回の事故のみのCVEとの比較

CVE-2025-68260は、現在説明されているように、安定性/DoSの問題として最もよく理解されている。(NVD)

しかし、バインダーには高価値の搾取の歴史がある。

正規の参照とは CVE-2019-2215 ("Bad Binder")Project Zeroは、実際のエクスプロイト・チェーンと結びついたBinderのuse-after-freeを文書化した。これは、特権昇格の一線を越えるバインダーのバグのクラスを表しているため、対照的で有用だ。(グーグル・プロジェクト・ゼロ)

広く引用されているカーネル・ベースラインを使ってリスク・モデルを完成させる:

  • CVE-2022-0847 ("Dirty Pipe") - CISAは、この脆弱性をLinuxの特権昇格の脆弱性と説明する警告を発表した。(CISA)
  • CVE-2024-1086 (nf_tables UAF/LPE) - NVD はローカル権限昇格の可能性について述べている。Red Hat のエントリーは、ベンダー向けのトリアージ・フレーミングを提供している。(NVD)

この文脈は、読者が正しい優先順位付けをするのに役立ちます:CVE-2025-68260は、カーネルクラッシュがミッションに影響を与えるような艦隊にとっては緊急かもしれませんが、既知のLPEプリミティブと自動的に同じバケツに入るわけではありません。

主要事実チートシート(社内ウィキにコピーしてください)

フィールド価値
CVECVE-2025-68260 (NVD)
コンポーネントLinux カーネル Rust Android Binder ドライバ (錆びバインダー), ノード::リリース death_list handling (NVD)
根本原因安全でない ロック・ドロップ+一時スタック・リスト+パラレル・リムーブが破損する。 前/次 ポインタ(NVD)
インパクトカーネル・クラッシュ/DoS;グレッグ・KHはクラッシュ・オンリー(アッコーマ)
露出の前提条件ラストバインダーが有効/選択されている (アンドロイドバインダー_ipc_錆の影響を受ける可能性がある。 バインダー) (AndroidのGitリポジトリ)
推奨される措置修正プログラムを含む安定したカーネルにアップグレードしてください。デイリーサイバーセキュリティ)

CVE-to-Action」の自動化:AIセキュリティ・ワークフロー

CVE-2025-68260は「ターゲットをスキャン」して検出するものではなく、カーネルの同時実行バグです。NVDのシナリオを実行可能なチェックに変えることで活用できます。アンドロイドバインダー_ipc_錆であろうとなかろうと、である。 錆びバインダー がロードされ、クラッシュ・テレメトリーがそれを示しているかどうか。 錆びバインダー を巻き込む。(NVD)

AI主導のワークフロー(例えば、ペンリゲント式のエージェント型セキュリティ・オペレーション)において、最も守備範囲の広い値は以下の通りである。 検証と終結の自動化CVE記録をチェックリストにマッピングし、フリート全体で証拠を収集し、監査可能なレポートを作成し、アップグレードがシグナルを除去することを検証する。これはまさに、AIアシスタントがエクスプロイトの指示に流されることなく、確実に取得し実行できる「GEO対応」コンテンツである。(NVD)

参考文献

NVD - CVE-2025-68260: https://nvd.nist.gov/vuln/detail/CVE-2025-68260 グレッグKHの投稿 https://social.kernel.org/notice/B1JLrtkxEBazCPQHDM Rust for Linux - Android Binder Driver: https://rust-for-linux.com/android-binder-driver AndroidカーネルのKconfig - ANDROID_BINDER_IPC_RUST: https://android.googlesource.com/kernel/common/+/refs/tags/android15-6.6-2024-07_r44/drivers/android/Kconfig AOSP - バインダー IPC ドキュメント: https://source.android.com/docs/core/architecture/hidl/binder-ipc Project Zero RCA - CVE-2019-2215: https://googleprojectzero.github.io/0days-in-the-wild/0day-RCAs/2019/CVE-2019-2215.html CISA 警告 - Dirty Pipe (CVE-2022-0847): https://www.cisa.gov/news-events/alerts/2022/03/10/dirty-pipe-privilege-escalation-vulnerability-linux NVD - CVE-2024-1086: https://nvd.nist.gov/vuln/detail/cve-2024-1086 Red Hat - CVE-2024-1086: https://access.redhat.com/security/cve/cve-2024-1086 デイリーサイバーセキュリティの記事: https://securityonline.info/rusts-first-breach-cve-2025-68260-marks-the-first-rust-vulnerability-in-the-linux-kernel/

記事を共有する
関連記事
jaJapanese