CVE-2025-22111

Linux kernel (Azure) vulnerabilities

Beschreibung

Im Linux-Kernel wurde folgende Schwachstelle behoben:

net: Entfernen des RTNL-Tanzes für SIOCBRADDIF und SIOCBRDELIF.

SIOCBRDELIF wird zuerst an dev_ioctl() übergeben und später an br_ioctl_call() weitergeleitet, was einen unnötigen RTNL-Tanz verursacht und den Splat unten [0] unter RTNL-Druck auslöst.

Angenommen, Thread A versucht, ein Gerät von einer Brücke zu trennen, während Thread B die Brücke entfernen möchte. In dev_ioctl() erhöht Thread A die Referenzanzahl des Brücken-Geräts mit netdev_hold() und gibt RTNL frei, da der folgende br_ioctl_call() RTNL erneut erwirbt.

In der Rennsituation könnte Thread B RTNL erwerben und versuchen, das Brücken-Gerät zu entfernen. Dann würde Thread B RTNL freigeben und auf netdev_put() von Thread A warten.

Thread A muss jedoch nach dem Freigeben in dev_ifsioc() weiterhin RTNL halten, was unter RTNL-Druck lange dauern kann und den Splat durch Thread B verursacht.

Um die unnötige Blockierung von SIOCBRDELBR zu vermeiden, rufen wir dev_ioctl() nicht für SIOCBRADDIF und SIOCBRDELIF auf.

Im Pfad von dev_ioctl() tun wir Folgendes:

  1. Kopieren der Struktur ifreq mit get_user_ifreq in sock_do_ioctl()
  2. Überprüfen von CAP_NET_ADMIN in dev_ioctl()
  3. Aufrufen von dev_load() in dev_ioctl()
  4. Abrufen des Master-Geräts aus ifr.ifr_name in dev_ifsioc()

Punkt 3 kann durch request_module() in br_ioctl_call() erledigt werden, daher verschieben wir 1., 2. und 4. nach br_ioctl_stub().

Beachten Sie, dass Punkt 2 auch später in add_del_if() überprüft wird, aber es ist besser vor RTNL durchzuführen.

SIOCBRADDIF und SIOCBRDELIF wurden seit der Vorgeschichte von Git in dev_ioctl() verarbeitet, und es scheint keinen speziellen Grund dafür zu geben.

[0]: unregister_netdevice: warten auf Freigabe von wpan3. Verwendungszähler = 2 ref_tracker: wpan3@ffff8880662d8608 hat 1/1 Benutzer bei __netdev_tracker_alloc include/linux/netdevice.h:4282 [inline] netdev_hold include/linux/netdevice.h:4311 [inline] dev_ifsioc+0xc6a/0x1160 net/core/dev_ioctl.c:624 dev_ioctl+0x255/0x10c0 net/core/dev_ioctl.c:826 sock_do_ioctl+0x1ca/0x260 net/socket.c:1213 sock_ioctl+0x23a/0x6c0 net/socket.c:1318 vfs_ioctl fs/ioctl.c:51 [inline] __do_sys_ioctl fs/ioctl.c:906 [inline] __se_sys_ioctl fs/ioctl.c:892 [inline] __x64_sys_ioctl+0x1a4/0x210 fs/ioctl.c:892 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xcb/0x250 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f

Metriken

Severity
medium
kein öffentlicher PoC bekannt
5.5
Quelle: nvd-v3
9.5 %
Niedrig — CVE gehört zu den unteren 10 % der heute bewerteten CVEs.
0.2 %
Niedrig — Modell schätzt < 1 % Ausnutzungs-Wahrscheinlichkeit.
Veröffentlicht
2026-06-16 22:30 UTC

Betroffene Betriebssysteme

  • linux

    amazon / amazon_linux

  • linux

    ubuntu / awsbionic

  • linux

    ubuntu / awsjammy

  • linux

    ubuntu / awsnoble

  • linux

    ubuntu / awsresolute

  • linux

    ubuntu / awsxenial

  • linux

    ubuntu / aws-6.8jammy

  • linux

    ubuntu / aws-hwexenial

  • linux

    ubuntu / azurejammy

  • linux

    ubuntu / azurenoble

  • linux

    ubuntu / azureresolute

  • linux

    ubuntu / azurexenial

  • linux

    ubuntu / azure-4.15bionic

  • linux

    suse / basesystem_module15

  • linux

    debian / debian_linux11.0

  • linux

    debian / debian_linux12.0

  • linux

    debian / debian_linux13.0

  • linux

    suse / development_tools_module15

  • linux

    redhat / enterprise_linux10.0

  • linux

    redhat / enterprise_linux8.0

  • linux

    redhat / enterprise_linux9.0

  • linux

    redhat / enterprise_linux_aus8.4

  • linux

    redhat / enterprise_linux_aus8.6

  • linux

    redhat / enterprise_linux_eus10.0

Betroffene Produkte

Aus der Hersteller-/CERT-Meldung extrahierte Produkte und Versionsbereiche. Ein Version-Range wie „<4.14.6“ impliziert die Update-Empfehlung „auf 4.14.6 oder höher aktualisieren“.

  • arista

    cloudvision_agni2024.4.0 – 2025.2.2

  • arista

    cloudvision_portal2024.2.0 – 2026.1.0

  • arista

    velocloud_edge4.5.0 – 6.4.1

  • arista

    velocloud_gateway

  • arista

    velocloud_orchestrator

  • IBM

    QRadar SIEM<7.5.0 UP15 IF06

  • redhat

    openshift_container_platform4.12 – 4.12.89

  • redhat

    openshift_container_platform4.13 – 4.13.66

  • redhat

    openshift_container_platform4.14 – 4.14.65

  • redhat

    openshift_container_platform4.15 – 4.15.64

  • redhat

    openshift_container_platform4.16 – 4.16.61

  • redhat

    openshift_container_platform4.17 – 4.17.53

  • redhat

    openshift_container_platform4.18 – 4.18.40

  • redhat

    openshift_container_platform4.19 – 4.19.30

  • redhat

    openshift_container_platform4.20 – 4.20.21

  • redhat

    openshift_container_platform4.21 – 4.21.14

  • redhat

    openshift_container_platform

  • siemens

    simatic_ax_runtime

  • suse

    caas_platform

  • suse

    enterprise_storage

  • suse

    manager_proxy

  • suse

    manager_retail_branch_server

  • suse

    manager_server

  • suse

    openstack_cloud

Quellen & Referenzen

Verknüpfte CVEs

368 weitere CVEs anzeigen
IDCVE-2025-22111