LinuxのLinux Kernelにおける不特定の脆弱性
タイトル LinuxのLinux Kernelにおける不特定の脆弱性
概要

Linuxカーネルにおいて、以下の脆弱性が修正されました。drm/buddyでは、丸められた割り当てサイズを検証し、BUG_ONを防止します。DRM_BUDDY_CONTIGUOUS_ALLOCATIONが設定されている場合、要求されたサイズはroundup_pow_of_two()によって次の2の累乗に切り上げられます。同様に、非連続割り当てで大きなmin_block_sizeが設定されている場合は、サイズがround_up()によって切り上げられます。これらの操作により、丸められたサイズがmm-sizeを超えることがあり、その結果BUG_ON(order mm-max_order)が発生します。例えば、10GBのVRAMメモリ上で9GBの連続割り当てを行う場合、roundup_pow_of_two(9GB)が16GBとなり、10GBを超えます。また、10GBのVRAMメモリ上で8GBのmin_block_sizeを持つ9GBの割り当てでは、round_up(9GB, 8GB)が16GBとなり、10GBを超えます。この問題は、丸められたサイズがmm-sizeを超えていないかを検査することで修正されました。非連続または範囲割り当てでsize mm-sizeが無効な場合は、即座に-EINVALを返します。連続割り当てで範囲制限がない場合は、既存の__alloc_contig_try_harder()のフォールバック処理に処理が委ねられます。これにより、不正なユーザー入力はエラーを返すかフォールバックパスを用いるため、BUG_ONに到達するのを防止します。バージョン2:(Matt A)が修正を追加し、Cc stable、Closesタグの追加によってコンテキストを強化しました。

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

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

公表日 2026年5月6日0:00
登録日 2026年5月15日10:58
最終更新日 2026年5月15日10:58
CVSS3.0 : 警告
スコア 5.5
ベクター CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
影響を受けるシステム
Linux
Linux Kernel 6.13 以上 6.18.16 未満
Linux Kernel 6.19 以上 6.19.6 未満
Linux Kernel 6.7 以上 6.12.75 未満
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
その他
変更履歴
No 変更内容 変更日
1 [2026年05月15日]
  掲載
2026年5月15日10:58

NVD脆弱性情報
CVE-2026-43169
概要

In the Linux kernel, the following vulnerability has been resolved:

drm/buddy: Prevent BUG_ON by validating rounded allocation

When DRM_BUDDY_CONTIGUOUS_ALLOCATION is set, the requested size is
rounded up to the next power-of-two via roundup_pow_of_two().
Similarly, for non-contiguous allocations with large min_block_size,
the size is aligned up via round_up(). Both operations can produce a
rounded size that exceeds mm->size, which later triggers
BUG_ON(order > mm->max_order).

Example scenarios:
- 9G CONTIGUOUS allocation on 10G VRAM memory:
roundup_pow_of_two(9G) = 16G > 10G
- 9G allocation with 8G min_block_size on 10G VRAM memory:
round_up(9G, 8G) = 16G > 10G

Fix this by checking the rounded size against mm->size. For
non-contiguous or range allocations where size > mm->size is invalid,
return -EINVAL immediately. For contiguous allocations without range
restrictions, allow the request to fall through to the existing
__alloc_contig_try_harder() fallback.

This ensures invalid user input returns an error or uses the fallback
path instead of hitting BUG_ON.

v2: (Matt A)
- Add Fixes, Cc stable, and Closes tags for context

公表日 2026年5月6日21:16
登録日 2026年5月7日4:08
最終更新日 2026年5月6日22:07
関連情報、対策とツール
共通脆弱性一覧