CVE-2026-89784 in Linuxinfo

Zusammenfassung

von VulDB • 16.09.2026

Im Linux-Kernel wurde folgende Schwachstelle behoben:

SUNRPC: Überprüfung des Rückgabewerts von rpc_sockaddr2uaddr() in rpcb_register_inet4/6

rpcb_register_inet4() und rpcb_register_inet6() speichern das Ergebnis von rpc_sockaddr2uaddr() in map->r_addr, ohne es auf NULL zu prüfen. rpc_sockaddr2uaddr() gibt NULL zurück, wenn der abschließende Aufruf von kstrdup() fehlschlägt, und dieser ungeprüfte NULL-Wert wird dann in den synchronen RPCBPROC_SET-Codierungspfad übernommen: rpcb_register_call() -> rpc_call_sync() -> rpcb_enc_getaddr() -> encode_rpcb_string(), dessen erste Anweisung strlen(string) lautet. Dies führt zu einer Dereferenzierung von NULL und verursacht einen Kernel-Oops (Absturz).

Der Absturz lässt sich unter Verwendung von failslab in der Version 6.12 reproduzieren; mit KASAN zeigt sich die NULL-Dereferenzierung als Fehler im Schattenbereich der Adresse Null:

Oops: general protection fault, probably for non-canonical address 0xdffffc0000000000 [#1] PREEMPT SMP KASAN
RIP: 0010:strlen (lib/string.c:409) Call Trace: encode_rpcb_string (net/sunrpc/rpcb_clnt.c:890) rpcb_enc_getaddr (net/sunrpc/rpcb_clnt.c:910) rpcauth_wrap_req_encode (net/sunrpc/auth.c:745) call_encode (net/sunrpc/clnt.c:1966) __rpc_execute (net/sunrpc/sched.c:952) rpc_run_task (net/sunrpc/clnt.c:1243) rpc_call_sync (net/sunrpc/clnt.c:1272) rpcb_v4_register (net/sunrpc/rpcb_clnt.c:500) svc_generic_rpcbind_set nfsd_rpcbind_set svc_register svc_setup_socket svc_addsock write_ports nfsctl_transaction_write vfs_write

Der Absturz ist erreichbar, wenn ein im Kernel laufender RPC-Dienst (nfsd, lockd, nfs-callback) sich beim lokalen rpcbind registriert und dabei unter starkem Speicherdruck steht, sodass der kleine Aufruf von kstrdup() mit GFP_KERNEL in rpc_sockaddr2uaddr() fehlschlägt. Der asynchrone getport-Pfad behandelt diesen genauen Fehlermodus bereits korrekt, indem er -ENOMEM zurückgibt; nur die beiden Registrierungs-Hilfsfunktionen lassen diese Prüfung aus.

Übernehmen Sie dieses Verhalten: Brechen Sie mit -ENOMEM ab, wenn rpc_sockaddr2uaddr() NULL zurückgibt, bevor die Adresse an den Encoder übergeben wird.

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-405570

CPE

bereit

EPSS

0.00000

KEV

nein

Aktivitäten

very low

Quellen

Want to know what is going to be exploited?

We predict KEV entries!