【活用ガイド】

JVNDB-2026-016854

LinuxのLinux Kernelにおける初期化されていないリソースの使用に関する脆弱性

概要

Linuxカーネルにおいて、以下の脆弱性が修正されました。unshare: unshare_fs()の処理を修正しました。unshare(2)には複雑な隅角ケースがあります。flagsにCLONE_NEWNSがあり、かつcurrent-fsがまったく共有されていなかった場合、copy_mnt_ns()にprivateなコピーではなくcurrent-fsが渡されます。これにより、正当性の証明において興味深い問題が生じます。privateがfs-users == 1を意味する場合でも、この条件は真のままである可能性があります。不幸にも、これは単に複雑な正当性の証明以上に悪い問題です。CLONE_NEWCGROUPがCLONE_NEWNSに加わり(current-fs-users == 1である)場合を考えます。current-fsをcopy_mnt_ns()に渡し、成功してcurrent-fs-{pwd,root}が新しい名前空間の対応する場所に切り替わったとします。次にcopy_cgroup_ns()を実行しますが失敗します(例えば-ENOMEMで)。copy_mnt_ns()で作成された名前空間に対してput_mnt_ns()を呼び出すと、それは破壊されマウントツリーは解体されます。しかし、current-fs-rootとcurrent-fs-pwdは切り離されたマウントを指したままです。これらは参照を保持しているためUse-After-Freeではありませんが、unshare(2)が-ENOMEMで失敗しつつ、pwdとrootが切り離された孤立したマウントを指し続けるのは明確なバグです。この問題に関連する別の問題(例:pivot_root()との競合やfork()との競合)も存在しますが、この問題は分離して簡単に修正できます。CLONE_NEWNSを「最初から共有されていなくても新しいfs_structを割り当てる」と扱う修正です。もちろん、「CLONE_NEWNSかつcreate_new_namespaces()のcopy_mnt_ns()呼び出し後に失敗する可能性のある条件がある場合に新しいfs_structを強制的に割り当てる」という方法もありますが、シンプルにしておきましょう。copy_fs_struct()のコストは微小です。もう一つの利点は、CLONE_NEWNSでのcopy_mnt_ns()は常に新規割り当ての、まだ何にも関連付けられていないfs_structを受け取るため、解析が大幅に簡単になることです。ちなみに、このバグはunshare(2)が導入されて以来存在していました。
CVSS による深刻度 (CVSS とは?)

CVSS v3 による深刻度
基本値: 5.5 (警告) [NVD値]
  • 攻撃元区分: ローカル
  • 攻撃条件の複雑さ: 低
  • 攻撃に必要な特権レベル: 低
  • 利用者の関与: 不要
  • 影響の想定範囲: 変更なし
  • 機密性への影響(C): なし
  • 完全性への影響(I): なし
  • 可用性への影響(A): 高
影響を受けるシステム


Linux
  • Linux Kernel 2.6.16.1 以上 5.10.253 未満
  • Linux Kernel 5.11 以上 5.15.203 未満
  • Linux Kernel 5.16 以上 6.1.167 未満
  • Linux Kernel 6.13 以上 6.18.19 未満
  • Linux Kernel 6.19 以上 6.19.9 未満
  • Linux Kernel 6.2 以上 6.6.130 未満
  • Linux Kernel 6.7 以上 6.12.78 未満
  • Linux Kernel 2.6.16
  • Linux Kernel 7.0

想定される影響

当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。
また、当該ソフトウェアが扱う情報について、書き換えは発生しません。
さらに、当該ソフトウェアが完全に停止する可能性があります。
そして、この脆弱性を悪用した攻撃の影響は、他のソフトウェアには及びません。
対策

リリース情報、またはパッチ情報が公開されています。参考情報を参照して適切な対策を実施してください。
ベンダ情報

CWEによる脆弱性タイプ一覧  CWEとは?

  1. 初期化されていないリソースの使用(CWE-908) [NVD評価]
共通脆弱性識別子(CVE)  CVEとは?

  1. CVE-2026-43472
参考情報

  1. National Vulnerability Database (NVD) : CVE-2026-43472
  2. 関連文書 : unshare: fix unshare_fs() handling - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/d7963d6997fea86a6def242ac36198b86655f912)
  3. 関連文書 : unshare: fix unshare_fs() handling - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/6c4b2243cb6c0755159bd567130d5e12e7b10d9f)
  4. 関連文書 : unshare: fix unshare_fs() handling - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/af8f4be3b68ac8caa41c8e5ead0eeaf5e85e42d0)
  5. 関連文書 : unshare: fix unshare_fs() handling - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/845bf3c6963a52096d0d3866e4a92db77a0c03d8)
  6. 関連文書 : unshare: fix unshare_fs() handling - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/aa9ebc084505fb26dd90f4d7a249045aad152043)
  7. 関連文書 : unshare: fix unshare_fs() handling - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/42e21e74061b0ebbd859839f81acf10efad02a27)
  8. 関連文書 : unshare: fix unshare_fs() handling - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/d0d99f60538ddb4a62ccaac2168d8f448965f083)
  9. 関連文書 : unshare: fix unshare_fs() handling - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/d3ffc8f13034af895531a02c30b1fe3a34b46432)
更新履歴

  • [2026年05月25日]
      掲載