Nebula Securityの研究者らが、Linuxカーネルに存在する重大な脆弱性「GhostLock」(CVE-2026-43499)を公表しました。
この脆弱性は15年間にわたり存在し続けており、ほぼすべてのLinuxディストリビューションにおいて確実な権限昇格とコンテナエスケープを可能にします。問題は2011年にリリースされたLinuxカーネルバージョン2.6.39まで遡り、最近まで発見されないままでした。2026年4月にパッチが適用されています。
15年間存在したLinuxカーネルのGhostLock脆弱性
Nebula Securityの報告によると、GhostLock脆弱性はカーネルのリアルタイムミューテックス(rtmutex)サブシステム内に存在するスタックベースのuse-after-free(UAF)欠陥に起因しています。
具体的には、kernel/locking/rtmutex.c内のremove_waiter()関数の処理不備が原因で、優先度継承(PI)futex操作中にタスクポインタが不適切にクリアされてしまいます。
特定の条件下、とりわけFUTEX_CMP_REQUEUE_PI操作の実行中に、カーネルは誤って別のタスクのpi_blocked_onフィールドをクリアしてしまいます。この論理エラーにより、スタック上に確保されたrt_mutex_waiter構造体を指すダングリングポインタが残り、実行がユーザー空間に戻った時点でこのポインタは無効となります。
この脆弱性の悪用には、3つのスレッドと3つのfutex変数の間で綿密に調整された相互作用が必要で、依存関係のサイクルを作り出すことでカーネルを-EDEADLKロールバック経路へと強制的に導きます。

このロールバックの過程で、remove_waiter()が別のスレッドに代わって誤って呼び出され、解放済みのスタックメモリへの古い参照が残されてしまいます。このダングリングポインタが一度確立されると、攻撃者はそれを参照解決するカーネルのコードパスを引き起こすことができ、これが強力な悪用プリミティブへと変貌します。
研究者らは、このプリミティブを利用することで、制御されたデータをほぼ任意のカーネルメモリ位置に書き込めることを示しました。prctl(PR_SET_MM_MAP)などのシステムコールを介して解放済みのスタック領域を再取得することで、攻撃者は古いrt_mutex_waiter構造体を細工したデータで上書きできます。
この操作により、ミューテックスの待機キューに使用される赤黒木を含むカーネルのデータ構造を変更できるようになり、最終的に制御されたポインタの書き込みが可能になります。
このエクスプロイトチェーンは、確実な悪用を実現するためにいくつかの高度な技術を組み合わせています。具体的には、プリフェッチタイミング攻撃によるカーネルアドレス空間配置のランダム化(KASLR)の回避、予測可能なカーネルメモリ配置を実現するためのCPUエントリエリア(CEA)メモリ領域の利用、そしてinet6_protosなどのカーネル関数ポインタテーブルの悪用が含まれます。IPv6のUDPプロトコルハンドラを上書きすることで、攻撃者は実行フローをリダイレクトし、カーネルの完全な制御を掌握できます。
エクスプロイトの最終段階では、「DirtyMode」と呼ばれる手法が使用されます。これは、単一のカーネル書き込みによって/proc/sys/kernel/core_patternなどの機密性の高いsysctlエントリのパーミッションビットを変更するというものです。
これにより、攻撃者はroot権限で任意のバイナリを実行できるようになり、権限昇格チェーンが完成します。特筆すべきは、このエクスプロイトの信頼性は97%と報告されており、Googleの kernelCTF環境で実証に成功し、9万2,000ドルを超える報奨金を獲得しています。
この脆弱性は、パッチが適用されていない限り、バージョン2.6.39から7.1までのカーネルを実行するすべてのLinuxシステムに影響を及ぼします。重要な点として、この欠陥の悪用には昇格された権限や名前空間を必要とせず、攻撃対象領域が大幅に広がっています。コンテナ化されたワークロードは特に脆弱で、この問題によりコンテナの分離機構を突破してホストシステムへ侵入することが可能になります。
誤った論理を修正するパッチがリリースされており、現在実行中のスレッドではなく、正しいタスク構造体(waiter->task)が更新されるようになりました。
その他の緩和策としては、スタックの再利用を予測しにくくするRANDOMIZE_KSTACK_OFFSETの有効化や、STATIC_USERMODE_HELPERによるユーザーモードヘルパーの制限が挙げられます。ただし、これらの緩和策はあくまで多層防御の一環であり、直ちにパッチを適用する必要性に代わるものではありません。
セキュリティチームには、パッチ適用済みの最新カーネルバージョンへ遅滞なく更新することが強く推奨されます。影響を受けるシステムの広範さと悪用される可能性の高さを踏まえると、GhostLockは近年公表されたLinuxカーネルの脆弱性の中でも最も重大なものの一つであり、クラウドインフラ、コンテナセキュリティ、共有ホスティング環境に深刻な影響を及ぼす恐れがあります。
Interact with Cyber Threats in Windows, Linux, macOS VMs to Trigger Full Attack Chain - Analyse Malware & Phishing with ANY RUN
翻訳元: https://gbhackers.com/15-year-old-ghostlock-linux-kernel-vulnerability/