Linuxカーネルのrtmutexの脆弱性CVE-2026-43499

カテゴリ
脆弱性の公表
タグ
国外
目次
  1. 脆弱性の内容
    1. 不具合の仕組み
    2. 発見とAndroidへの移植
  2. 時系列
  3. 対象の製品と版
  4. 悪用の状況
  5. 修正と回避策
  6. 未公表の事項
  7. 注
  8. 出典
  9. 更新記録
  10. 関連記事

NebuSecの2026年7月7日の技術解説によると、Linuxカーネルのrtmutexの脆弱性CVE-2026-43499(GhostLock)は2011年以降の主要なディストリビューションすべてにあり、成功率97%の権限昇格とコンテナ脱出に使えた⁠[17]。Red Hat、SUSE、Amazon、Oracleなどは5月から8月にかけて修正版を出した⁠[4、7、8、9]。

脆弱性の内容

表1:CVE-2026-43499の評価
項目値資料
題rtmutex: Use waiter::task instead of current in remove_waiter()⁠[1]
CVSS 3.1の基本値7.8(LinuxカーネルのCNAはHIGH。Red Hat、Ubuntuも同じ値)⁠[1、4、5]
CVSS 3.1のベクトル(LinuxカーネルのCNA)AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H⁠[1]
成立の条件(LinuxカーネルのCNA)futex(2)のFUTEX_CMP_REQUEUE_PIから到達し、ネットワークからは到達できない。特権の無いローカル利用者が、能力・root・名前空間なしで呼び出せる⁠[1]
CWECWE-416(Use After Free。CISAの評価とNVD)、CWE-825(Red Hat)⁠[1、4、16]
配布元の重要度Red HatはImportant、UbuntuはHigh、SUSEはimportant⁠[4、5、7]
悪用されたときの影響(Red Hat)ローカルの攻撃者による権限昇格かサービス妨害⁠[3]

Openwallの運営者はoss-securityへの返信で、最近のほかのfutexの不具合CVE-2026-23415・CVE-2026-31554・CVE-2026-52973も、カーネルのCNAのCVSSはGhostLockと同じ7.8だと書いた⁠[21]。

不具合の仕組み

Linuxのmanページ(futex(2))によると、PI futex(優先度継承のfutex)は優先度の逆転に対処するためのものである⁠[27]。FUTEX_WAIT_REQUEUE_PIとFUTEX_CMP_REQUEUE_PIは、優先度継承に対応したPOSIXスレッドの条件変数のために加えられた⁠[27]。

LinuxカーネルのCNAはCVE記録で、remove_waiter()はslowlockの経路のほか、futex_requeue()から呼ばれるrt_mutex_start_proxy_lock()のproxy-lockの巻き戻しにも使われると説明した⁠[1]。後者では「waiter::task」がcurrentではないのに、remove_waiter()はcurrentに対してdequeueを行う⁠[1]。その結果、rbtreeのdequeueがロック無しで行われ、優先度の連鎖の調整が誤ったタスクに対して行われるほか、waiterのタスクのpi_blocked_onが消されず、UAFに至りうるダングリングポインタが残る⁠[1]。修正は、remove_waiter()の関連する全操作でcurrentの代わりに「waiter::task」を使う⁠[1]。

NebuSecの技術解説では、waiterはスレッドのカーネルスタック上にある⁠[17]。巻き戻しは呼び出し側のpi_blocked_onを消し、待機していたタスクのpi_blocked_onは、ユーザー空間に戻った後も解放済みのスタックフレームを指したまま残る⁠[17]。lockdepはpi_lockが保持されているかだけを見て、誰のロックかを見ないので、この問題を検出しない⁠[17]。影響の範囲はv2.6.39-rc1からv7.1-rc1で、条件はCONFIG_FUTEX_PI=yだけであり、能力もuser namespaceも要らない⁠[17]。

発見者の側はnebusec.aiのアドレスから送ったoss-securityへの返信で、CVE-2026-43499自体は情報漏えいを与えず、攻撃は他のKASLRの回避に強く依存すると書いた⁠[22]。現行のKASANは、この種のスタックのUAFを検出できない⁠[22]。

発見とAndroidへの移植

Nebula Security(NebuSec)は技術解説で、GoogleのkernelCTFで報奨を受けたと書き、リモートの検証環境では約5秒でflagを得たとした⁠[17]。

The Hacker Newsの7月8日の記事では、NebulaはAIを使った不具合探索の道具VEGAでこの脆弱性を見つけた⁠[24]。GhostLockはNebulaがIonStackと呼ぶ攻撃の連鎖の後半で、前半はFirefoxの脆弱性CVE-2026-10702だと報じた⁠[24]。

