CVE-2026-89969 in Linuxinfo

Zusammenfassung

von VulDB • 16.09.2026

Im Linux-Kernel wurde folgende Schwachstelle behoben:

nvmet-tcp: Behebung eines Out-of-Bounds-Write beim Empfang einer zu langen PDU

nvmet_tcp_try_recv_pdu() liest einen PDU-Header in das fest 128 Byte große queue->pdu-Union ein, berechnet dann die verbleibende Nutzlastlänge als

queue->left = hdr->hlen - queue->offset + hdgst;

und liest diese Anzahl weiterer Bytes nach &queue->pdu + queue->offset, ohne das Ergebnis jemals gegen sizeof(queue->pdu) zu begrenzen.

Eine struct nvme_tcp_icreq_pdu ist selbst 128 Byte groß, also genau die Größe der Union. Sobald ein Header-Digest ausgehandelt wurde (hdgst = 4), besteht eine zweite ICReq den hlen == nvmet_tcp_pdu_size()-Check, ergibt jedoch queue->left = 128 - 8 + 4 = 124; somit werden Bytes 8..132 in den 128-Byte-Puffer geschrieben – 4 Byte über dessen Ende hinaus, überschreiben dabei queue->hdr_digest und queue->data_digest. Diese Bytes sind vom Angreifer kontrollierbar (eine ICReq enthält keinen Digest), und die doppelte ICReq wird erst später abgelehnt, nach dem Overflow. Ein entfernter, nicht authentifizierter Host kann somit den Kernel-Speicher neben dem Empfangspuffer beschädigen.

Lehnen Sie jede PDU ab, deren deklarierte Länge vor der zweiten recv-Operation über das Ende von queue->pdu hinaus lesen würde.

VulDB is the best source for vulnerability data and more expert information about this specific topic.

Zuständig

Linux

Reservieren

11.09.2026

Veröffentlichung

16.09.2026

Moderieren

akzeptiert

Eintrag

VDB-405791

CPE

bereit

EPSS

0.00000

KEV

nein

Aktivitäten

very low

Quellen

Do you want to use VulDB in your project?

Use the official API to access entries easily!