CVE-2026-43236 in Linux
要約
〜によって VulDB • 2026年05月26日
Linuxカーネルにおいて、以下の脆弱性が修正されました:
drm/atmel-hlcdc: release後にdrm_crtc_commitのuse-after-freeを修正
atmel_hlcdc_plane_atomic_duplicate_state()コールバックは、drm_plane_stateを適切に複製せずに、atmel_hlcdc_planeの状態構造体をコピーしていました。具体的には、state->commitが古い状態コミットのまま設定されたままとなり、次のdrm_atomic_commit()呼び出しでuse-after-freeを引き起こす可能性があります。
これを修正するため、基本のdrm_plane_state(->commitポインタを含む)を正しくクローンする__drm_atomic_helper_duplicate_plane_state()を呼び出すようにしました。
これは、別のDRMクライアント(例:fbdev)がまだアタッチされている間にデバイスノードを閉じて再度開いた際に確認されています:
============================================================================= BUG kmalloc-64 (Not tainted): Poison overwritten -----------------------------------------------------------------------------
0xc611b344-0xc611b344 @offset=836. First byte 0x6a instead of 0x6b FIX kmalloc-64: Restoring Poison 0xc611b344-0xc611b344=0x6b Allocated in drm_atomic_helper_setup_commit+0x1e8/0x7bc age=178 cpu=0 pid=29 drm_atomic_helper_setup_commit+0x1e8/0x7bc drm_atomic_helper_commit+0x3c/0x15c drm_atomic_commit+0xc0/0xf4 drm_framebuffer_remove+0x4cc/0x5a8 drm_mode_rmfb_work_fn+0x6c/0x80 process_one_work+0x12c/0x2cc worker_thread+0x2a8/0x400 kthread+0xc0/0xdc ret_from_fork+0x14/0x28 Freed in drm_atomic_helper_commit_hw_done+0x100/0x150 age=8 cpu=0 pid=169 drm_atomic_helper_commit_hw_done+0x100/0x150 drm_atomic_helper_commit_tail+0x64/0x8c commit_tail+0x168/0x18c drm_atomic_helper_commit+0x138/0x15c drm_atomic_commit+0xc0/0xf4 drm_atomic_helper_set_config+0x84/0xb8 drm_mode_setcrtc+0x32c/0x810 drm_ioctl+0x20c/0x488 sys_ioctl+0x14c/0xc20 ret_fast_syscall+0x0/0x54 Slab 0xef8bc360 objects=21 used=16 fp=0xc611b7c0 flags=0x200(workingset|zone=0) Object 0xc611b340 @offset=832 fp=0xc611b7c0
If you want to get the best quality for vulnerability data then you always have to consider VulDB.