vulnerability

Ubuntu: (Multiple Advisories) (CVE-2024-42271): Linux kernel vulnerabilities

Severity
7
CVSS
(AV:L/AC:L/Au:S/C:C/I:C/A:C)
Published
Aug 17, 2024
Added
Oct 17, 2024
Modified
Aug 18, 2025

Description

In the Linux kernel, the following vulnerability has been resolved:

net/iucv: fix use after free in iucv_sock_close()

iucv_sever_path() is called from process context and from bh context.
iucv->path is used as indicator whether somebody else is taking care of
severing the path (or it is already removed / never existed).
This needs to be done with atomic compare and swap, otherwise there is a
small window where iucv_sock_close() will try to work with a path that has
already been severed and freed by iucv_callback_connrej() called by
iucv_tasklet_fn().

Example:
[452744.123844] Call Trace:
[452744.123845] ([<0000001e87f03880>] 0x1e87f03880)
[452744.123966] [<00000000d593001e>] iucv_path_sever+0x96/0x138
[452744.124330] [<000003ff801ddbca>] iucv_sever_path+0xc2/0xd0 [af_iucv]
[452744.124336] [<000003ff801e01b6>] iucv_sock_close+0xa6/0x310 [af_iucv]
[452744.124341] [<000003ff801e08cc>] iucv_sock_release+0x3c/0xd0 [af_iucv]
[452744.124345] [<00000000d574794e>] __sock_release+0x5e/0xe8
[452744.124815] [<00000000d5747a0c>] sock_close+0x34/0x48
[452744.124820] [<00000000d5421642>] __fput+0xba/0x268
[452744.124826] [<00000000d51b382c>] task_work_run+0xbc/0xf0
[452744.124832] [<00000000d5145710>] do_notify_resume+0x88/0x90
[452744.124841] [<00000000d5978096>] system_call+0xe2/0x2c8
[452744.125319] Last Breaking-Event-Address:
[452744.125321] [<00000000d5930018>] iucv_path_sever+0x90/0x138
[452744.125324]
[452744.125325] Kernel panic - not syncing: Fatal exception in interrupt

Note that bh_lock_sock() is not serializing the tasklet context against
process context, because the check for sock_owned_by_user() and
corresponding handling is missing.

Ideas for a future clean-up patch:
A) Correct usage of bh_lock_sock() in tasklet context, as described in
Re-enqueue, if needed. This may require adding return values to the
tasklet functions and thus changes to all users of iucv.

B) Change iucv tasklet into worker and use only lock_sock() in af_iucv.

Solutions

