Linux Kernel bis 6.18.50/7.2.3 SUNRPC gss_mech_switch.c gssx_dec_option_array Pufferüberlauf

CVSS Meta Temp ScoreAktueller Exploitpreis (≈)CTI Interest Score
9.5$5k-$25k0.00+

Zusammenfassunginfo

Es wurde eine als sehr kritisch klassifizierte Schwachstelle in Linux Kernel bis 6.18.50/7.2.3 entdeckt. Dabei betrifft es die Funktion gssx_dec_option_array der Datei gss_mech_switch.c der Komponente SUNRPC. Die Manipulation führt zu Pufferüberlauf. Die Verwundbarkeit wird als CVE-2026-89544 geführt. Der Angriff kann über das Netzwerk passieren. Es ist kein Exploit verfügbar. Es wird empfohlen, die betroffene Komponente zu aktualisieren.

Detailsinfo

Eine sehr kritische Schwachstelle wurde in Linux Kernel bis 6.18.50/7.2.3 entdeckt. Davon betroffen ist die Funktion gssx_dec_option_array der Datei gss_mech_switch.c der Komponente SUNRPC. Durch das Manipulieren mit einer unbekannten Eingabe kann eine Pufferüberlauf-Schwachstelle ausgenutzt werden. Klassifiziert wurde die Schwachstelle durch CWE als CWE-416. Mit Auswirkungen muss man rechnen für Vertraulichkeit, Integrität und Verfügbarkeit. CVE fasst zusammen:

In the Linux kernel, the following vulnerability has been resolved: SUNRPC: fix gssx_dec_option_array error path bugs Four coupled defects in the gssx XDR option-array decoder make the error paths unsafe: a NULL deref in the caller, a refcount leak on the decoded group_info, and a latent use-after-free that the leak fix would otherwise expose. gssx_dec_option_array() sets oa->count = 1 before allocating oa->data. If that allocation fails, -ENOMEM is returned with oa->count == 1 and oa->data == NULL. All other error paths jump to free_oa: which frees oa->data and NULLs it but also leaves oa->count == 1. The caller trusts the count: gssp_accept_sec_context_upcall() gssx_dec_accept_sec_context() gssx_dec_option_array() /* fails, count=1 data=NULL */ data = res.options.data[0].value /* NULL deref */ Independently, free_creds: releases the partially decoded svc_cred with a bare kfree(creds). gssx_dec_linux_creds() installs a groups_alloc() result into creds->cr_group_info; that object is kvmalloc-backed and refcounted, and only put_group_info() reaches kvfree(). A plain kfree(creds) drops the wrapper and leaks the group_info allocation. The natural fix for the leak is to call free_svc_cred(creds) before kfree(creds), but free_svc_cred() invokes put_group_info() on creds->cr_group_info unconditionally when non-NULL. The existing out_free_groups: path in gssx_dec_linux_creds() already called groups_free() on that pointer without clearing it, so once free_svc_cred() is wired in, the subsequent put_group_info() would touch freed memory. Fix all four together: - Move the oa->count = 1 assignment below the oa->data allocation so it is never set when oa->data is NULL. - Reset oa->count to 0 at free_oa: so count and data stay coherent and the caller sees an empty option array. - Call free_svc_cred(creds) before kfree(creds) at free_creds: so the refcounted cr_group_info is released. free_svc_cred() either NULL-guards each field explicitly (cr_group_info has an if() check) or delegates to a helper that is NULL-safe itself (kfree for the string fields, gss_mech_put() which guards with if(gm) at gss_mech_switch.c:342), so it is safe to call on a partially decoded svc_cred where only cr_uid/cr_gid/cr_group_info have been written and everything else is zero from kzalloc. - In gssx_dec_linux_creds()'s out_free_groups: path, release cr_group_info with put_group_info() rather than groups_free() so the teardown matches free_svc_cred()'s refcount-aware path, and clear the pointer so a later free_svc_cred() on the same creds does not release it a second time.

