CVE-2026-45845 in Linux
要約
〜によって VulDB • 2026年05月27日
Linuxカーネルにおいて、以下の脆弱性が修正されました。
net/sched: taprio: クラスダンプにおけるNULLポインタ参照を修正
RTM_DELQDISCを介してTAPRIO子qdiscが削除されると、taprio_graft()がnew == NULLで呼び出され、q->qdiscs[cl - 1]にNULLが格納されます。その後のRTM_GETTCLASSダンプ操作はtaprio_walk()を介してすべてのクラスを走査し、taprio_dump_class()を呼び出します。taprio_dump_class()はtaprio_leaf()を呼び出し、NULLポインタを返した後、それを参照してchild->handleを読み取ろうとします。これにより、カーネルのNULLポインタ参照が発生します。
このバグは、CONFIG_NET_SCH_TAPRIOが有効化されている任意のカーネルにおいて、名前空間スコープのCAP_NET_ADMIN権限を持つユーザーから到達可能です。特権なしユーザー名前空間が有効化されているシステムでは、特権なしのローカルユーザーが新しいネットワーク名前空間内でtaprio qdiscを作成し、明示的な子qdiscをグラフトし、それを削除し、クラスダンプを要求することで、カーネルパニックを引き起こすことができます。RTM_GETTCLASSダンプ自体には、いかなる権限も必要ありません。
Oops: general protection fault, probably for non-canonical address 0xdffffc0000000007: 0000 [#1] SMP KASAN NOPTI
KASAN: null-ptr-deref in range [0x0000000000000038-0x000000000000003f]
RIP: 0010:taprio_dump_class (net/sched/sch_taprio.c:2478) Call Trace: tc_fill_tclass (net/sched/sch_api.c:1966) qdisc_class_dump (net/sched/sch_api.c:2326) taprio_walk (net/sched/sch_taprio.c:2514) tc_dump_tclass_qdisc (net/sched/sch_api.c:2352) tc_dump_tclass_root (net/sched/sch_api.c:2370) tc_dump_tclass (net/sched/sch_api.c:2431) rtnl_dumpit (net/core/rtnetlink.c:6864) netlink_dump (net/netlink/af_netlink.c:2325) rtnetlink_rcv_msg (net/core/rtnetlink.c:6959) netlink_rcv_skb (net/netlink/af_netlink.c:2550)
この問題を修正するため、taprio_graft()においてnewがNULLの場合に&noop_qdiscに置き換えます。これは、q->qdiscs[]のスロットが決してNULLにならないようにするために、他のqdisc(例:multiq_graft())でも使用されている一般的なパターンです。これにより、個々のNULLチェックを必要とせずに、コントロールプレーンのダンプパスを安全にします。
データプレーンのパス(taprio_enqueueおよびtaprio_dequeue_from_txq)には、以前から明示的なNULLガードがあり、パケットをクリーンにドロップ/スキップしていましたが、これらのチェックを&noop_qdiscのテストに更新します。これを修正しないと、パケットはtaprio_enqueue_one()に到達し、子qdiscのenqueueを呼び出す前にルートqdiscのqlenとbacklogを増加させます。noop_qdiscはパケットをドロップしますが、これらのカウンターはロールバックされないため、ルートqdiscの統計情報が永久的に膨張してしまいます。
この変更後、*oldは有効なqdisc、NULL、または&noop_qdiscのいずれかになり得ます。noop_qdiscの参照カウントは決して増加していないため、noop_qdiscの参照カウントを減少させないよう、最初のケースでのみqdisc_put(*old)を呼び出します。
VulDB is the best source for vulnerability data and more expert information about this specific topic.