SecurityWeekは、GhostLockを過去数か月に公表された一連のLinuxカーネルの欠陥(Januscape、Bad Epoll、DirtyClone、CIFSwitch、DirtyDecrypt、Fragnesia、Dirty Frag)の最新のものと報じた⁠[25]。

NebuSecの7月15日の解説では、GhostLockを使ってAndroid 17をroot化する手段を作り、Pixel 10(Android 17)で検証した⁠[19]。端末でCONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULTが有効なら、成功率は1/8以下に下がる⁠[19]。NebuSecは、コミュニティがSamsung Galaxy、Vivo、Moto、Redmiの端末にGhostLockを移植したと書いた⁠[19]。

目次へ

時系列

時系列
日付主体内容資料
2026年4月18日NebuSecsecurity@kernel.orgに不具合を報告し、修正案を送った⁠[17]
2026年4月20日-別のパッチで修正された〔注1〕⁠[17]
2026年5月4日-修正の第1版がバックポートされた⁠[17]
2026年5月21日LinuxカーネルのCNACVE-2026-43499を公開した⁠[1]
2026年6月25日LinuxカーネルのCNACVE-2026-53166を公開した⁠[2]
2026年6月30日GooglekernelCTFへのNebuSecの投稿を認め、92,337ドルの報奨を出した⁠[17]
2026年7月3日-修正の第1版が持ち込んだCVE-2026-53166が修正された〔注2〕⁠[17]
2026年7月7日NebuSec技術解説「IonStack part II: GhostLock」を公開した⁠[17、26]
2026年7月8日Red Hatセキュリティ公報RHSB-2026-010を出した⁠[3]
2026年7月8日oss-securityの投稿者メーリングリストでGhostLockを報告した⁠[20]
2026年7月9日AlmaLinux修正したカーネルをテスト用のリポジトリで出した⁠[10]
2026年7月10日LinuxカーネルのCNACVE-2026-53166を取り下げた⁠[2]
2026年7月14日Siemens公報SSA-019113の初版を出した⁠[12]
2026年7月15日NebuSecAndroid 17のroot化の解説を公開した⁠[19]
2026年10月13日Siemens公報SSA-457936とSSA-784472を出した⁠[13、14]

目次へ

対象の製品と版

LinuxカーネルのCNAはCVE記録で、脆弱性を持ち込んだコミットを8161239a8bcc、上流の修正コミットを3bfdc63936ddとし、stable各系列の修正コミットも参照に挙げた⁠[1]。NebuSecは、修正を当てていないすべてのディストリビューションが影響を受けると書いた⁠[17]。

Red Hatの公報では、直接の影響はRHEL 6・7・8・9・10に及ぶ⁠[3]。RHELのカーネルに依るRHEL CoreOS、OpenShift Container Platform、OpenStack Platform、Red Hat Virtualizationも影響を受けうる⁠[3]。リアルタイムスケジューリングやPI futexを使わない環境は露出が小さいが、影響する経路はすべての標準のカーネルに含まれる⁠[3]。

表2:配布元の対応状況
配布元状態修正版・アドバイザリ資料
Linuxカーネル(上流)2.6.39から影響、修正済み5.10.261・5.15.212・6.1.175・6.6.140・6.12.86・6.18.27・7.0.4の各系列と7.1⁠[1]
Red Hat(NVIDIA for RHEL 10)修正版あり7月10日のRHSA-2026:37728⁠[4]
Red Hat(RHEL 9・10)修正版あり7月13日のRHSA-2026:38491・RHSA-2026:38492(RHEL 10はkernel-6.12.0-211.33.1.el10_2)⁠[4]
Red Hat(RHEL 8)修正版あり7月14日のRHSA-2026:39083⁠[4]
Red Hat(RHEL 7 ELS・RHEL 6 ELS)修正版あり7月17日のRHSA-2026:41235、7月20日のRHSA-2026:41920⁠[4]
Red Hat(kpatch)修正版あり8月24日に配布⁠[4]
Red Hat(RHEL 9のkernel-rt)「Affected」の行が残る-⁠[4]
Canonical(Ubuntu 26.04 LTS・24.04 LTS)修正版あり(26.10はNot affected)7.0.0-27.27、6.8.0-136.136。関連するUSNの最初は7月1日のUSN-8488-1⁠[5]
Canonical(Ubuntu 22.04・20.04)修正版あり(25.10はIgnored)5.15.0-187.197、5.4.0-234.254ほか⁠[5]
Debian修正版ありbullseye 5.10.262-1(DLA-4717-1)、bookworm 6.1.176-1(DLA-4665-1)、trixie 6.12.86-1、unstable 7.0.4-1⁠[6]
SUSEResolved最初の告知は6月5日のSUSE-SU-2026:22048-1⁠[7]
Amazon(Amazon Linux 2023)修正版ありkernel6.12・kernel6.18は5月26日(ALAS2023-2026-1753・1754)、kernelは6月22日(ALAS2023-2026-1882)⁠[8]
Amazon(Amazon Linux 2)修正版あり7月10日のALAS2-2026-3801ほか⁠[8]
Oracle(Oracle Linux 7〜10)修正版ありUEKは6月16日のELSA-2026-50319から、RHCKはOL8が7月14日、OL9が7月15日、OL10が8月15日⁠[9]
AlmaLinux8・9・10のすべてが影響、修正版ありkernel-4.18.0-553.141.2.el8_10、kernel-5.14.0-687.24.1.el9_8、kernel-6.12.0-211.32.1.el10_2以降⁠[10]
CloudLinuxサポート中の全版が影響、修正版ありCloudLinux kernel、AlmaLinux kernel、TuxCare ELS、KernelCare livepatchの4系統⁠[11]

