Linux Kernel bis 6.12.22/6.13.10/6.14.1 udp __udp_enqueue_schedule_skb Pufferüberlauf

CVSS Meta Temp ScoreAktueller Exploitpreis (≈)CTI Interest Score
5.3$0-$5k0.00

Zusammenfassunginfo

Eine Schwachstelle wurde in Linux Kernel bis 6.12.22/6.13.10/6.14.1 gefunden. Sie wurde als problematisch eingestuft. Es geht um die Funktion __udp_enqueue_schedule_skb der Komponente udp. Durch Manipulieren mit unbekannten Daten kann eine Pufferüberlauf-Schwachstelle ausgenutzt werden. Die Verwundbarkeit wird unter CVE-2025-22059 geführt. Es ist soweit kein Exploit verfügbar. Als bestmögliche Massnahme wird das Einspielen eines Upgrades empfohlen.

Detailsinfo

Es wurde eine Schwachstelle in Linux Kernel bis 6.12.22/6.13.10/6.14.1 entdeckt. Sie wurde als problematisch eingestuft. Betroffen hiervon ist die Funktion __udp_enqueue_schedule_skb der Komponente udp. Mit der Manipulation mit einer unbekannten Eingabe kann eine Pufferüberlauf-Schwachstelle ausgenutzt werden. Im Rahmen von CWE wurde eine Klassifizierung als CWE-190 vorgenommen. Wie sich ein erfolgreicher Angriff genau auswirkt, ist nicht bekannt. Die Zusammenfassung von CVE lautet:

In the Linux kernel, the following vulnerability has been resolved: udp: Fix multiple wraparounds of sk->sk_rmem_alloc. __udp_enqueue_schedule_skb() has the following condition: if (atomic_read(&sk->sk_rmem_alloc) > sk->sk_rcvbuf) goto drop; sk->sk_rcvbuf is initialised by net.core.rmem_default and later can be configured by SO_RCVBUF, which is limited by net.core.rmem_max, or SO_RCVBUFFORCE. If we set INT_MAX to sk->sk_rcvbuf, the condition is always false as sk->sk_rmem_alloc is also signed int. Then, the size of the incoming skb is added to sk->sk_rmem_alloc unconditionally. This results in integer overflow (possibly multiple times) on sk->sk_rmem_alloc and allows a single socket to have skb up to net.core.udp_mem[1]. For example, if we set a large value to udp_mem[1] and INT_MAX to sk->sk_rcvbuf and flood packets to the socket, we can see multiple overflows: # cat /proc/net/sockstat | grep UDP: UDP: inuse 3 mem 7956736 INT_MAX * 15 ^- PAGE_SHIFT # ss -uam State Recv-Q ... UNCONN -1757018048 ... <-- flipping the sign repeatedly skmem:(r2537949248,rb2147483646,t0,tb212992,f1984,w0,o0,bl0,d0) Previously, we had a boundary check for INT_MAX, which was removed by commit 6a1f12dd85a8 ("udp: relax atomic operation on sk->sk_rmem_alloc"). A complete fix would be to revert it and cap the right operand by INT_MAX: rmem = atomic_add_return(size, &sk->sk_rmem_alloc); if (rmem > min(size + (unsigned int)sk->sk_rcvbuf, INT_MAX)) goto uncharge_drop; but we do not want to add the expensive atomic_add_return() back just for the corner case. Casting rmem to unsigned int prevents multiple wraparounds, but we still allow a single wraparound. # cat /proc/net/sockstat | grep UDP: UDP: inuse 3 mem 524288 > 12 # ss -uam State Recv-Q ... UNCONN -2147482816 ... <-- INT_MAX + 831 bytes skmem:(r2147484480,rb2147483646,t0,tb212992,f3264,w0,o0,bl0,d14468947) So, let's define rmem and rcvbuf as unsigned int and check skb->truesize only when rcvbuf is large enough to lower the overflow possibility. Note that we still have a small chance to see overflow if multiple skbs to the same socket are processed on different core at the same time and each size does not exceed the limit but the total size does. Note also that we must ignore skb->truesize for a small buffer as explained in commit 363dc73acacb ("udp: be less conservative with sock rmem accounting").

Bereitgestellt wird das Advisory unter git.kernel.org. Die Identifikation der Schwachstelle wird seit dem 29.12.2024 mit CVE-2025-22059 vorgenommen. Es sind zwar technische Details, jedoch kein verfügbarer Exploit zur Schwachstelle bekannt. Ein Exploit zur Schwachstelle wird momentan etwa USD $0-$5k kosten (Preisberechnung vom 15.02.2026).