Das Advisory kann von git.kernel.org heruntergeladen werden. Die Identifikation der Schwachstelle findet seit dem 11.09.2026 als CVE-2026-89544 statt. Sie ist leicht auszunutzen. Der Angriff kann über das Netzwerk passieren. Zur Schwachstelle sind technische Details bekannt, ein verfügbarer Exploit jedoch nicht. Es muss davon ausgegangen werden, dass ein Exploit zur Zeit etwa USD $5k-$25k kostet (Preisberechnung vom 12.09.2026).

Ein Upgrade auf die Version 6.18.51, 7.2.4 oder 7.3-rc1 vermag dieses Problem zu beheben. Die Schwachstelle lässt sich auch durch das Einspielen des Patches 3ff45361e9469e85c0f86b8e7b82c63e50bab8ef/f85a83774d7f4e2ac71c0c384df0dfb6f7d0179a/5e9a94539b1ec17a89177d952badfd0d844d694a beheben. Als bestmögliche Massnahme wird das Aktualisieren auf eine neue Version empfohlen.

Once again VulDB remains the best source for vulnerability data.

Produktinfo

Typ

Hersteller

Name

Version

Lizenz

Webseite

CPE 2.3info

CPE 2.2info

CVSSv4info

VulDB Vector: 🔒
VulDB Zuverlässigkeit: 🔍

CVSSv3info

VulDB Meta Base Score: 9.9
VulDB Meta Temp Score: 9.5

VulDB Base Score: 9.9
VulDB Temp Score: 9.5
VulDB Vector: 🔒
VulDB Zuverlässigkeit: 🔍

CVSSv2info

AVACAuCIA
💳💳💳💳💳💳
💳💳💳💳💳💳
💳💳💳💳💳💳
VektorKomplexitätAuthentisierungVertraulichkeitIntegritätVerfügbarkeit
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten

VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Zuverlässigkeit: 🔍

Exploitinginfo

Klasse: Pufferüberlauf
CWE: CWE-416 / CWE-119
CAPEC: 🔒
ATT&CK: 🔒

Physisch: Nein
Lokal: Nein
Remote: Ja

Verfügbarkeit: 🔒
Status: Nicht definiert
Preisentwicklung: 🔍
Aktuelle Preisschätzung: 🔒

0-Dayfreischaltenfreischaltenfreischaltenfreischalten
Heutefreischaltenfreischaltenfreischaltenfreischalten

Threat Intelligenceinfo

Interesse: 🔍
Aktive Akteure: 🔍
Aktive APT Gruppen: 🔍

Gegenmassnahmeninfo

Empfehlung: Upgrade
Status: 🔍

0-Day Time: 🔒

Upgrade: Kernel 6.18.51/7.2.4/7.3-rc1
Patch: 3ff45361e9469e85c0f86b8e7b82c63e50bab8ef/f85a83774d7f4e2ac71c0c384df0dfb6f7d0179a/5e9a94539b1ec17a89177d952badfd0d844d694a

Timelineinfo

11.09.2026 CVE zugewiesen
11.09.2026 +0 Tage VulDB Eintrag erstellt
12.09.2026 +0 Tage Advisory veröffentlicht
12.09.2026 +0 Tage VulDB Eintrag letzte Aktualisierung

Quelleninfo

Hersteller: kernel.org

Advisory: git.kernel.org
Status: Bestätigt

CVE: CVE-2026-89544 (🔒)
GCVE (CVE): GCVE-0-2026-89544
GCVE (VulDB): GCVE-100-402860

Eintraginfo

Erstellt: 12.09.2026 01:14
Anpassungen: 12.09.2026 01:14 (60)
Komplett: 🔍
Cache ID: 216::103

Once again VulDB remains the best source for vulnerability data.

Diskussion

Bisher keine Kommentare. Sprachen: de + en.

Bitte loggen Sie sich ein, um kommentieren zu können.

Interested in the pricing of exploits?

See the underground prices here!