ubuntu-upgrade-linux-image-4-15-0-1136-oracleubuntu-upgrade-linux-image-4-15-0-1157-kvmubuntu-upgrade-linux-image-4-15-0-1167-gcpubuntu-upgrade-linux-image-4-15-0-1174-awsubuntu-upgrade-linux-image-4-15-0-1182-azureubuntu-upgrade-linux-image-4-15-0-230-genericubuntu-upgrade-linux-image-4-15-0-230-lowlatencyubuntu-upgrade-linux-image-4-4-0-1137-awsubuntu-upgrade-linux-image-4-4-0-1138-kvmubuntu-upgrade-linux-image-4-4-0-1175-awsubuntu-upgrade-linux-image-4-4-0-260-genericubuntu-upgrade-linux-image-4-4-0-260-lowlatencyubuntu-upgrade-linux-image-5-15-0-1038-xilinx-zynqmpubuntu-upgrade-linux-image-5-15-0-1055-gkeopubuntu-upgrade-linux-image-5-15-0-1065-ibmubuntu-upgrade-linux-image-5-15-0-1065-raspiubuntu-upgrade-linux-image-5-15-0-1067-intel-iotgubuntu-upgrade-linux-image-5-15-0-1067-nvidiaubuntu-upgrade-linux-image-5-15-0-1067-nvidia-lowlatencyubuntu-upgrade-linux-image-5-15-0-1069-gkeubuntu-upgrade-linux-image-5-15-0-1069-kvmubuntu-upgrade-linux-image-5-15-0-1070-oracleubuntu-upgrade-linux-image-5-15-0-1071-gcpubuntu-upgrade-linux-image-5-15-0-1072-awsubuntu-upgrade-linux-image-5-15-0-1075-azureubuntu-upgrade-linux-image-5-15-0-1078-azureubuntu-upgrade-linux-image-5-15-0-125-genericubuntu-upgrade-linux-image-5-15-0-125-generic-64kubuntu-upgrade-linux-image-5-15-0-125-generic-lpaeubuntu-upgrade-linux-image-5-15-0-125-lowlatencyubuntu-upgrade-linux-image-5-15-0-125-lowlatency-64kubuntu-upgrade-linux-image-5-4-0-1044-iotubuntu-upgrade-linux-image-5-4-0-1054-xilinx-zynqmpubuntu-upgrade-linux-image-5-4-0-1082-ibmubuntu-upgrade-linux-image-5-4-0-1094-bluefieldubuntu-upgrade-linux-image-5-4-0-1102-gkeopubuntu-upgrade-linux-image-5-4-0-1119-raspiubuntu-upgrade-linux-image-5-4-0-1123-kvmubuntu-upgrade-linux-image-5-4-0-1134-oracleubuntu-upgrade-linux-image-5-4-0-1135-awsubuntu-upgrade-linux-image-5-4-0-1139-azureubuntu-upgrade-linux-image-5-4-0-1139-gcpubuntu-upgrade-linux-image-5-4-0-1140-azureubuntu-upgrade-linux-image-5-4-0-200-genericubuntu-upgrade-linux-image-5-4-0-200-generic-lpaeubuntu-upgrade-linux-image-5-4-0-200-lowlatencyubuntu-upgrade-linux-image-6-8-0-1002-gkeopubuntu-upgrade-linux-image-6-8-0-1013-gkeubuntu-upgrade-linux-image-6-8-0-1014-ibmubuntu-upgrade-linux-image-6-8-0-1014-raspiubuntu-upgrade-linux-image-6-8-0-1015-oracleubuntu-upgrade-linux-image-6-8-0-1015-oracle-64kubuntu-upgrade-linux-image-6-8-0-1016-azureubuntu-upgrade-linux-image-6-8-0-1016-azure-fdeubuntu-upgrade-linux-image-6-8-0-1016-gcpubuntu-upgrade-linux-image-6-8-0-1016-oemubuntu-upgrade-linux-image-6-8-0-1017-azureubuntu-upgrade-linux-image-6-8-0-1017-azure-fdeubuntu-upgrade-linux-image-6-8-0-1017-gcpubuntu-upgrade-linux-image-6-8-0-1017-nvidiaubuntu-upgrade-linux-image-6-8-0-1017-nvidia-64kubuntu-upgrade-linux-image-6-8-0-1017-nvidia-lowlatencyubuntu-upgrade-linux-image-6-8-0-1017-nvidia-lowlatency-64kubuntu-upgrade-linux-image-6-8-0-1018-awsubuntu-upgrade-linux-image-6-8-0-48-genericubuntu-upgrade-linux-image-6-8-0-48-generic-64kubuntu-upgrade-linux-image-6-8-0-48-lowlatencyubuntu-upgrade-linux-image-6-8-0-48-lowlatency-64kubuntu-upgrade-linux-image-awsubuntu-upgrade-linux-image-aws-hweubuntu-upgrade-linux-image-aws-lts-18-04ubuntu-upgrade-linux-image-aws-lts-20-04ubuntu-upgrade-linux-image-aws-lts-22-04ubuntu-upgrade-linux-image-azureubuntu-upgrade-linux-image-azure-cvmubuntu-upgrade-linux-image-azure-fdeubuntu-upgrade-linux-image-azure-lts-18-04ubuntu-upgrade-linux-image-azure-lts-20-04ubuntu-upgrade-linux-image-azure-lts-22-04ubuntu-upgrade-linux-image-bluefieldubuntu-upgrade-linux-image-gcpubuntu-upgrade-linux-image-gcp-lts-18-04ubuntu-upgrade-linux-image-gcp-lts-20-04ubuntu-upgrade-linux-image-gcp-lts-22-04ubuntu-upgrade-linux-image-genericubuntu-upgrade-linux-image-generic-64kubuntu-upgrade-linux-image-generic-64k-hwe-20-04ubuntu-upgrade-linux-image-generic-64k-hwe-22-04ubuntu-upgrade-linux-image-generic-64k-hwe-24-04ubuntu-upgrade-linux-image-generic-hwe-16-04ubuntu-upgrade-linux-image-generic-hwe-18-04ubuntu-upgrade-linux-image-generic-hwe-20-04ubuntu-upgrade-linux-image-generic-hwe-22-04ubuntu-upgrade-linux-image-generic-hwe-24-04ubuntu-upgrade-linux-image-generic-lpaeubuntu-upgrade-linux-image-generic-lpae-hwe-20-04ubuntu-upgrade-linux-image-generic-lts-xenialubuntu-upgrade-linux-image-gkeubuntu-upgrade-linux-image-gke-5-15ubuntu-upgrade-linux-image-gkeopubuntu-upgrade-linux-image-gkeop-5-15ubuntu-upgrade-linux-image-gkeop-5-4ubuntu-upgrade-linux-image-gkeop-6-8ubuntu-upgrade-linux-image-ibmubuntu-upgrade-linux-image-ibm-classicubuntu-upgrade-linux-image-ibm-lts-20-04ubuntu-upgrade-linux-image-ibm-lts-24-04ubuntu-upgrade-linux-image-intelubuntu-upgrade-linux-image-intel-iotgubuntu-upgrade-linux-image-kvmubuntu-upgrade-linux-image-lowlatencyubuntu-upgrade-linux-image-lowlatency-64kubuntu-upgrade-linux-image-lowlatency-64k-hwe-20-04ubuntu-upgrade-linux-image-lowlatency-64k-hwe-22-04ubuntu-upgrade-linux-image-lowlatency-64k-hwe-24-04ubuntu-upgrade-linux-image-lowlatency-hwe-16-04ubuntu-upgrade-linux-image-lowlatency-hwe-18-04ubuntu-upgrade-linux-image-lowlatency-hwe-20-04ubuntu-upgrade-linux-image-lowlatency-hwe-22-04ubuntu-upgrade-linux-image-lowlatency-hwe-24-04ubuntu-upgrade-linux-image-lowlatency-lts-xenialubuntu-upgrade-linux-image-nvidiaubuntu-upgrade-linux-image-nvidia-6-8ubuntu-upgrade-linux-image-nvidia-64kubuntu-upgrade-linux-image-nvidia-64k-6-8ubuntu-upgrade-linux-image-nvidia-64k-hwe-22-04ubuntu-upgrade-linux-image-nvidia-hwe-22-04ubuntu-upgrade-linux-image-nvidia-lowlatencyubuntu-upgrade-linux-image-nvidia-lowlatency-64kubuntu-upgrade-linux-image-oemubuntu-upgrade-linux-image-oem-20-04ubuntu-upgrade-linux-image-oem-20-04bubuntu-upgrade-linux-image-oem-20-04cubuntu-upgrade-linux-image-oem-20-04dubuntu-upgrade-linux-image-oem-22-04ubuntu-upgrade-linux-image-oem-22-04aubuntu-upgrade-linux-image-oem-22-04bubuntu-upgrade-linux-image-oem-22-04cubuntu-upgrade-linux-image-oem-22-04dubuntu-upgrade-linux-image-oem-24-04ubuntu-upgrade-linux-image-oem-24-04aubuntu-upgrade-linux-image-oem-osp1ubuntu-upgrade-linux-image-oracleubuntu-upgrade-linux-image-oracle-64kubuntu-upgrade-linux-image-oracle-lts-18-04ubuntu-upgrade-linux-image-oracle-lts-20-04ubuntu-upgrade-linux-image-oracle-lts-22-04ubuntu-upgrade-linux-image-raspiubuntu-upgrade-linux-image-raspi-hwe-18-04ubuntu-upgrade-linux-image-raspi-nolpaeubuntu-upgrade-linux-image-raspi2ubuntu-upgrade-linux-image-snapdragon-hwe-18-04ubuntu-upgrade-linux-image-virtualubuntu-upgrade-linux-image-virtual-hwe-16-04ubuntu-upgrade-linux-image-virtual-hwe-18-04ubuntu-upgrade-linux-image-virtual-hwe-20-04ubuntu-upgrade-linux-image-virtual-hwe-22-04ubuntu-upgrade-linux-image-virtual-hwe-24-04ubuntu-upgrade-linux-image-virtual-lts-xenialubuntu-upgrade-linux-image-xilinx-zynqmp

References

    Title
    NEW

    Explore Exposure Command

    Confidently identify and prioritize exposures from endpoint to cloud with full attack surface visibility and threat-aware risk context.