Für den Vulnerability Scanner Nessus wurde ein Plugin mit der ID 240657 (Ubuntu 25.04 : Linux kernel vulnerabilities (USN-7594-1)) herausgegeben, womit die Existenz der Schwachstelle geprüft werden kann.

Ein Aktualisieren auf die Version 6.12.23, 6.13.11, 6.14.2 oder 6.15-rc1 vermag dieses Problem zu lösen. Die Schwachstelle lässt sich auch durch das Einspielen des Patches 94d5ad7b41122be33ebc2a6830fe710cba1ecd75/1f529988efe9870db802cb79d01d8f473099b4d7/7571aadd20289e9ea10ebfed0986f39ed8b3c16b/5a465a0da13ee9fbd7d3cd0b2893309b0fe4b7e3 lösen. Dieser kann von git.kernel.org bezogen werden. Als bestmögliche Massnahme wird das Upgrade auf eine neue Version empfohlen.

Unter anderem wird der Fehler auch in den Datenbanken von Tenable (240657) und CERT Bund (WID-SEC-2025-0844) dokumentiert. If you want to get the best quality for vulnerability data then you always have to consider VulDB.

Betroffen

  • Google Container-Optimized OS
  • Debian Linux
  • Amazon Linux 2
  • Red Hat Enterprise Linux
  • Ubuntu Linux
  • SUSE Linux
  • Oracle Linux
  • SUSE openSUSE
  • RESF Rocky Linux
  • Open Source Linux Kernel
  • Dell Avamar
  • SolarWinds Security Event Manager
  • Dell NetWorker
  • Dell Secure Connect Gateway
  • IBM QRadar SIEM

Produktinfo

Typ

Hersteller

Name

Version

Lizenz

Webseite

CPE 2.3info

CPE 2.2info

CVSSv4info

VulDB Vector: 🔍
VulDB Zuverlässigkeit: 🔍

CVSSv3info

VulDB Meta Base Score: 5.5
VulDB Meta Temp Score: 5.3

VulDB Base Score: 5.5
VulDB Temp Score: 5.3
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-190 / CWE-189
CAPEC: 🔍
ATT&CK: 🔍

Physisch: Nein
Lokal: Nein
Remote: Teilweise

Verfügbarkeit: 🔍
Status: Nicht definiert

EPSS Score: 🔍
EPSS Percentile: 🔍

Preisentwicklung: 🔍
Aktuelle Preisschätzung: 🔍

0-Dayfreischaltenfreischaltenfreischaltenfreischalten
Heutefreischaltenfreischaltenfreischaltenfreischalten

Nessus ID: 240657
Nessus Name: Ubuntu 25.04 : Linux kernel vulnerabilities (USN-7594-1)

Threat Intelligenceinfo

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

Gegenmassnahmeninfo

Empfehlung: Upgrade
Status: 🔍

0-Day Time: 🔍

Upgrade: Kernel 6.12.23/6.13.11/6.14.2/6.15-rc1
Patch: 94d5ad7b41122be33ebc2a6830fe710cba1ecd75/1f529988efe9870db802cb79d01d8f473099b4d7/7571aadd20289e9ea10ebfed0986f39ed8b3c16b/5a465a0da13ee9fbd7d3cd0b2893309b0fe4b7e3

Timelineinfo

29.12.2024 🔍
16.04.2025 +107 Tage 🔍
16.04.2025 +0 Tage 🔍
15.02.2026 +305 Tage 🔍

Quelleninfo

Hersteller: kernel.org

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

CVE: CVE-2025-22059 (🔍)
GCVE (CVE): GCVE-0-2025-22059
GCVE (VulDB): GCVE-100-305109
CERT Bund: WID-SEC-2025-0844 - Linux Kernel: Mehrere Schwachstellen

Eintraginfo

Erstellt: 16.04.2025 17:19
Aktualisierung: 15.02.2026 09:17
Anpassungen: 16.04.2025 17:19 (58), 28.06.2025 13:52 (2), 15.07.2025 00:51 (7), 13.10.2025 01:15 (1), 15.02.2026 09:17 (1)
Komplett: 🔍
Cache ID: 216::103

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

Diskussion

Bisher keine Kommentare. Sprachen: de + en.

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

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!