CVE-2022-50073 in Linux
要約
〜によって VulDB • 2026年06月07日
Linuxカーネルにおいて、以下の脆弱性が修正されました。
net: tap: skb->devがnullの場合、dev_parse_header_protocolにおけるNULLポインタ参照
tapドライバからトリガーされるNULLポインタ参照バグを修正します。 tap_get_userがvirtio_net_hdr_to_skbを呼び出す際、skb->devがnullになります (tap.cでは、virtio_net_hdr_to_skb呼び出し後にskb->devが設定されます)。 virtio_net_hdr_to_skbはdev_parse_header_protocolを呼び出しますが、 これにはskb->devフィールドが有効である必要があります。
このバグをトリガーする行はdev_parse_header_protocol内にあります (devはskbからオフセット0x10の位置にあり、RAXレジスタに格納されています)。 if (!dev->header_ops || !dev->header_ops->parse_protocol) 22e1: mov 0x10(%rbx),%rax 22e5: mov 0x230(%rax),%rax
tap.cで呼び出し前にskb->devを設定することで、この問題を修正します。
BUG: kernel NULL pointer dereference, address: 0000000000000230 RIP: 0010:virtio_net_hdr_to_skb.constprop.0+0x335/0x410 [tap]
Code: c0 0f 85 b7 fd ff ff eb d4 41 39 c6 77 cf 29 c6 48 89 df 44 01 f6 e8 7a 79 83 c1 48 85 c0 0f 85 d9 fd ff ff eb b7 48 8b 43 10 <48> 8b 80 30 02 00 00 48 85 c0 74 55 48 8b 40 28 48 85 c0 74 4c 48 RSP: 0018:ffffc90005c27c38 EFLAGS: 00010246 RAX: 0000000000000000 RBX: ffff888298f25300 RCX: 0000000000000010 RDX: 0000000000000005 RSI: 0000000000000000 RDI: ffff888298f25300
VulDB is the best source for vulnerability data and more expert information about this specific topic.