【活用ガイド】

JVNDB-2026-019326

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

概要

Linuxカーネルにおいて、以下の脆弱性が修正されました。usb: usblp: LPGETSTATUS ioctlを介した初期化されていないヒープリークの問題です。このドライバの以前の問題と同様に、usblp_ctrl_msg()はusb_control_msg()の戻り値である実際に転送されたバイト数を破棄し、0またはエラーコード(-errno)に折り畳みます。本来はその短いコマンドを検出してエラーを返すべきですが、多くのプリンタが「不正な」応答を返すため、それはできません。statusbufはプローブ時にkmalloc(8)で割り当てられ、最初のLPGETSTATUS ioctlの前に一度も初期化されていません。usblp_read_status()は1バイトの要求を行います。悪意のあるプリンタが0バイトで応答した場合、*statusbufはstaleなkmallocヒープの1バイトとなり、それがローカルのint型変数であるstatusに符号拡張され、LPGETSTATUS経路を通じて直接ioctl呼び出し元にcopy_to_user()されます。この問題は、プローブ時にメモリバッファをゼロクリアすることで修正されました。後の呼び出しで短い読み取りが発生しても、デバイスが最後に送信したものと同一であるため、情報の漏洩は発生しません。
CVSS による深刻度 (CVSS とは?)

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


Linux
  • Linux Kernel 2.6.12.1 以上 5.10.258 未満
  • Linux Kernel 5.11 以上 5.15.209 未満
  • Linux Kernel 5.16 以上 6.1.175 未満
  • Linux Kernel 6.13 以上 6.18.30 未満
  • Linux Kernel 6.19 以上 7.0.7 未満
  • Linux Kernel 6.2 以上 6.6.140 未満
  • Linux Kernel 6.7 以上 6.12.88 未満
  • Linux Kernel 2.6.12
  • Linux Kernel 7.1

想定される影響

・当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。
・当該ソフトウェアが扱う情報について、書き換えは発生しません。
・当該ソフトウェアが完全に停止する可能性があります。
対策

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

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

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

  1. CVE-2026-46167
参考情報

  1. National Vulnerability Database (NVD) : CVE-2026-46167
  2. 関連文書 : usb: usblp: fix uninitialized heap leak via LPGETSTATUS ioctl - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/d06d937b0a4cdb8867f04275c8100a8b943da31a)
  3. 関連文書 : usb: usblp: fix uninitialized heap leak via LPGETSTATUS ioctl - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/0f7c41314ebf17049917a452684db371babf711a)
  4. 関連文書 : usb: usblp: fix uninitialized heap leak via LPGETSTATUS ioctl - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/a502b997668401a6821501fc98b7f9220f9b6ff2)
  5. 関連文書 : usb: usblp: fix uninitialized heap leak via LPGETSTATUS ioctl - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/6b0e7438e31c74b01514d31ff35c1e688c4baaba)
  6. 関連文書 : usb: usblp: fix uninitialized heap leak via LPGETSTATUS ioctl - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/762a6ccf391db0d629e590a803a3a2231e17dd3f)
  7. 関連文書 : usb: usblp: fix uninitialized heap leak via LPGETSTATUS ioctl - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/087d97342c100138ea7d75a50977c9c2319f957b)
  8. 関連文書 : usb: usblp: fix uninitialized heap leak via LPGETSTATUS ioctl - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/b38e53cbfb9d84732e5984fbd73e128d592415c5)
  9. 関連文書 : usb: usblp: fix uninitialized heap leak via LPGETSTATUS ioctl - kernel/git/stable/linux.git - Linux kernel stable tree (https://git.kernel.org/stable/c/cf24991619be317e2769310b4a367bf4a04b82bc)
更新履歴

  • [2026年06月11日]
      掲載