CVE-2023-53843

net: openvswitch: reject negative ifindex

published December 9, 2025

CVSS
—
EPSS
0%
Percentile
14.5
In the wild
Unconfirmed
What it is

In the Linux kernel, the following vulnerability has been resolved:

net: openvswitch: reject negative ifindex

Recent changes in net-next (commit 759ab1edb56c ("net: store netdevs

in an xarray")) refactored the handling of pre-assigned ifindexes

and let syzbot surface a latent problem in ovs. ovs does not validate

ifindex, making it possible to create netdev ports with negative

ifindex values. It's easy to repro with YNL:

$ ./cli.py --spec netlink/specs/ovs_datapath.yaml \

--do new \

--json '{"upcall-pid": 1, "name":"my-dp"}'

$ ./cli.py --spec netlink/specs/ovs_vport.yaml \

--do new \

--json '{"upcall-pid": "00000001", "name": "some-port0", "dp-ifindex":3,"ifindex":4294901760,"type":2}'

$ ip link show

-65536: some-port0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000

link/ether 7a:48:21:ad:0b:fb brd ff:ff:ff:ff:ff:ff

...

Validate the inputs. Now the second command correctly returns:

$ ./cli.py --spec netlink/specs/ovs_vport.yaml \

--do new \

--json '{"upcall-pid": "00000001", "name": "some-port0", "dp-ifindex":3,"ifindex":4294901760,"type":2}'

lib.ynl.NlError: Netlink error: Numerical result out of range

nl_len = 108 (92) nl_flags = 0x300 nl_type = 2

error: -34 extack: {'msg': 'integer out of range', 'unknown': [[type:4 len:36] b'\x0c\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x03\x00\xff\xff\xff\x7f\x00\x00\x00\x00\x08\x00\x01\x00\x08\x00\x00\x00'], 'bad-attr': '.ifindex'}

Accept 0 since it used to be silently ignored.

The record
Technical detail
CVSS
Not scored
CVSS v4.0
Not supplied
EPSS
0.00242 · 14.5th percentile
Published
2025-12-09T01:30Z
EPSS history
Timeline
  • 09 DEC 01:30Z
    net: openvswitch: reject negative ifindex
    cvelistv5