Direct naar de inhoud
⚡ Kritieke cyberalerts voor jouw sector & systemen — direct in je inbox. Aanmelden →
cybernieuws.nl Cybersecurity en informatiebeveiling nieuws alerts live · 3 min 173 bronnen 1 kritiek 34 vandaag
CVE's Videos Dagbriefing

← Terug naar CVE-database

CVE-2026-99079

CRITICAL · 9.8 CVSS Gepubliceerd:

Beschrijving NL

In de Linux-kernel is de volgende kwetsbaarheid verholpen:

net/mlx5e: Voorkom het vrijgeven van een verouderde XSK-buffer bij een nieuwe poging tot bijvullen

Wanneer een XDP-redirect naar een AF_XDP-socket mislukt omdat de RX-ring ervan
Zodra de buffer vol is, maakt de XSK-kern deze vrij. Tijdens het daaropvolgende batchgewijze bijvullen wordt de buffer vrijgegeven.
Bij een verouderde cyclische RQ geeft mlx5e ook de XSK-buffer van de WQE vrij voordat
een vervanging toewijzen. Als die navulling slechts gedeeltelijk lukt, een WQE.
Als er geen vervanging wordt geplaatst, behoudt het de oude bufferpointer. De buffer kan ondertussen aan een andere WQE worden toegewezen. Een latere aanvulling is mogelijk.
Bij een nieuwe poging kan de actieve buffer vervolgens via de verouderde pointer worden vrijgegeven en gepubliceerd.
Hetzelfde UMEM-frame twee keer. Markeer de WQE als vrijgegeven direct na de vrijgave aan de bestuurderszijde. De vlag
is al gewist wanneer een vervangende buffer wordt toegewezen, dus opnieuw vullen is nodig.
Bij herhaalde pogingen worden verouderde pointers niet langer vrijgegeven. De fout is stil en produceert geen kernelwaarschuwing of foutmelding. A
Een zelfstandige, verouderde cyclic-RQ zero-copy libxsk-reproducer, die gebruikmaakt van 64-byte UDP.
Verkeer aangeboden met 12 Mpps, gedetecteerd: voorraad gestopt na 2.854.914
pakketten in 4,094 seconden, met 4.542 xdp_rx_ring_full-gebeurtenissen en 64
Fouten met betrekking tot eigendom/dubbele publicatie. Door deze wijziging werd het verwerkt.
356.904.225 pakketten in 30 seconden ondanks 571.405 xdp_rx_ring_full-gebeurtenissen.
Zonder eigendoms- of gegevensfouten.

Origineel (Engels) tonen

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

net/mlx5e: Prevent stale XSK buffer release on refill retry

When an XDP redirect to an AF_XDP socket fails because its RX ring is
full, the XSK core frees the buffer. During the subsequent batched refill
of a legacy cyclic RQ, mlx5e also releases the WQE's XSK buffer before
allocating a replacement. If that refill succeeds only partially, a WQE
left without a replacement retains its old buffer pointer.

The buffer can meanwhile be allocated to another WQE. A later refill
retry can then free the live buffer through the stale pointer and publish
the same UMEM frame twice.

Mark the WQE as released immediately after the driver-side free. The flag
is already cleared when a replacement buffer is assigned, so refill
retries no longer release stale pointers.

The failure is silent and produces no kernel warning or splat. A
standalone legacy cyclic-RQ zero-copy libxsk reproducer, using 64-byte UDP
traffic offered at 12 Mpps, detected it: stock stopped after 2,854,914
packets in 4.094 seconds, with 4,542 xdp_rx_ring_full events and 64
ownership/double-publication errors. With this change it processed
356,904,225 packets in 30 seconds despite 571,405 xdp_rx_ring_full events,
with no ownership or data errors.

References