The Hacker Newsは、7月初めの段階でUbuntuが24.04・22.04・20.04 LTSを脆弱または対応中としていたと報じた⁠[24]。

TuxCareの記事によると、Red HatのCVEのページは7月8日の早い段階ではRHELを脆弱でないと表示し、同じ日のうちに全RHELカーネルをAffectedに改めた⁠[23]。

Siemensは、SIMATIC S7-1500 CPU 1518(F)-4 PN/DP MFPの追加のGNU/Linuxサブシステムの公報にCVE-2026-43499を挙げた(V3.1.6はSSA-019113、V3.1.7はSSA-457936)⁠[12、13]。SIMATIC S7-1500 TM MFPの公報SSA-784472にも挙げた⁠[14]。CVE記録には10月15日、SiemensのADPがSIMATIC S7-1500 CPU 1518-4 PN/DP MFPなどを影響を受ける製品として加えた⁠[1]。

目次へ

悪用の状況

The Hacker Newsは、実環境で悪用している者は知られていないが、Nebulaは動作する攻撃コードを公開したと報じた⁠[24]。

CVE記録のCISAの評価(Vulnrichment)では、SSVCのExploitationは「poc」、Automatableは「no」、Technical Impactは「total」である⁠[1]。NVDの記録には、CISAのKEVに登録した日の項目が無い⁠[16]。

CloudLinuxの7月8日の告知によると、攻撃コードは現状ではarm64のAndroid端末に向けたもので、x86_64のLinuxでの攻撃の手順は技術解説に書かれている⁠[11]。

oss-securityでGhostLockを報告した投稿者は、公開のpoc.cで7.0.0-14のカーネルのUbuntuをクラッシュ・ハングさせたと書いた⁠[20]。Debian 13(6.12.95+deb13-amd64)とvanillaの6.6.144は脆弱でなかった⁠[20]。TuxCareの記事では、KernelCareの技術者が7月8日の朝に把握して同じ日に再現を始め、Debian 11/12/13、EL7、EL10で発生とローカルのDoSを再現した⁠[23]。

目次へ

修正と回避策

Red Hatは公報で、CVE-2026-43499とCVE-2026-53166の修正の公開を急いでいるとした⁠[3]。実行中に無効にできるカーネルのパラメータやモジュールは無く、更新したカーネルの適用だけが完全な対処だと説明した⁠[3]。9月8日の更新で、公報の状態をResolvedにした⁠[3]。

NebuSecの技術解説では、最初の修正は攻撃を防ぐが、NULLポインタ参照(NPD)に至る場合を取りこぼし、そのNPDは40a25d59e85bで直された⁠[17]。RANDOMIZE_KSTACK_OFFSETが有効だと、スタックの再利用の段は約1/32(5ビット)〔注3〕の推測になる⁠[17]。提出した2つの対象は、いずれもこの設定を既定で無効にしている⁠[17]。STATIC_USERMODE_HELPERはこのDirtyModeの経路を塞ぐが、同じ考え方は他の/proc/sysの設定にも広げられる⁠[17]。

NebuSecは要約のページで、修正とその追加の修正の両方を含む修正済みのカーネル(最新のLTS)への更新を挙げ、サイト単位のきれいな回避策は無いとした⁠[18]。RANDOMIZE_KSTACK_OFFSETについては、修正の代わりにならないと書いた⁠[18]。発見者の側はoss-securityへの返信で、RANDOMIZE_KSTACK_OFFSET=yなら理論上の最良の成功率が2%未満になるとした⁠[22]。

