CVE-2023-53188None▾ SunlitIn the Linux kernel, the following vulnerability has been resolved: net: openvswitch: fix race on port output assume the following setup on a single machine: 1. An openvswitch instance with one bridge and default flows 2. two network n…
▾ Sunlit zone — Low / medium · no exploitation signal
impact 2.8 · likelihood 0 · exploitation 0
Need a working PoC? Pro members can cast a request and our team develops one — it lands right here.
Stakeholder-Specific Vulnerability Categorization from CISA's ADP record at CVE.org: whether exploitation is observed, whether an attack can be automated, and how much of the system is at stake.
Exploit-prediction probability, daily snapshots since Nov 5.
Disclosure to exploitation, from the record and what we observed since indexing it.
Disclosed via CVEORG
Last analysed / modified upstream
0.1%
In the Linux kernel, the following vulnerability has been resolved:
net: openvswitch: fix race on port output
assume the following setup on a single machine:
when following the actions below the host has a chance of getting a cpu stuck in a infinite loop:
there is a low chance that this will cause the below kernel cpu stuck message. If this does not happen just retry. Below there is also the output of bpftrace for the functions mentioned in the output.
The series of events happening here is:
unregister_netdevice_many_notify somewhere in the processNETREG_UNREGISTERING on both ends of the veth and
then runs synchronize_netcall_netdevice_notifiers with NETDEV_UNREGISTERdp_device_event which calls
ovs_netdev_detach_dev (if a vport is found, which is the case for
the veth interface attached to ovs)dp_device_event then queues the vport deletion to work in
background as a ovs_lock is needed that we do not hold in the
unregistration pathunregister_netdevice_many_notify continues to call
netdev_unregister_kobject which sets real_num_tx_queues to 0If after 7. but before 9. a packet is send to the ovs vport (which is
not deleted at this point in time) which forwards it to the
dev_queue_xmit flow even though the device is unregistering.
In skb_tx_hash (which is called in the dev_queue_xmit) path there is
a while loop (if the packet has a rx_queue recorded) that is infinite if
dev->real_num_tx_queues is zero.
To prevent this from happening we update do_output to handle devices
without carrier the same as if the device is not found (which would
be the code path after 9. is done).
Additionally we now produce a warning in skb_tx_hash if we will hit
the infinite loop.
bpftrace (first word is function name):
_dev_queue_xmit server: real_num_tx_queues: 1, cpu: 2, pid: 28024, tid: 28024, skb_addr: 0xffff9edb6f207000, reg_state: 1 netdev_core_pick_tx server: addr: 0xffff9f0a46d4a000 real_num_tx_queues: 1, cpu: 2, pid: 28024, tid: 28024, skb_addr: 0xffff9edb6f207000, reg_state: 1 dp_device_event server: real_num_tx_queues: 1 cpu 9, pid: 21024, tid: 21024, event 2, reg_state: 1 synchronize_rcu_expedited: cpu 9, pid: 21024, tid: 21024 synchronize_rcu_expedited: cpu 9, pid: 21024, tid: 21024 synchronize_rcu_expedited: cpu 9, pid: 21024, tid: 21024 synchronize_rcu_expedited: cpu 9, pid: 21024, tid: 21024 dp_device_event server: real_num_tx_queues: 1 cpu 9, pid: 21024, tid: 21024, event 6, reg_state: 2 ovs_netdev_detach_dev server: real_num_tx_queues: 1 cpu 9, pid: 21024, tid: 21024, reg_state: 2 netdev_rx_handler_unregister server: real_num_tx_queues: 1, cpu: 9, pid: 21024, tid: 21024, reg_state: 2 synchronize_rcu_expedited: cpu 9, pid: 21024, tid: 21024 netdev_rx_handler_unregister ret server: real_num_tx_queues: 1, cpu: 9, pid: 21024, tid: 21024, reg_state: 2 dp ---truncated---
Linux >= 7f8a436eaa2c3ddd8e1ff2fbca267e6275085536 < 9b0dd09c1ceb35950d2884848099fccc9ec9a123Linux >= 7f8a436eaa2c3ddd8e1ff2fbca267e6275085536 < 284be5db6c8d06d247ed056cfc448c4f79bbb16cLinux >= 7f8a436eaa2c3ddd8e1ff2fbca267e6275085536 < 5efcb301523baacd98a47553d4996e924923114dLinux >= 7f8a436eaa2c3ddd8e1ff2fbca267e6275085536 < 644b3051b06ba465bc7401bfae9b14963cbc8c1cLinux >= 7f8a436eaa2c3ddd8e1ff2fbca267e6275085536 < 56252da41426f3d01957456f13caf46ce670ea29Linux >= 7f8a436eaa2c3ddd8e1ff2fbca267e6275085536 < 066b86787fa3d97b7aefb5ac0a99a22dad2d15f8Linux 4.3Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
Connected by shared product, vendor, weakness, or advisory.
CVE-2026-99284Nonenet: skbuff: propagate shared-frag marker in skb_zerocopy()
CVE-2026-99283Nonenetfilter: conntrack: tcp: use UNACK timeout for non-closing RST packets
CVE-2026-99272Nonesmb: client: validate the data area in SMB2_read()
CVE-2026-99271NoneALSA: line6: Clear prev_fbuf on capture buffer release
CVE-2026-99273Noneksmbd: reserve space for the UTF-16 terminator in stream info
CVE-2026-99275Nonesmb: client: reject short SESSION_SETUP responses