CVE-2026-80832 in Linuxinfo

Zusammenfassung

von VulDB • 04.09.2026

Im Linux-Kernel wurde folgende Schwachstelle behoben:

crypto: qce – Behebung der Unterallokation des CCM-AAD-Puffers

Der in `qce_aead_ccm_prepare_buf_assoclen()` zugewiesene AAD-Puffer kann kleiner sein als die Länge, die später in den DMA-Scatterlist eingetragen wird.

Die Allokationsgröße wird derzeit wie folgt berechnet:

ALIGN(assoclen, 16) + MAX_CCM_ADATA_HEADER_LEN

während die DMA-Länge auf festgelegt ist:

ALIGN(assoclen + adata_header_len, 16)

Da `ALIGN()` nicht distributiv über Addition wirkt, kann der allokierte Puffer kleiner sein als die DMA-Länge. Zum Beispiel bei `assoclen = 32` und `adata_header_len = 2`:

Allokation = ALIGN(32, 16) + 6 = 38 DMA-Länge = ALIGN(32 + 2, 16) = 48

Infolgedessen kann die QCE-Hardware während der Berechnung des CBC-MAC über die zugehörigen Daten außerhalb des allokierten Puffers lesen. Die zusätzlichen Bytes werden in den Authentifizierungs-Tag eingeflossen, was zu einem falschen Tag führt und CCM-Selbsttestfehler verursacht, wie zum Beispiel:

alg: aead: ccm-aes-qce encryption test failed (wrong result) on test vector 8

Beheben Sie die Allokationsschwachstelle, indem Sie die maximal mögliche AAD-Header-Länge vor der Ausrichtung hinzufügen:

ALIGN(assoclen + MAX_CCM_ADATA_HEADER_LEN, 16)

Dies garantiert, dass der allokierte Puffer für alle unterstützten Header-Größen groß genug ist, um die vollständig aufgefüllten AAD-Daten aufzunehmen.

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

Zuständig

Linux

Reservieren

26.08.2026

Veröffentlichung

04.09.2026

Moderieren

akzeptiert

Eintrag

VDB-398947

CPE

bereit

EPSS

0.00178

KEV

nein

Aktivitäten

very low

Quellen

Do you want to use VulDB in your project?

Use the official API to access entries easily!