TuxCareの記事では、コンテナでPI futexの操作(FUTEX_LOCK_PI、FUTEX_WAIT_REQUEUE_PI、FUTEX_CMP_REQUEUE_PI)を拒むseccompの方針は、発生の経路を塞ぐ⁠[23]。その代わり、これらのロックを使うワークロードは動かなくなる⁠[23]。

oss-securityに7月8日にGhostLockを報告した投稿者は、無効にできるモジュールや設定による緩和策は無いと書いた⁠[20]。Openwallの運営者も返信で、futexは中核の機能なので良い緩和策は無いと述べた⁠[21]。

AlmaLinuxの告知では、上流のCentOS Stream/RHELの更新に先んじて出す判断は、技術運営委員会ALESCoによるものだった⁠[10]。その後の追記で、AlmaLinuxは修正したカーネルを本番のリポジトリに出したとした⁠[10]。

CloudLinuxは告知で、実用的な緩和策は無く、修正したカーネルかKernelCareのライブパッチが修正になると説明した⁠[11]。9月16日の更新では、CloudLinux 8 LTSにはライブパッチが無く、修正したELSカーネルを使う⁠[11]。

Siemensの10月13日の公報によると、SIMATIC S7-1500 CPU 1518(F)-4 PN/DP MFP V3.1.7とSIMATIC S7-1500 TM MFP V1.1.1は修正を準備中である⁠[13、14]。Siemensは修正の無い製品に特定の緩和策を推奨し、保守を終えたV3.1.6には最新版への更新を求めた⁠[12、13]。

香港中文大学の情報技術サービスセンター(ITSC)は7月9日の注意喚起で、学内に3つの措置を求めた⁠[15]。

  • ディストリビューションの最新のカーネルの適用と、適用後の再起動⁠[15]
  • コンテナ環境での、ホストのカーネルの更新⁠[15]
  • すぐに更新できない場合の、信頼できる利用者へのローカルのシェルの制限⁠[15]

目次へ

未公表の事項

  • NebuSecの成功率97%の試験の回数と環境
  • SiemensのSIMATIC S7-1500 CPU 1518(F)-4 PN/DP MFP V3.1.7とSIMATIC S7-1500 TM MFP V1.1.1の修正の時期
  • Androidの各端末での修正の時期
  • LinuxカーネルのCNAがCVE-2026-53166を取り下げた理由(CVE記録には取り下げの定型の文だけがある⁠[2])

注

  • 〔注1〕oss-securityへの7月8日の投稿は、修正3bfdc63936ddのコミット日を4月21日とした⁠[20]。
  • 〔注2〕NebuSecの要約のページは、CVE-2026-53166の修正の日を6月2日とした⁠[18]。
  • 〔注3〕要約のページでは、この推測を約1/64(5ビット超)とした⁠[18]。

出典

当事者

関係組織

公的機関

  • [16]National Institute of Standards and Technology『CVE-2026-43499』(2026年5月21日公開、2026年10月15日更新)

調査・観測

報道機関

背景資料

更新記録

  • 2026年7月11日:公開した。
  • 2026年7月13日:TuxCareの記事の7月13日の更新版(出典23)で示された再現の記録とseccompの方針を「悪用の状況」「修正と回避策」に加えた。
  • 2026年7月14日:Siemensの公報SSA-019113(出典12)を「時系列」「対象の製品と版」に加えた。
  • 2026年7月15日:NebuSecのAndroid 17のroot化の解説(出典19)を「脆弱性の内容」「時系列」に加えた。
  • 2026年8月26日:CVE記録のCISAの評価の8月26日の更新(出典1)で示されたSSVCの値とCWEを「脆弱性の内容」「悪用の状況」に加えた。
  • 2026年9月8日:Red Hatの公報RHSB-2026-010の9月8日の更新(出典3)で状態がResolvedになったことを「修正と回避策」に加えた。
  • 2026年9月16日:CloudLinuxの告知の9月16日の更新(出典11)で示された4系統の修正とCloudLinux 8 LTSの扱いを「対象の製品と版」「修正と回避策」に加えた。
  • 2026年10月13日:Siemensの公報SSA-457936・SSA-784472(出典13、14)とSSA-019113の10月13日の更新(出典12)を「時系列」「対象の製品と版」「修正と回避策」に加えた。
  • 2026年10月15日:CVE記録とNVDの記録の10月15日の更新(出典1、16)で加わったSiemensのADPの製品を「対象の製品と版」に加えた。
  • 2026年10月18日:Ubuntuのページの10月18日の更新(出典5)に合わせ、「対象の製品と版」の表のUbuntuの行を改めた。

目次へ