15-year-old GhostLock Kernel Flaw Enables Privilege Escalation in Major Linux Distributions
2026/07/08 CyberSecurityNews — Linux カーネルで発見された深刻な脆弱性 CVE-2026-43499 が、VEGA のセキュリティ研究者により GhostLock と名付けられた。 この脆弱性により、主要な Linux ディストリビューションに対して、10 年以上も影響を及ぼしてきた権限昇格の欠陥が明らかになった。GhostLock は、2011年の Linux バージョン 2.6.39 で混入した、カーネルのリアルタイム・ミューテックス (rtmutex) サブシステムにおけるロジックエラーに起因する。この欠陥は、2026年4月にパッチが適用されるまで発見されず、バージョン 7.1 までの全カーネルに影響を及ぼしていた。

Nebula Security の研究者は、97% の成功率を持つ、きわめて信頼性の高いエクスプロイトを実証し、Google の kernelCTF プログラムを通じて $92,337 の報奨金を獲得した。この脆弱性を悪用する非特権のローカル攻撃者は、カーネル・メモリを操作し、最終的に root 権限を取得できる。
この問題は remove_waiter() 関数で発生する。この関数は、特定の futex 操作中に実際の待機タスクではなく、その時点で実行中のタスクに関連付けられたポインタを誤ってクリアする。
このバグにより、解放済みのカーネル・スタック・メモリを参照するダングリング・ポインタが生じる。この欠陥は、優先度を継承する futex における、特定の競合状態を介して悪用できる。複数のスレッドと futex 変数の相互作用を、慎重に調整する攻撃者であれば、カーネルにロールバックを強制するデッドロックを引き起こすことができる。
15 年前の GhostLock Linux カーネル脆弱性
このロールバック中のカーネルは、内部状態を適切にクリーンアップできず、すでに存在しないスタック・オブジェクトへの古いポインタを残す。このダングリング・ポインタが作成されると、攻撃者は解放済みのスタック・メモリを再取得し、制御可能なデータで置き換えることが可能となる。
これにより、攻撃者は内部カーネル構造を偽造し、カーネルが同期プリミティブを処理する方法に影響を及ぼすことが可能になる。この状態を悪用する手法により、カーネル・メモリに対する制限付きの任意の書き込みが実現される。
この書き込みプリミティブには制約があるが、関数ポインタ・テーブルなどの重要なカーネル構造の上書きが成立する。
実証されたエクスプロイトで研究者が標的にしたのは、IPv6 プロトコル操作を処理する inet6_protos テーブルである。攻撃者が制御するメモリへと関数ポインタをリダイレクトすることで、細工されたネットワーク・パケットをカーネルが処理する際の、制御フローのハイジャックを達成する。
このエクスプロイトは、CPU プリフェッチ命令に基づくタイミング・サイドチャネルを用いてメモリ・レイアウトを推測し、カーネル・アドレス空間配置のランダム化 (KASLR) をバイパスする。
また、予測可能なカーネル・メモリ領域である CPU Entry Area を活用して、細工されたデータ構造を格納し、リターン指向のプログラミング・チェーンを構築できる。
攻撃の最終段階では、DirtyMode と呼ばれる手法が使用される。この手法では、単一のカーネル・メモリ書き込みにより、sysctl 設定の権限を変更する。これにより、攻撃者はユーザー空間から root として任意コードを実行し、権限昇格チェーンが完了する。
この脆弱性は、特別な権限やカーネル・コンフィグを必要としないため、ローカル・アクセスが可能なマルチユーザー・システムおよびコンテナ環境において、特に危険である。また、コンテナ・エスケープのシナリオも可能になるため、クラウドおよび共有インフラにおける影響は拡大する。
すでにLinux カーネルのメンテナは、remove_waiter() 関数を修正し、意図されたタスク構造を正しく参照するようにすることで、この問題に対処している。しかし、初期パッチが NULL ポインタ例外を引き起こす可能性があることを、Nebula Security の研究者が発見したことで、アップデートの修正が必要になった。
ユーザーおよび管理者に強く推奨されるのは、パッチ適用済みのカーネル・バージョンまたは最新の長期サポート・リリースへの速やかなアップデートである。
古いカーネルを実行しているシステムは、引き続き悪用に対して脆弱である。この攻撃の信頼性を考慮すると、潜在的な侵害を防止するには、迅速なパッチ適用が不可欠である。
訳者後書:長年広く使われている Linux カーネルの、複数の処理を同時にこなすための基盤部分において、セキュリティ脆弱性 CVE-2026-43499 が見つかりました。この脆弱性は、10 年以上にわたり存在してきた、メモリの管理手順の不具合に起因します。もしシステムに侵入されると、本来は触れない中枢領域が書き換えられ、最も高い管理権限を奪われてしまう危険性があります。これにより、同じデバイス上の別の運用環境まで制御される恐れがあります。対応策として、提供されている最新の修正版へ速やかにシステムを更新し、全体の安全を確保することが重要です。
You must be logged in to post a comment.