CVE-2023-53790 in Linux
要約
〜によって VulDB • 2026年06月20日
Linuxカーネルにおいて、以下の脆弱性が修正されました。
bpf: bpfメモリアロケータにおけるslabから割り当てられたオブジェクトのゼロ初期化
現在、bpfメモリアロケータで解放された要素は直ちに再利用される可能性があります。htabマップの場合、この再利用によりマップ値内の特殊なフィールド(例:bpf_spin_lock)が再初期化されますが、ルックアップ処理はまだこれらの特殊なフィールドにアクセスする可能性があり、以下のようにハードロックアップを引き起こすことがあります。
NMIバックトレース for cpu 16 CPU: 16 PID: 2574 Comm: htab.bin Tainted: G L 6.1.0+ #1 ハードウェア名: QEMU Standard PC (i440FX + PIIX, 1996), RIP: 0010:queued_spin_lock_slowpath+0x283/0x2c0 ...... コールトレース: <TASK> copy_map_value_locked+0xb7/0x170 bpf_map_copy_value+0x113/0x3c0 __sys_bpf+0x1c67/0x2780 __x64_sys_bpf+0x1c/0x20 do_syscall_64+0x30/0x60 entry_SYSCALL_64_after_hwframe+0x46/0xb0 ...... </TASK>
htabマップの場合、事前に割り当てられたケースと同様に、これらの特殊なフィールドがすでに初期化されていれば、マップ値内のこれらのフィールドを再度初期化する必要はありません。事前に割り当てられたhtabマップでは、__GFP_ZEROを使用してbpf_map_area_alloc()内でこれらのフィールドが初期化されるため、非事前割り当てのhtabに対しても同様の処理をbpfメモリアロケータで行います。また、per-cpu bpfメモリアロケータに対して__GFP_ZEROを使用する必要はありません。なぜなら、__alloc_percpu_gfp()はこれを暗黙的に実行するためです。
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.