[SRU][J][PATCH 0/1] CVE-2024-53210
Cengiz Can
cengiz.can at canonical.com
Mon Sep 7 17:24:31 UTC 2026
https://ubuntu.com/security/CVE-2024-53210
[ Impact ]
In the Linux kernel, the following vulnerability has been resolved:
s390/iucv: MSG_PEEK causes memory leak in iucv_sock_destruct()
Passing MSG_PEEK flag to skb_recv_datagram() increments skb refcount
(skb->users) and iucv_sock_recvmsg() does not decrement skb refcount at exit.
This results in skb memory leak in skb_queue_purge() and WARN_ON in
iucv_sock_destruct() during socket close. To fix this decrease skb refcount by
one if MSG_PEEK is set in order to prevent memory leak and WARN_ON.
WARNING: CPU: 2 PID: 6292 at net/iucv/af_iucv.c:286
iucv_sock_destruct+0x144/0x1a0 [af_iucv] CPU: 2 PID: 6292 Comm: afiucv_test_msg
Kdump: loaded Tainted: G W 6.10.0-rc7 #1 Hardware name: IBM 3931 A01 704 (z/VM
7.3.0) Call Trace: [<001587c682c4aa98>] iucv_sock_destruct+0x148/0x1a0
[af_iucv] [<001587c682c4a9d0>] iucv_sock_destruct+0x80/0x1a0 [af_iucv]
[<001587c704117a32>] __sk_destruct+0x52/0x550 [<001587c704104a54>]
__sock_release+0xa4/0x230 [<001587c704104c0c>] sock_close+0x2c/0x40
[<001587c702c5f5a8>] __fput+0x2e8/0x970 [<001587c7024148c4>]
task_work_run+0x1c4/0x2c0 [<001587c7023b0716>] do_exit+0x996/0x1050
[<001587c7023b13aa>] do_group_exit+0x13a/0x360 [<001587c7023b1626>]
__s390x_sys_exit_group+0x56/0x60 [<001587c7022bccca>] do_syscall+0x27a/0x380
[<001587c7049a6a0c>] __do_syscall+0x9c/0x160 [<001587c7049ce8a8>]
system_call+0x70/0x98 Last Breaking-Event-Address: [<001587c682c4a9d4>]
iucv_sock_destruct+0x84/0x1a0 [af_iucv]
[ Fix ]
jammy/linux: backported from ebaf81317e42
The fix decrements the skb refcount by one when the MSG_PEEK flag is set in
iucv_sock_recvmsg(), so that the extra reference taken by skb_recv_datagram()
does not leak and does not trigger the WARN_ON during socket close. The
backport preserves this tree's older skb_recv_datagram(sk, flags, noblock,
&err) signature, which still carries the extra noblock argument that upstream
had dropped, while applying the new fix.
[ Test Plan ]
Build and boot tested.
[ Where Problems Could Occur ]
This change only affects the s390/iucv AF_IUCV socket code, so any regression
would be limited to IBM Z (s390x) systems that use AF_IUCV sockets to
communicate between z/VM guests or LPARs; a bad fix could cause premature skb
release or incorrect refcounting on the MSG_PEEK receive path. Systems on
other architectures, and s390x systems that do not use AF_IUCV sockets, are
not affected.
[ Other Info ]
Kybele flow-v10-17-ge6719947. Reference: 5b7f0569/v1
More information about the kernel-team
mailing list