ALT-PU-2024-17099-3
Package kernel-image-std-def updated to version 5.10.231-alt1 for branch p10 in task 365066.
Closed vulnerabilities
BDU:2024-11659
Уязвимость функции qdisc_tree_reduce_backlog() ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
BDU:2024-11660
Уязвимость модуля net/vmw_vsock/virtio_transport_common.c ядра операционной системы Linux, позволяющая нарушителю вызвать отказ в обслуживании
Modified: 2024-11-08
CVE-2024-50115
In the Linux kernel, the following vulnerability has been resolved: KVM: nSVM: Ignore nCR3[4:0] when loading PDPTEs from memory Ignore nCR3[4:0] when loading PDPTEs from memory for nested SVM, as bits 4:0 of CR3 are ignored when PAE paging is used, and thus VMRUN doesn't enforce 32-byte alignment of nCR3. In the absolute worst case scenario, failure to ignore bits 4:0 can result in an out-of-bounds read, e.g. if the target page is at the end of a memslot, and the VMM isn't using guard pages. Per the APM: The CR3 register points to the base address of the page-directory-pointer table. The page-directory-pointer table is aligned on a 32-byte boundary, with the low 5 address bits 4:0 assumed to be 0. And the SDM's much more explicit: 4:0 Ignored Note, KVM gets this right when loading PDPTRs, it's only the nSVM flow that is broken.
- https://git.kernel.org/stable/c/2c4adc9b192a0815fe58a62bc0709449416cc884
- https://git.kernel.org/stable/c/426682afec71ea3f889b972d038238807b9443e4
- https://git.kernel.org/stable/c/58cb697d80e669c56197f703e188867c8c54c494
- https://git.kernel.org/stable/c/6876793907cbe19d42e9edc8c3315a21e06c32ae
- https://git.kernel.org/stable/c/76ce386feb14ec9a460784fcd495d8432acce7a5
- https://git.kernel.org/stable/c/f559b2e9c5c5308850544ab59396b7d53cfc67bd
Modified: 2024-11-08
CVE-2024-50116
In the Linux kernel, the following vulnerability has been resolved: nilfs2: fix kernel bug due to missing clearing of buffer delay flag Syzbot reported that after nilfs2 reads a corrupted file system image and degrades to read-only, the BUG_ON check for the buffer delay flag in submit_bh_wbc() may fail, causing a kernel bug. This is because the buffer delay flag is not cleared when clearing the buffer state flags to discard a page/folio or a buffer head. So, fix this. This became necessary when the use of nilfs2's own page clear routine was expanded. This state inconsistency does not occur if the buffer is written normally by log writing.
- https://git.kernel.org/stable/c/033bc52f35868c2493a2d95c56ece7fc155d7cb3
- https://git.kernel.org/stable/c/27524f65621f490184f2ace44cd8e5f3685af4a3
- https://git.kernel.org/stable/c/412a30b1b28d6073ba29c46a2b0f324c5936293f
- https://git.kernel.org/stable/c/6ed469df0bfbef3e4b44fca954a781919db9f7ab
- https://git.kernel.org/stable/c/743c78d455e784097011ea958b27396001181567
- https://git.kernel.org/stable/c/822203f6355f4b322d21e7115419f6b98284be25
- https://git.kernel.org/stable/c/9f2ab98371c2f2488bf3bf3f9b2a73510545e9c1
- https://git.kernel.org/stable/c/c6f58ff2d4c552927fe9a187774e668ebba6c7aa
Modified: 2024-11-08
CVE-2024-50117
In the Linux kernel, the following vulnerability has been resolved: drm/amd: Guard against bad data for ATIF ACPI method If a BIOS provides bad data in response to an ATIF method call this causes a NULL pointer dereference in the caller. ``` ? show_regs (arch/x86/kernel/dumpstack.c:478 (discriminator 1)) ? __die (arch/x86/kernel/dumpstack.c:423 arch/x86/kernel/dumpstack.c:434) ? page_fault_oops (arch/x86/mm/fault.c:544 (discriminator 2) arch/x86/mm/fault.c:705 (discriminator 2)) ? do_user_addr_fault (arch/x86/mm/fault.c:440 (discriminator 1) arch/x86/mm/fault.c:1232 (discriminator 1)) ? acpi_ut_update_object_reference (drivers/acpi/acpica/utdelete.c:642) ? exc_page_fault (arch/x86/mm/fault.c:1542) ? asm_exc_page_fault (./arch/x86/include/asm/idtentry.h:623) ? amdgpu_atif_query_backlight_caps.constprop.0 (drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c:387 (discriminator 2)) amdgpu ? amdgpu_atif_query_backlight_caps.constprop.0 (drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c:386 (discriminator 1)) amdgpu ``` It has been encountered on at least one system, so guard for it. (cherry picked from commit c9b7c809b89f24e9372a4e7f02d64c950b07fdee)
- https://git.kernel.org/stable/c/1d7175f9c57b1abf9ecfbdfd53ea760761f52ffe
- https://git.kernel.org/stable/c/234682910971732cd4da96fd95946e296e486b38
- https://git.kernel.org/stable/c/43b4fa6e0e238c6e2662f4fb61d9f51c2785fb1d
- https://git.kernel.org/stable/c/58556dcbd5606a5daccaee73b2130bc16b48e025
- https://git.kernel.org/stable/c/6032287747f874b52dc8b9d7490e2799736e035f
- https://git.kernel.org/stable/c/975ede2a7bec52b5da1428829b3439667c8a234b
- https://git.kernel.org/stable/c/bf58f03931fdcf7b3c45cb76ac13244477a60f44
- https://git.kernel.org/stable/c/cd67af3c1762de4c2483ae4dbdd98f9ea8fa56e3
Modified: 2024-11-22
CVE-2024-50142
In the Linux kernel, the following vulnerability has been resolved: xfrm: validate new SA's prefixlen using SA family when sel.family is unset This expands the validation introduced in commit 07bf7908950a ("xfrm: Validate address prefix lengths in the xfrm selector.") syzbot created an SA with usersa.sel.family = AF_UNSPEC usersa.sel.prefixlen_s = 128 usersa.family = AF_INET Because of the AF_UNSPEC selector, verify_newsa_info doesn't put limits on prefixlen_{s,d}. But then copy_from_user_state sets x->sel.family to usersa.family (AF_INET). Do the same conversion in verify_newsa_info before validating prefixlen_{s,d}, since that's how prefixlen is going to be used later on.
- https://git.kernel.org/stable/c/2d08a6c31c65f23db71a5385ee9cf9d8f9a67a71
- https://git.kernel.org/stable/c/3f0ab59e6537c6a8f9e1b355b48f9c05a76e8563
- https://git.kernel.org/stable/c/401ad99a5ae7180dd9449eac104cb755f442e7f3
- https://git.kernel.org/stable/c/7d9868180bd1e4cf37e7c5067362658971162366
- https://git.kernel.org/stable/c/8df5cd51fd70c33aa1776e5cbcd82b0a86649d73
- https://git.kernel.org/stable/c/bce1afaa212ec380bf971614f70909a27882b862
- https://git.kernel.org/stable/c/e68dd80ba498265d2266b12dc3459164f4ff0c4a
- https://git.kernel.org/stable/c/f31398570acf0f0804c644006f7bfa9067106b0a
Modified: 2024-11-19
CVE-2024-50148
In the Linux kernel, the following vulnerability has been resolved:
Bluetooth: bnep: fix wild-memory-access in proto_unregister
There's issue as follows:
KASAN: maybe wild-memory-access in range [0xdead...108-0xdead...10f]
CPU: 3 UID: 0 PID: 2805 Comm: rmmod Tainted: G W
RIP: 0010:proto_unregister+0xee/0x400
Call Trace:
- https://git.kernel.org/stable/c/03015b6329e6de42f03ec917c25c4cf944f81f66
- https://git.kernel.org/stable/c/20c424bc475b2b2a6e0e2225d2aae095c2ab2f41
- https://git.kernel.org/stable/c/2c439470b23d78095a0d2f923342df58b155f669
- https://git.kernel.org/stable/c/64a90991ba8d4e32e3173ddd83d0b24167a5668c
- https://git.kernel.org/stable/c/6c151aeb6dc414db8f4daf51be072e802fae6667
- https://git.kernel.org/stable/c/d10cd7bf574ead01fae140ce117a11bcdacbe6a8
- https://git.kernel.org/stable/c/e232728242c4e98fb30e4c6bedb6ba8b482b6301
- https://git.kernel.org/stable/c/fa58e23ea1359bd24b323916d191e2e9b4b19783
Modified: 2025-03-06
CVE-2024-50150
In the Linux kernel, the following vulnerability has been resolved:
usb: typec: altmode should keep reference to parent
The altmode device release refers to its parent device, but without keeping
a reference to it.
When registering the altmode, get a reference to the parent and put it in
the release function.
Before this fix, when using CONFIG_DEBUG_KOBJECT_RELEASE, we see issues
like this:
[ 43.572860] kobject: 'port0.0' (ffff8880057ba008): kobject_release, parent 0000000000000000 (delayed 3000)
[ 43.573532] kobject: 'port0.1' (ffff8880057bd008): kobject_release, parent 0000000000000000 (delayed 1000)
[ 43.574407] kobject: 'port0' (ffff8880057b9008): kobject_release, parent 0000000000000000 (delayed 3000)
[ 43.575059] kobject: 'port1.0' (ffff8880057ca008): kobject_release, parent 0000000000000000 (delayed 4000)
[ 43.575908] kobject: 'port1.1' (ffff8880057c9008): kobject_release, parent 0000000000000000 (delayed 4000)
[ 43.576908] kobject: 'typec' (ffff8880062dbc00): kobject_release, parent 0000000000000000 (delayed 4000)
[ 43.577769] kobject: 'port1' (ffff8880057bf008): kobject_release, parent 0000000000000000 (delayed 3000)
[ 46.612867] ==================================================================
[ 46.613402] BUG: KASAN: slab-use-after-free in typec_altmode_release+0x38/0x129
[ 46.614003] Read of size 8 at addr ffff8880057b9118 by task kworker/2:1/48
[ 46.614538]
[ 46.614668] CPU: 2 UID: 0 PID: 48 Comm: kworker/2:1 Not tainted 6.12.0-rc1-00138-gedbae730ad31 #535
[ 46.615391] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.15.0-1 04/01/2014
[ 46.616042] Workqueue: events kobject_delayed_cleanup
[ 46.616446] Call Trace:
[ 46.616648]
- https://git.kernel.org/stable/c/1ded6b12499e6dee9b0e1ceac633be36538f6fc2
- https://git.kernel.org/stable/c/2b0b33e8a58388fa9078f0fbe9af1900e6b08879
- https://git.kernel.org/stable/c/2c15c4133d00f5da632fce60ed013fc31aa9aa58
- https://git.kernel.org/stable/c/68a7c7fe322546be1464174c8d85874b8161deda
- https://git.kernel.org/stable/c/6af43ec3bf40f8b428d9134ffa7a291aecd60da8
- https://git.kernel.org/stable/c/87474406056891e4fdea0794e1f632b21b3dfa27
- https://git.kernel.org/stable/c/bee1b68cb8bcee4fd3a8bde3a4886e0b1375dc4d
- https://git.kernel.org/stable/c/befab3a278c59db0cc88c8799638064f6d3fd6f8
Modified: 2024-11-22
CVE-2024-50151
In the Linux kernel, the following vulnerability has been resolved:
smb: client: fix OOBs when building SMB2_IOCTL request
When using encryption, either enforced by the server or when using
'seal' mount option, the client will squash all compound request buffers
down for encryption into a single iov in smb2_set_next_command().
SMB2_ioctl_init() allocates a small buffer (448 bytes) to hold the
SMB2_IOCTL request in the first iov, and if the user passes an input
buffer that is greater than 328 bytes, smb2_set_next_command() will
end up writing off the end of @rqst->iov[0].iov_base as shown below:
mount.cifs //srv/share /mnt -o ...,seal
ln -s $(perl -e "print('a')for 1..1024") /mnt/link
BUG: KASAN: slab-out-of-bounds in
smb2_set_next_command.cold+0x1d6/0x24c [cifs]
Write of size 4116 at addr ffff8881148fcab8 by task ln/859
CPU: 1 UID: 0 PID: 859 Comm: ln Not tainted 6.12.0-rc3 #1
Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS
1.16.3-2.fc40 04/01/2014
Call Trace:
- https://git.kernel.org/stable/c/1ab60323c5201bef25f2a3dc0ccc404d9aca77f1
- https://git.kernel.org/stable/c/2ef632bfb888d1a14f81c1703817951e0bec5531
- https://git.kernel.org/stable/c/6f0516ef1290da24b85461ed08a0938af7415e49
- https://git.kernel.org/stable/c/b209c3a0bc3ac172265c7fa8309e5d00654f2510
- https://git.kernel.org/stable/c/e07d05b7f5ad9a503d9cab0afde2ab867bb65470
- https://git.kernel.org/stable/c/ed31aba8ce93472d9e16f5cff844ae7c94e9601d
- https://git.kernel.org/stable/c/fe92ddc1c32d4474e605e3a31a4afcd0e7d765ec
Modified: 2024-11-13
CVE-2024-50167
In the Linux kernel, the following vulnerability has been resolved: be2net: fix potential memory leak in be_xmit() The be_xmit() returns NETDEV_TX_OK without freeing skb in case of be_xmit_enqueue() fails, add dev_kfree_skb_any() to fix it.
- https://git.kernel.org/stable/c/4c5f170ef4f85731a4d43ad9a6ac51106c0946be
- https://git.kernel.org/stable/c/641c1beed52bf3c6deb0193fe4d38ec9ff75d2ae
- https://git.kernel.org/stable/c/6b7ce8ee01c33c380aaa5077ff25215492e7eb0e
- https://git.kernel.org/stable/c/77bc881d370e850b7f3cd2b5eae67d596b40efbc
- https://git.kernel.org/stable/c/919ab6e2370289a2748780f44a43333cd3878aa7
- https://git.kernel.org/stable/c/941026023c256939943a47d1c66671526befbb26
- https://git.kernel.org/stable/c/e4dd8bfe0f6a23acd305f9b892c00899089bd621
- https://git.kernel.org/stable/c/e86a79b804e26e3b7f1e415b22a085c0bb7ea3d3
Modified: 2024-11-13
CVE-2024-50168
In the Linux kernel, the following vulnerability has been resolved: net/sun3_82586: fix potential memory leak in sun3_82586_send_packet() The sun3_82586_send_packet() returns NETDEV_TX_OK without freeing skb in case of skb->len being too long, add dev_kfree_skb() to fix it.
- https://git.kernel.org/stable/c/137010d26dc5cd47cd62fef77cbe952d31951b7a
- https://git.kernel.org/stable/c/1a17a4ac2d57102497fac53b53c666dba6a0c20d
- https://git.kernel.org/stable/c/2cb3f56e827abb22c4168ad0c1bbbf401bb2f3b8
- https://git.kernel.org/stable/c/6dc937a3086e344f965ca5c459f8f3eb6b68d890
- https://git.kernel.org/stable/c/84f2bac74000dbb7a177d9b98a17031ec8d07ec5
- https://git.kernel.org/stable/c/8d5b20fbc548650019afa96822b6a33ea4ec8aa5
- https://git.kernel.org/stable/c/9c6ce55e6f0bd1541f112833006b4052614c7d94
- https://git.kernel.org/stable/c/db755e55349045375c5c7036e8650afb3ff419d8
Modified: 2024-11-13
CVE-2024-50171
In the Linux kernel, the following vulnerability has been resolved: net: systemport: fix potential memory leak in bcm_sysport_xmit() The bcm_sysport_xmit() returns NETDEV_TX_OK without freeing skb in case of dma_map_single() fails, add dev_kfree_skb() to fix it.
- https://git.kernel.org/stable/c/31701ef0c4547973991ff63596c927f841dfd133
- https://git.kernel.org/stable/c/4b70478b984af3c9d0279c121df5ff94e2533dbd
- https://git.kernel.org/stable/c/533d2f30aef272dade17870a509521c3afc38a03
- https://git.kernel.org/stable/c/5febfc545389805ce83d37f9f4317055b26dd7d7
- https://git.kernel.org/stable/c/7d5030a819c3589cf9948b1eee397b626ec590f5
- https://git.kernel.org/stable/c/8e81ce7d0166a2249deb6d5e42f28a8b8c9ea72f
- https://git.kernel.org/stable/c/b6321146773dcbbc372a54dbada67e0b50e0a25c
- https://git.kernel.org/stable/c/c401ed1c709948e57945485088413e1bb5e94bd1
Modified: 2024-11-29
CVE-2024-50194
In the Linux kernel, the following vulnerability has been resolved:
arm64: probes: Fix uprobes for big-endian kernels
The arm64 uprobes code is broken for big-endian kernels as it doesn't
convert the in-memory instruction encoding (which is always
little-endian) into the kernel's native endianness before analyzing and
simulating instructions. This may result in a few distinct problems:
* The kernel may may erroneously reject probing an instruction which can
safely be probed.
* The kernel may erroneously erroneously permit stepping an
instruction out-of-line when that instruction cannot be stepped
out-of-line safely.
* The kernel may erroneously simulate instruction incorrectly dur to
interpretting the byte-swapped encoding.
The endianness mismatch isn't caught by the compiler or sparse because:
* The arch_uprobe::{insn,ixol} fields are encoded as arrays of u8, so
the compiler and sparse have no idea these contain a little-endian
32-bit value. The core uprobes code populates these with a memcpy()
which similarly does not handle endianness.
* While the uprobe_opcode_t type is an alias for __le32, both
arch_uprobe_analyze_insn() and arch_uprobe_skip_sstep() cast from u8[]
to the similarly-named probe_opcode_t, which is an alias for u32.
Hence there is no endianness conversion warning.
Fix this by changing the arch_uprobe::{insn,ixol} fields to __le32 and
adding the appropriate __le32_to_cpu() conversions prior to consuming
the instruction encoding. The core uprobes copies these fields as opaque
ranges of bytes, and so is unaffected by this change.
At the same time, remove MAX_UINSN_BYTES and consistently use
AARCH64_INSN_SIZE for clarity.
Tested with the following:
| #include
- https://git.kernel.org/stable/c/13f8f1e05f1dc36dbba6cba0ae03354c0dafcde7
- https://git.kernel.org/stable/c/14841bb7a531b96e2dde37423a3b33e75147c60d
- https://git.kernel.org/stable/c/3d2530c65be04e93720e30f191a7cf1a3aa8b51c
- https://git.kernel.org/stable/c/8165bf83b8a64be801d59cd2532b0d1ffed74d00
- https://git.kernel.org/stable/c/b6a638cb600e13f94b5464724eaa6ab7f3349ca2
- https://git.kernel.org/stable/c/cf60d19d40184e43d9a624e55a0da73be09e938d
- https://git.kernel.org/stable/c/cf9ddf9ed94c15564a05bbf6e9f18dffa0c7df80
- https://git.kernel.org/stable/c/e6ab336213918575124d6db43dc5d3554526242e
Modified: 2024-11-13
CVE-2024-50205
In the Linux kernel, the following vulnerability has been resolved: ALSA: firewire-lib: Avoid division by zero in apply_constraint_to_size() The step variable is initialized to zero. It is changed in the loop, but if it's not changed it will remain zero. Add a variable check before the division. The observed behavior was introduced by commit 826b5de90c0b ("ALSA: firewire-lib: fix insufficient PCM rule for period/buffer size"), and it is difficult to show that any of the interval parameters will satisfy the snd_interval_test() condition with data from the amdtp_rate_table[] table. Found by Linux Verification Center (linuxtesting.org) with SVACE.
- https://git.kernel.org/stable/c/3452d39c4704aa12504e4190298c721fb01083c3
- https://git.kernel.org/stable/c/4bdc21506f12b2d432b1f2667e5ff4c75eee58e3
- https://git.kernel.org/stable/c/5e431f85c87bbffd93a9830d5a576586f9855291
- https://git.kernel.org/stable/c/72cafe63b35d06b5cfbaf807e90ae657907858da
- https://git.kernel.org/stable/c/7d4eb9e22131ec154e638cbd56629195c9bcbe9a
- https://git.kernel.org/stable/c/d2826873db70a6719cdd9212a6739f3e6234cfc4
- https://git.kernel.org/stable/c/d575414361630b8b0523912532fcd7c79e43468c
Modified: 2024-11-19
CVE-2024-50208
In the Linux kernel, the following vulnerability has been resolved: RDMA/bnxt_re: Fix a bug while setting up Level-2 PBL pages Avoid memory corruption while setting up Level-2 PBL pages for the non MR resources when num_pages > 256K. There will be a single PDE page address (contiguous pages in the case of > PAGE_SIZE), but, current logic assumes multiple pages, leading to invalid memory access after 256K PBL entries in the PDE.
- https://git.kernel.org/stable/c/7988bdbbb85ac85a847baf09879edcd0f70521dc
- https://git.kernel.org/stable/c/87cb3b0054e53e0155b630bdf8fb714ded62565f
- https://git.kernel.org/stable/c/daac56dd98e1ba814c878ac0acd482a37f2ab94b
- https://git.kernel.org/stable/c/de5857fa7bcc9a496a914c7e21390be873109f26
- https://git.kernel.org/stable/c/df6fed0a2a1a5e57f033bca40dc316b18e0d0ce6
- https://git.kernel.org/stable/c/ea701c1849e7250ea41a4f7493e0a5f136c1d47e
Modified: 2024-11-18
CVE-2024-50209
In the Linux kernel, the following vulnerability has been resolved: RDMA/bnxt_re: Add a check for memory allocation __alloc_pbl() can return error when memory allocation fails. Driver is not checking the status on one of the instances.
- https://git.kernel.org/stable/c/322a19baaaa25a1fe8ce9fceaed9409ad847844c
- https://git.kernel.org/stable/c/76dd679c3b148d23f72dcf6c3cde3d5f746b2c07
- https://git.kernel.org/stable/c/ba9045887b435a4c5551245ae034b8791b4e4aaa
- https://git.kernel.org/stable/c/c5c1ae73b7741fa3b58e6e001b407825bb971225
- https://git.kernel.org/stable/c/c71957271f2e8133a6aa82001c2fa671d5008129
- https://git.kernel.org/stable/c/dbe51dd516e6d4e655f31c8a1cbc050dde7ba97b
Modified: 2024-11-13
CVE-2024-50229
In the Linux kernel, the following vulnerability has been resolved: nilfs2: fix potential deadlock with newly created symlinks Syzbot reported that page_symlink(), called by nilfs_symlink(), triggers memory reclamation involving the filesystem layer, which can result in circular lock dependencies among the reader/writer semaphore nilfs->ns_segctor_sem, s_writers percpu_rwsem (intwrite) and the fs_reclaim pseudo lock. This is because after commit 21fc61c73c39 ("don't put symlink bodies in pagecache into highmem"), the gfp flags of the page cache for symbolic links are overwritten to GFP_KERNEL via inode_nohighmem(). This is not a problem for symlinks read from the backing device, because the __GFP_FS flag is dropped after inode_nohighmem() is called. However, when a new symlink is created with nilfs_symlink(), the gfp flags remain overwritten to GFP_KERNEL. Then, memory allocation called from page_symlink() etc. triggers memory reclamation including the FS layer, which may call nilfs_evict_inode() or nilfs_dirty_inode(). And these can cause a deadlock if they are called while nilfs->ns_segctor_sem is held: Fix this issue by dropping the __GFP_FS flag from the page cache GFP flags of newly created symlinks in the same way that nilfs_new_inode() and __nilfs_read_inode() do, as a workaround until we adopt nofs allocation scope consistently or improve the locking constraints.
- https://git.kernel.org/stable/c/1246d86e7bbde265761932c6e2dce28c69cdcb91
- https://git.kernel.org/stable/c/58c7f44c7b9e5ac7e3b1e5da2572ed7767a12f38
- https://git.kernel.org/stable/c/69548bb663fcb63f9ee0301be808a36b9d78dac3
- https://git.kernel.org/stable/c/9aa5d43ac4cace8fb9bd964ff6c23f599dc3cd24
- https://git.kernel.org/stable/c/a1686db1e59f8fc016c4c9361e2119dd206f479a
- https://git.kernel.org/stable/c/b3a033e3ecd3471248d474ef263aadc0059e516a
- https://git.kernel.org/stable/c/c72e0df0b56c1166736dc8eb62070ebb12591447
- https://git.kernel.org/stable/c/cc38c596e648575ce58bfc31623a6506eda4b94a
Modified: 2024-11-13
CVE-2024-50230
In the Linux kernel, the following vulnerability has been resolved: nilfs2: fix kernel bug due to missing clearing of checked flag Syzbot reported that in directory operations after nilfs2 detects filesystem corruption and degrades to read-only, __block_write_begin_int(), which is called to prepare block writes, may fail the BUG_ON check for accesses exceeding the folio/page size, triggering a kernel bug. This was found to be because the "checked" flag of a page/folio was not cleared when it was discarded by nilfs2's own routine, which causes the sanity check of directory entries to be skipped when the directory page/folio is reloaded. So, fix that. This was necessary when the use of nilfs2's own page discard routine was applied to more than just metadata files.
- https://git.kernel.org/stable/c/41e192ad2779cae0102879612dfe46726e4396aa
- https://git.kernel.org/stable/c/56c6171932a7fb267ac6cb4ff8759b93ee1d0e2e
- https://git.kernel.org/stable/c/64afad73e4623308d8943645e5631f2c7a2d7971
- https://git.kernel.org/stable/c/994b2fa13a6c9cf3feca93090a9c337d48e3d60d
- https://git.kernel.org/stable/c/aa0cee46c5d3fd9a39575a4c8a4f65f25f095b89
- https://git.kernel.org/stable/c/cd0cdb51b15203fa27d4b714be83b7dfffa0b752
- https://git.kernel.org/stable/c/f05dbebb8ee34882505d53d83af7d18f28a49248
- https://git.kernel.org/stable/c/f2f1fa446676c21edb777e6d2bc4fa8f956fab68
Modified: 2024-11-13
CVE-2024-50233
In the Linux kernel, the following vulnerability has been resolved: staging: iio: frequency: ad9832: fix division by zero in ad9832_calc_freqreg() In the ad9832_write_frequency() function, clk_get_rate() might return 0. This can lead to a division by zero when calling ad9832_calc_freqreg(). The check if (fout > (clk_get_rate(st->mclk) / 2)) does not protect against the case when fout is 0. The ad9832_write_frequency() function is called from ad9832_write(), and fout is derived from a text buffer, which can contain any value.
- https://git.kernel.org/stable/c/2f39548f45693d86e950647012a214da6917dc9f
- https://git.kernel.org/stable/c/442f786c5bff8cfd756ebdeaa4aadbf05c22aa5a
- https://git.kernel.org/stable/c/6bd301819f8f69331a55ae2336c8b111fc933f3d
- https://git.kernel.org/stable/c/adfbc08b94e7df08b9ed5fa26b969cc1b54c84ec
- https://git.kernel.org/stable/c/ccbc10647aafe2b7506edb4b10e19c6c2416c162
- https://git.kernel.org/stable/c/dd9e1cf619c945f320e686dcaf13e37ef0b05fdd
- https://git.kernel.org/stable/c/fcd6b59f7a774558e2525251c68aa37aff748e55
Modified: 2024-11-14
CVE-2024-50234
In the Linux kernel, the following vulnerability has been resolved: wifi: iwlegacy: Clear stale interrupts before resuming device iwl4965 fails upon resume from hibernation on my laptop. The reason seems to be a stale interrupt which isn't being cleared out before interrupts are enabled. We end up with a race beween the resume trying to bring things back up, and the restart work (queued form the interrupt handler) trying to bring things down. Eventually the whole thing blows up. Fix the problem by clearing out any stale interrupts before interrupts get enabled during resume. Here's a debug log of the indicent: [ 12.042589] ieee80211 phy0: il_isr ISR inta 0x00000080, enabled 0xaa00008b, fh 0x00000000 [ 12.042625] ieee80211 phy0: il4965_irq_tasklet inta 0x00000080, enabled 0x00000000, fh 0x00000000 [ 12.042651] iwl4965 0000:10:00.0: RF_KILL bit toggled to enable radio. [ 12.042653] iwl4965 0000:10:00.0: On demand firmware reload [ 12.042690] ieee80211 phy0: il4965_irq_tasklet End inta 0x00000000, enabled 0xaa00008b, fh 0x00000000, flags 0x00000282 [ 12.052207] ieee80211 phy0: il4965_mac_start enter [ 12.052212] ieee80211 phy0: il_prep_station Add STA to driver ID 31: ff:ff:ff:ff:ff:ff [ 12.052244] ieee80211 phy0: il4965_set_hw_ready hardware ready [ 12.052324] ieee80211 phy0: il_apm_init Init card's basic functions [ 12.052348] ieee80211 phy0: il_apm_init L1 Enabled; Disabling L0S [ 12.055727] ieee80211 phy0: il4965_load_bsm Begin load bsm [ 12.056140] ieee80211 phy0: il4965_verify_bsm Begin verify bsm [ 12.058642] ieee80211 phy0: il4965_verify_bsm BSM bootstrap uCode image OK [ 12.058721] ieee80211 phy0: il4965_load_bsm BSM write complete, poll 1 iterations [ 12.058734] ieee80211 phy0: __il4965_up iwl4965 is coming up [ 12.058737] ieee80211 phy0: il4965_mac_start Start UP work done. [ 12.058757] ieee80211 phy0: __il4965_down iwl4965 is going down [ 12.058761] ieee80211 phy0: il_scan_cancel_timeout Scan cancel timeout [ 12.058762] ieee80211 phy0: il_do_scan_abort Not performing scan to abort [ 12.058765] ieee80211 phy0: il_clear_ucode_stations Clearing ucode stations in driver [ 12.058767] ieee80211 phy0: il_clear_ucode_stations No active stations found to be cleared [ 12.058819] ieee80211 phy0: _il_apm_stop Stop card, put in low power state [ 12.058827] ieee80211 phy0: _il_apm_stop_master stop master [ 12.058864] ieee80211 phy0: il4965_clear_free_frames 0 frames on pre-allocated heap on clear. [ 12.058869] ieee80211 phy0: Hardware restart was requested [ 16.132299] iwl4965 0000:10:00.0: START_ALIVE timeout after 4000ms. [ 16.132303] ------------[ cut here ]------------ [ 16.132304] Hardware became unavailable upon resume. This could be a software issue prior to suspend or a hardware issue. [ 16.132338] WARNING: CPU: 0 PID: 181 at net/mac80211/util.c:1826 ieee80211_reconfig+0x8f/0x14b0 [mac80211] [ 16.132390] Modules linked in: ctr ccm sch_fq_codel xt_tcpudp xt_multiport xt_state iptable_filter iptable_nat nf_nat nf_conntrack nf_defrag_ipv4 ip_tables x_tables binfmt_misc joydev mousedev btusb btrtl btintel btbcm bluetooth ecdh_generic ecc iTCO_wdt i2c_dev iwl4965 iwlegacy coretemp snd_hda_codec_analog pcspkr psmouse mac80211 snd_hda_codec_generic libarc4 sdhci_pci cqhci sha256_generic sdhci libsha256 firewire_ohci snd_hda_intel snd_intel_dspcfg mmc_core snd_hda_codec snd_hwdep firewire_core led_class iosf_mbi snd_hda_core uhci_hcd lpc_ich crc_itu_t cfg80211 ehci_pci ehci_hcd snd_pcm usbcore mfd_core rfkill snd_timer snd usb_common soundcore video parport_pc parport intel_agp wmi intel_gtt backlight e1000e agpgart evdev [ 16.132456] CPU: 0 UID: 0 PID: 181 Comm: kworker/u8:6 Not tainted 6.11.0-cl+ #143 [ 16.132460] Hardware name: Hewlett-Packard HP Compaq 6910p/30BE, BIOS 68MCU Ver. F.19 07/06/2010 [ 16.132463] Workqueue: async async_run_entry_fn [ 16.132469] RIP: 0010:ieee80211_reconfig+0x8f/0x14b0 [mac80211] [ 16.132501] Code: da 02 00 0 ---truncated---
- https://git.kernel.org/stable/c/07c90acb071b9954e1fecb1e4f4f13d12c544b34
- https://git.kernel.org/stable/c/23f9cef17ee315777dbe88d5c11ff6166e4d0699
- https://git.kernel.org/stable/c/271d282ecc15d7012e71ca82c89a6c0e13a063dd
- https://git.kernel.org/stable/c/8ac22fe1e2b104c37e4fecd97735f64bd6349ebc
- https://git.kernel.org/stable/c/8af8294d369a871cdbcdbb4d13b87d2d6e490a1f
- https://git.kernel.org/stable/c/9d89941e51259c2b0b8e9c10c6f1f74200d7444f
- https://git.kernel.org/stable/c/cedf0f1db8d5f3524339c2c6e35a8505b0f1ab73
- https://git.kernel.org/stable/c/d0231f43df473e2f80372d0ca150eb3619932ef9
Modified: 2024-11-14
CVE-2024-50236
In the Linux kernel, the following vulnerability has been resolved:
wifi: ath10k: Fix memory leak in management tx
In the current logic, memory is allocated for storing the MSDU context
during management packet TX but this memory is not being freed during
management TX completion. Similar leaks are seen in the management TX
cleanup logic.
Kmemleak reports this problem as below,
unreferenced object 0xffffff80b64ed250 (size 16):
comm "kworker/u16:7", pid 148, jiffies 4294687130 (age 714.199s)
hex dump (first 16 bytes):
00 2b d8 d8 80 ff ff ff c4 74 e9 fd 07 00 00 00 .+.......t......
backtrace:
[
- https://git.kernel.org/stable/c/2f6f1e26ac6d2b38e2198a71f81f0ade14d6b07b
- https://git.kernel.org/stable/c/4112450da7d67b59ccedc2208bae622db17dbcb8
- https://git.kernel.org/stable/c/5f5a939759c79e7385946c85e62feca51a18d816
- https://git.kernel.org/stable/c/6cc23898e6ba47e976050d3c080b4d2c1add3748
- https://git.kernel.org/stable/c/6fc9af3df6ca7f3c94774d20f62dc7b49616026d
- https://git.kernel.org/stable/c/705be2dc45c7f852e211e16bc41a916fab741983
- https://git.kernel.org/stable/c/e15d84b3bba187aa372dff7c58ce1fd5cb48a076
- https://git.kernel.org/stable/c/eff818238bedb9c2484c251ec46f9f160911cdc0
Modified: 2024-11-14
CVE-2024-50237
In the Linux kernel, the following vulnerability has been resolved: wifi: mac80211: do not pass a stopped vif to the driver in .get_txpower Avoid potentially crashing in the driver because of uninitialized private data
- https://git.kernel.org/stable/c/393b6bc174b0dd21bb2a36c13b36e62fc3474a23
- https://git.kernel.org/stable/c/3ccf525a73d48e814634847f6d4a6150c6f0dffc
- https://git.kernel.org/stable/c/78b698fbf37208ee921ee4cedea75b5d33d6ea9f
- https://git.kernel.org/stable/c/8f6cd4d5bb7406656835a90e4f1a2192607f0c21
- https://git.kernel.org/stable/c/b0b862aa3dbcd16b3c4715259a825f48ca540088
- https://git.kernel.org/stable/c/b2bcbe5450b20641f512d6b26c6b256a5a4f847f
- https://git.kernel.org/stable/c/c21efba8b5a86537ccdf43f77536bad02f82776c
- https://git.kernel.org/stable/c/ee35c423042c9e04079fdee3db545135d609d6ea
Modified: 2024-11-21
CVE-2024-50251
In the Linux kernel, the following vulnerability has been resolved: netfilter: nft_payload: sanitize offset and length before calling skb_checksum() If access to offset + length is larger than the skbuff length, then skb_checksum() triggers BUG_ON(). skb_checksum() internally subtracts the length parameter while iterating over skbuff, BUG_ON(len) at the end of it checks that the expected length to be included in the checksum calculation is fully consumed.
- https://git.kernel.org/stable/c/0ab3be58b45b996764aba0187b46de19b3e58a72
- https://git.kernel.org/stable/c/a661ed364ae6ae88c2fafa9ddc27df1af2a73701
- https://git.kernel.org/stable/c/ac7df3fc80fc82bcc3b1e8f6ebc0d2c435d0c534
- https://git.kernel.org/stable/c/b1d2de8a669fa14c499a385e056944d5352b3b40
- https://git.kernel.org/stable/c/c43e0ea848e7b9bef7a682cbc5608022d6d29d7b
- https://git.kernel.org/stable/c/d3217323525f7596427124359e76ea0d8fcc9874
- https://git.kernel.org/stable/c/d5953d680f7e96208c29ce4139a0e38de87a57fe
- https://git.kernel.org/stable/c/e3e608cbad376674d19a71ccd0d41804d9393f02
- https://github.com/slavin-ayu/CVE-2024-50251-PoC
Modified: 2024-12-11
CVE-2024-50262
In the Linux kernel, the following vulnerability has been resolved: bpf: Fix out-of-bounds write in trie_get_next_key() trie_get_next_key() allocates a node stack with size trie->max_prefixlen, while it writes (trie->max_prefixlen + 1) nodes to the stack when it has full paths from the root to leaves. For example, consider a trie with max_prefixlen is 8, and the nodes with key 0x00/0, 0x00/1, 0x00/2, ... 0x00/8 inserted. Subsequent calls to trie_get_next_key with _key with .prefixlen = 8 make 9 nodes be written on the node stack with size 8.
- https://git.kernel.org/stable/c/13400ac8fb80c57c2bfb12ebd35ee121ce9b4d21
- https://git.kernel.org/stable/c/590976f921723d53ac199c01d5b7b73a94875e68
- https://git.kernel.org/stable/c/86c8ebe02d8806dd8878d0063e8e185622ab6ea6
- https://git.kernel.org/stable/c/90a6e0e1e151ef7a9282e78f54c3091de2dcc99c
- https://git.kernel.org/stable/c/91afbc0eb3c90258ae378ae3c6ead3d2371e926d
- https://git.kernel.org/stable/c/a035df0b98df424559fd383e8e1a268f422ea2ba
- https://git.kernel.org/stable/c/c4b4f9a9ab82238cb158fa4fe61a8c0ae21a4980
- https://git.kernel.org/stable/c/e8494ac079814a53fbc2258d2743e720907488ed
Modified: 2024-12-11
CVE-2024-50264
In the Linux kernel, the following vulnerability has been resolved: vsock/virtio: Initialization of the dangling pointer occurring in vsk->trans During loopback communication, a dangling pointer can be created in vsk->trans, potentially leading to a Use-After-Free condition. This issue is resolved by initializing vsk->trans to NULL.
- https://git.kernel.org/stable/c/2a6a4e69f255b7aed17f93995691ab4f0d3c2203
- https://git.kernel.org/stable/c/44d29897eafd0e1196453d3003a4d5e0b968eeab
- https://git.kernel.org/stable/c/5f092a4271f6dccf88fe0d132475a17b69ef71df
- https://git.kernel.org/stable/c/5f970935d09934222fdef3d0e20c648ea7a963c1
- https://git.kernel.org/stable/c/6ca575374dd9a507cdd16dfa0e78c2e9e20bd05f
- https://git.kernel.org/stable/c/b110196fec44fe966952004bd426967c2a8fd358
- https://git.kernel.org/stable/c/eb1bdcb7dfc30b24495ee4c5533af0ed135cb5f1
- https://git.kernel.org/stable/c/fd8ae346692a56b4437d626c5460c7104980f389
Modified: 2024-11-21
CVE-2024-50265
In the Linux kernel, the following vulnerability has been resolved:
ocfs2: remove entry once instead of null-ptr-dereference in ocfs2_xa_remove()
Syzkaller is able to provoke null-ptr-dereference in ocfs2_xa_remove():
[ 57.319872] (a.out,1161,7):ocfs2_xa_remove:2028 ERROR: status = -12
[ 57.320420] (a.out,1161,7):ocfs2_xa_cleanup_value_truncate:1999 ERROR: Partial truncate while removing xattr overlay.upper. Leaking 1 clusters and removing the entry
[ 57.321727] BUG: kernel NULL pointer dereference, address: 0000000000000004
[...]
[ 57.325727] RIP: 0010:ocfs2_xa_block_wipe_namevalue+0x2a/0xc0
[...]
[ 57.331328] Call Trace:
[ 57.331477]
- https://git.kernel.org/stable/c/0b63c0e01fba40e3992bc627272ec7b618ccaef7
- https://git.kernel.org/stable/c/168a9b8303fcb0317db4c06b23ce1c0ce2af4e10
- https://git.kernel.org/stable/c/2b5369528ee63c88371816178a05b5e664c87386
- https://git.kernel.org/stable/c/38cbf13b2e7a31362babe411f7c2c3c52cd2734b
- https://git.kernel.org/stable/c/6a7e6dcf90fe7721d0863067b6ca9a9442134692
- https://git.kernel.org/stable/c/86dd0e8d42828923c68ad506933336bcd6f2317d
- https://git.kernel.org/stable/c/dcc8fe8c83145041cb6c80cac21f6173a3ff0204
- https://git.kernel.org/stable/c/dd73c942eed76a014c7a5597e6926435274d2c4c
Modified: 2024-12-11
CVE-2024-50267
In the Linux kernel, the following vulnerability has been resolved: USB: serial: io_edgeport: fix use after free in debug printk The "dev_dbg(&urb->dev->dev, ..." which happens after usb_free_urb(urb) is a use after free of the "urb" pointer. Store the "dev" pointer at the start of the function to avoid this issue.
- https://git.kernel.org/stable/c/13d6ff3ca76056d06a9d88300be2a293442ff595
- https://git.kernel.org/stable/c/275258c30bbda29467216e96fb655b16bcc9992b
- https://git.kernel.org/stable/c/314bdf446053e123f37543aa535197ee75f8aa97
- https://git.kernel.org/stable/c/37bb5628379295c1254c113a407cab03a0f4d0b4
- https://git.kernel.org/stable/c/39709ce93f5c3f9eb535efe2afea088805d1128f
- https://git.kernel.org/stable/c/44fff2c16c5aafbdb70c7183dae0a415ae74705e
- https://git.kernel.org/stable/c/e567fc8f7a4460e486e52c9261b1e8b9f5dc42aa
- https://git.kernel.org/stable/c/e6ceb04eeb6115d872d4c4078d12f1170ed755ce
Modified: 2024-11-23
CVE-2024-50268
In the Linux kernel, the following vulnerability has been resolved: usb: typec: fix potential out of bounds in ucsi_ccg_update_set_new_cam_cmd() The "*cmd" variable can be controlled by the user via debugfs. That means "new_cam" can be as high as 255 while the size of the uc->updated[] array is UCSI_MAX_ALTMODES (30). The call tree is: ucsi_cmd() // val comes from simple_attr_write_xsigned() -> ucsi_send_command() -> ucsi_send_command_common() -> ucsi_run_command() // calls ucsi->ops->sync_control() -> ucsi_ccg_sync_control()
- https://git.kernel.org/stable/c/3a2ba841659a0f15102585120dea75d8d5209616
- https://git.kernel.org/stable/c/604314ecd682913925980dc955caea2d036eab5f
- https://git.kernel.org/stable/c/69e19774f15e12dda6c6c58001d059e30895009b
- https://git.kernel.org/stable/c/7dd08a0b4193087976db6b3ee7807de7e8316f96
- https://git.kernel.org/stable/c/8f47984b35f3be0cfc652c2ca358d5768ea3456b
- https://git.kernel.org/stable/c/d76923164705821aa1b01b8d9d1741f20c654ab4
Modified: 2024-11-27
CVE-2024-50269
In the Linux kernel, the following vulnerability has been resolved: usb: musb: sunxi: Fix accessing an released usb phy Commit 6ed05c68cbca ("usb: musb: sunxi: Explicitly release USB PHY on exit") will cause that usb phy @glue->xceiv is accessed after released. 1) register platform driver @sunxi_musb_driver // get the usb phy @glue->xceiv sunxi_musb_probe() -> devm_usb_get_phy(). 2) register and unregister platform driver @musb_driver musb_probe() -> sunxi_musb_init() use the phy here //the phy is released here musb_remove() -> sunxi_musb_exit() -> devm_usb_put_phy() 3) register @musb_driver again musb_probe() -> sunxi_musb_init() use the phy here but the phy has been released at 2). ... Fixed by reverting the commit, namely, removing devm_usb_put_phy() from sunxi_musb_exit().
- https://git.kernel.org/stable/c/498dbd9aea205db9da674994b74c7bf8e18448bd
- https://git.kernel.org/stable/c/4aa77d5ea9944468e16c3eed15e858fd5de44de1
- https://git.kernel.org/stable/c/63559ba8077cbadae1c92a65b73ea522bf377dd9
- https://git.kernel.org/stable/c/6e2848d1c8c0139161e69ac0a94133e90e9988e8
- https://git.kernel.org/stable/c/721ddad945596220c123eb6f7126729fe277ee4f
- https://git.kernel.org/stable/c/8a30da5aa9609663b3e05bcc91a916537f66a4cd
- https://git.kernel.org/stable/c/b08baa75b989cf779cbfa0969681f8ba2dc46569
- https://git.kernel.org/stable/c/ccd811c304d2ee56189bfbc49302cb3c44361893
Modified: 2024-11-27
CVE-2024-50273
In the Linux kernel, the following vulnerability has been resolved: btrfs: reinitialize delayed ref list after deleting it from the list At insert_delayed_ref() if we need to update the action of an existing ref to BTRFS_DROP_DELAYED_REF, we delete the ref from its ref head's ref_add_list using list_del(), which leaves the ref's add_list member not reinitialized, as list_del() sets the next and prev members of the list to LIST_POISON1 and LIST_POISON2, respectively. If later we end up calling drop_delayed_ref() against the ref, which can happen during merging or when destroying delayed refs due to a transaction abort, we can trigger a crash since at drop_delayed_ref() we call list_empty() against the ref's add_list, which returns false since the list was not reinitialized after the list_del() and as a consequence we call list_del() again at drop_delayed_ref(). This results in an invalid list access since the next and prev members are set to poison pointers, resulting in a splat if CONFIG_LIST_HARDENED and CONFIG_DEBUG_LIST are set or invalid poison pointer dereferences otherwise. So fix this by deleting from the list with list_del_init() instead.
- https://git.kernel.org/stable/c/2cb1a73d1d44a1c11b0ee5eeced765dd80ec48e6
- https://git.kernel.org/stable/c/2fd0948a483e9cb2d669c7199bc620a21c97673d
- https://git.kernel.org/stable/c/50a3933760b427759afdd23156a7280a19357a92
- https://git.kernel.org/stable/c/93c5b8decc0ef39ba84f4211d2db6da0a4aefbeb
- https://git.kernel.org/stable/c/bf0b0c6d159767c0d1c21f793950d78486690ee0
- https://git.kernel.org/stable/c/c24fa427fc0ae827b2a3a07f13738cbf82c3f851
- https://git.kernel.org/stable/c/c9a75ec45f1111ef530ab186c2a7684d0a0c9245
- https://git.kernel.org/stable/c/f04be6d68f715c1473a8422fc0460f57b5e99931
Modified: 2024-11-27
CVE-2024-50278
In the Linux kernel, the following vulnerability has been resolved: dm cache: fix potential out-of-bounds access on the first resume Out-of-bounds access occurs if the fast device is expanded unexpectedly before the first-time resume of the cache table. This happens because expanding the fast device requires reloading the cache table for cache_create to allocate new in-core data structures that fit the new size, and the check in cache_preresume is not performed during the first resume, leading to the issue. Reproduce steps: 1. prepare component devices: dmsetup create cmeta --table "0 8192 linear /dev/sdc 0" dmsetup create cdata --table "0 65536 linear /dev/sdc 8192" dmsetup create corig --table "0 524288 linear /dev/sdc 262144" dd if=/dev/zero of=/dev/mapper/cmeta bs=4k count=1 oflag=direct 2. load a cache table of 512 cache blocks, and deliberately expand the fast device before resuming the cache, making the in-core data structures inadequate. dmsetup create cache --notable dmsetup reload cache --table "0 524288 cache /dev/mapper/cmeta \ /dev/mapper/cdata /dev/mapper/corig 128 2 metadata2 writethrough smq 0" dmsetup reload cdata --table "0 131072 linear /dev/sdc 8192" dmsetup resume cdata dmsetup resume cache 3. suspend the cache to write out the in-core dirty bitset and hint array, leading to out-of-bounds access to the dirty bitset at offset 0x40: dmsetup suspend cache KASAN reports: BUG: KASAN: vmalloc-out-of-bounds in is_dirty_callback+0x2b/0x80 Read of size 8 at addr ffffc90000085040 by task dmsetup/90 (...snip...) The buggy address belongs to the virtual mapping at [ffffc90000085000, ffffc90000087000) created by: cache_ctr+0x176a/0x35f0 (...snip...) Memory state around the buggy address: ffffc90000084f00: f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 ffffc90000084f80: f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 >ffffc90000085000: 00 00 00 00 00 00 00 00 f8 f8 f8 f8 f8 f8 f8 f8 ^ ffffc90000085080: f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 ffffc90000085100: f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 Fix by checking the size change on the first resume.
- https://git.kernel.org/stable/c/036dd6e3d2638103e0092864577ea1d091466b86
- https://git.kernel.org/stable/c/13ed3624c6ef283acefa4cc42cc8ae54fd4391a4
- https://git.kernel.org/stable/c/2222b0929d00e2d13732b799b63be391b5de4492
- https://git.kernel.org/stable/c/483b7261b35a9d369082ab298a6670912243f0be
- https://git.kernel.org/stable/c/c0ade5d98979585d4f5a93e4514c2e9a65afa08d
- https://git.kernel.org/stable/c/c52ec00cb2f9bebfada22edcc0db385b910a1cdb
- https://git.kernel.org/stable/c/e492f71854ce03474d49e87fd98b8df1f7cd1d2d
- https://git.kernel.org/stable/c/fdef3b94dfebd57e3077a578b6e309a2bb6fa688
Modified: 2024-11-27
CVE-2024-50279
In the Linux kernel, the following vulnerability has been resolved: dm cache: fix out-of-bounds access to the dirty bitset when resizing dm-cache checks the dirty bits of the cache blocks to be dropped when shrinking the fast device, but an index bug in bitset iteration causes out-of-bounds access. Reproduce steps: 1. create a cache device of 1024 cache blocks (128 bytes dirty bitset) dmsetup create cmeta --table "0 8192 linear /dev/sdc 0" dmsetup create cdata --table "0 131072 linear /dev/sdc 8192" dmsetup create corig --table "0 524288 linear /dev/sdc 262144" dd if=/dev/zero of=/dev/mapper/cmeta bs=4k count=1 oflag=direct dmsetup create cache --table "0 524288 cache /dev/mapper/cmeta \ /dev/mapper/cdata /dev/mapper/corig 128 2 metadata2 writethrough smq 0" 2. shrink the fast device to 512 cache blocks, triggering out-of-bounds access to the dirty bitset (offset 0x80) dmsetup suspend cache dmsetup reload cdata --table "0 65536 linear /dev/sdc 8192" dmsetup resume cdata dmsetup resume cache KASAN reports: BUG: KASAN: vmalloc-out-of-bounds in cache_preresume+0x269/0x7b0 Read of size 8 at addr ffffc900000f3080 by task dmsetup/131 (...snip...) The buggy address belongs to the virtual mapping at [ffffc900000f3000, ffffc900000f5000) created by: cache_ctr+0x176a/0x35f0 (...snip...) Memory state around the buggy address: ffffc900000f2f80: f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 ffffc900000f3000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >ffffc900000f3080: f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 ^ ffffc900000f3100: f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 ffffc900000f3180: f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 f8 Fix by making the index post-incremented.
- https://git.kernel.org/stable/c/3b02c40ff10fdf83cc545850db208de855ebe22c
- https://git.kernel.org/stable/c/4fa4feb873cea0e9d6ff883b37cca6f33169d8b4
- https://git.kernel.org/stable/c/56507203e1b6127967ec2b51fb0b23a0d4af1334
- https://git.kernel.org/stable/c/792227719725497ce10a8039803bec13f89f8910
- https://git.kernel.org/stable/c/8501e38dc9e0060814c4085815fc83da3e6d43bf
- https://git.kernel.org/stable/c/e57648ce325fa405fe6bbd0e6a618ced7c301a2d
- https://git.kernel.org/stable/c/ee1f74925717ab36f6a091104c170639501ce818
- https://git.kernel.org/stable/c/ff1dd8a04c30e8d4e2fd5c83198ca672eb6a9e7f
Modified: 2025-02-18
CVE-2024-50282
In the Linux kernel, the following vulnerability has been resolved: drm/amdgpu: add missing size check in amdgpu_debugfs_gprwave_read() Avoid a possible buffer overflow if size is larger than 4K. (cherry picked from commit f5d873f5825b40d886d03bd2aede91d4cf002434)
Modified: 2024-11-22
CVE-2024-50287
In the Linux kernel, the following vulnerability has been resolved: media: v4l2-tpg: prevent the risk of a division by zero As reported by Coverity, the logic at tpg_precalculate_line() blindly rescales the buffer even when scaled_witdh is equal to zero. If this ever happens, this will cause a division by zero. Instead, add a WARN_ON_ONCE() to trigger such cases and return without doing any precalculation.
- https://git.kernel.org/stable/c/054931ca3cfcb8e8fa036e887d6f379942b02565
- https://git.kernel.org/stable/c/0bfc6e38ee2250f0503d96f1a1de441c31d88715
- https://git.kernel.org/stable/c/0cdb42ba0b28f548c1a4e86bb8489dba0d78fc21
- https://git.kernel.org/stable/c/2d0f01aa602fd15a805771bdf3f4d9a9b4df7f47
- https://git.kernel.org/stable/c/a749c15dccc58d9cbad9cd23bd8ab4b5fa96cf47
- https://git.kernel.org/stable/c/c63c30c9d9f2c8de34b16cd2b8400240533b914e
- https://git.kernel.org/stable/c/e3c36d0bde309f690ed1f9cd5f7e63b3a513f94a
- https://git.kernel.org/stable/c/e6a3ea83fbe15d4818d01804e904cbb0e64e543b
Modified: 2024-11-27
CVE-2024-50296
In the Linux kernel, the following vulnerability has been resolved: net: hns3: fix kernel crash when uninstalling driver When the driver is uninstalled and the VF is disabled concurrently, a kernel crash occurs. The reason is that the two actions call function pci_disable_sriov(). The num_VFs is checked to determine whether to release the corresponding resources. During the second calling, num_VFs is not 0 and the resource release function is called. However, the corresponding resource has been released during the first invoking. Therefore, the problem occurs: [15277.839633][T50670] Unable to handle kernel NULL pointer dereference at virtual address 0000000000000020 ... [15278.131557][T50670] Call trace: [15278.134686][T50670] klist_put+0x28/0x12c [15278.138682][T50670] klist_del+0x14/0x20 [15278.142592][T50670] device_del+0xbc/0x3c0 [15278.146676][T50670] pci_remove_bus_device+0x84/0x120 [15278.151714][T50670] pci_stop_and_remove_bus_device+0x6c/0x80 [15278.157447][T50670] pci_iov_remove_virtfn+0xb4/0x12c [15278.162485][T50670] sriov_disable+0x50/0x11c [15278.166829][T50670] pci_disable_sriov+0x24/0x30 [15278.171433][T50670] hnae3_unregister_ae_algo_prepare+0x60/0x90 [hnae3] [15278.178039][T50670] hclge_exit+0x28/0xd0 [hclge] [15278.182730][T50670] __se_sys_delete_module.isra.0+0x164/0x230 [15278.188550][T50670] __arm64_sys_delete_module+0x1c/0x30 [15278.193848][T50670] invoke_syscall+0x50/0x11c [15278.198278][T50670] el0_svc_common.constprop.0+0x158/0x164 [15278.203837][T50670] do_el0_svc+0x34/0xcc [15278.207834][T50670] el0_svc+0x20/0x30 For details, see the following figure. rmmod hclge disable VFs ---------------------------------------------------- hclge_exit() sriov_numvfs_store() ... device_lock() pci_disable_sriov() hns3_pci_sriov_configure() pci_disable_sriov() sriov_disable() sriov_disable() if !num_VFs : if !num_VFs : return; return; sriov_del_vfs() sriov_del_vfs() ... ... klist_put() klist_put() ... ... num_VFs = 0; num_VFs = 0; device_unlock(); In this patch, when driver is removing, we get the device_lock() to protect num_VFs, just like sriov_numvfs_store().
- https://git.kernel.org/stable/c/590a4b2d4e0b73586e88bce9b8135b593355ec09
- https://git.kernel.org/stable/c/719edd9f3372ce7fb3b157647c6658672946874b
- https://git.kernel.org/stable/c/76b155e14d9b182ce83d32ada2d0d7219ea8c8dd
- https://git.kernel.org/stable/c/7ae4e56de7dbd0999578246a536cf52a63f4056d
- https://git.kernel.org/stable/c/a0df055775f30850c0da8f7dab40d67c0fd63908
- https://git.kernel.org/stable/c/b5c94e4d947d15d521e935ff10c5a22a7883dea5
- https://git.kernel.org/stable/c/df3dff8ab6d79edc942464999d06fbaedf8cdd18
- https://git.kernel.org/stable/c/e36482b222e00cc7aeeea772fc0cf2943590bc4d
Modified: 2024-11-22
CVE-2024-50299
In the Linux kernel, the following vulnerability has been resolved: sctp: properly validate chunk size in sctp_sf_ootb() A size validation fix similar to that in Commit 50619dbf8db7 ("sctp: add size validation when walking chunks") is also required in sctp_sf_ootb() to address a crash reported by syzbot: BUG: KMSAN: uninit-value in sctp_sf_ootb+0x7f5/0xce0 net/sctp/sm_statefuns.c:3712 sctp_sf_ootb+0x7f5/0xce0 net/sctp/sm_statefuns.c:3712 sctp_do_sm+0x181/0x93d0 net/sctp/sm_sideeffect.c:1166 sctp_endpoint_bh_rcv+0xc38/0xf90 net/sctp/endpointola.c:407 sctp_inq_push+0x2ef/0x380 net/sctp/inqueue.c:88 sctp_rcv+0x3831/0x3b20 net/sctp/input.c:243 sctp4_rcv+0x42/0x50 net/sctp/protocol.c:1159 ip_protocol_deliver_rcu+0xb51/0x13d0 net/ipv4/ip_input.c:205 ip_local_deliver_finish+0x336/0x500 net/ipv4/ip_input.c:233
- https://git.kernel.org/stable/c/0ead60804b64f5bd6999eec88e503c6a1a242d41
- https://git.kernel.org/stable/c/40b283ba76665437bc2ac72079c51b57b25bff9e
- https://git.kernel.org/stable/c/67b9a278b80f71ec62091ded97c6bcbea33b5ec3
- https://git.kernel.org/stable/c/8820d2d6589f62ee5514793fff9b50c9f8101182
- https://git.kernel.org/stable/c/9b5d42aeaf1a52f73b003a33da6deef7df34685f
- https://git.kernel.org/stable/c/a758aa6a773bb872196bcc3173171ef8996bddf0
- https://git.kernel.org/stable/c/bf9bff13225baf5f658577f7d985fc4933d79527
- https://git.kernel.org/stable/c/d3fb3cc83cf313e4f87063ce0f3fea76b071567b
Modified: 2024-11-21
CVE-2024-50301
In the Linux kernel, the following vulnerability has been resolved: security/keys: fix slab-out-of-bounds in key_task_permission KASAN reports an out of bounds read: BUG: KASAN: slab-out-of-bounds in __kuid_val include/linux/uidgid.h:36 BUG: KASAN: slab-out-of-bounds in uid_eq include/linux/uidgid.h:63 [inline] BUG: KASAN: slab-out-of-bounds in key_task_permission+0x394/0x410 security/keys/permission.c:54 Read of size 4 at addr ffff88813c3ab618 by task stress-ng/4362 CPU: 2 PID: 4362 Comm: stress-ng Not tainted 5.10.0-14930-gafbffd6c3ede #15 Call Trace: __dump_stack lib/dump_stack.c:82 [inline] dump_stack+0x107/0x167 lib/dump_stack.c:123 print_address_description.constprop.0+0x19/0x170 mm/kasan/report.c:400 __kasan_report.cold+0x6c/0x84 mm/kasan/report.c:560 kasan_report+0x3a/0x50 mm/kasan/report.c:585 __kuid_val include/linux/uidgid.h:36 [inline] uid_eq include/linux/uidgid.h:63 [inline] key_task_permission+0x394/0x410 security/keys/permission.c:54 search_nested_keyrings+0x90e/0xe90 security/keys/keyring.c:793 This issue was also reported by syzbot. It can be reproduced by following these steps(more details [1]): 1. Obtain more than 32 inputs that have similar hashes, which ends with the pattern '0xxxxxxxe6'. 2. Reboot and add the keys obtained in step 1. The reproducer demonstrates how this issue happened: 1. In the search_nested_keyrings function, when it iterates through the slots in a node(below tag ascend_to_node), if the slot pointer is meta and node->back_pointer != NULL(it means a root), it will proceed to descend_to_node. However, there is an exception. If node is the root, and one of the slots points to a shortcut, it will be treated as a keyring. 2. Whether the ptr is keyring decided by keyring_ptr_is_keyring function. However, KEYRING_PTR_SUBTYPE is 0x2UL, the same as ASSOC_ARRAY_PTR_SUBTYPE_MASK. 3. When 32 keys with the similar hashes are added to the tree, the ROOT has keys with hashes that are not similar (e.g. slot 0) and it splits NODE A without using a shortcut. When NODE A is filled with keys that all hashes are xxe6, the keys are similar, NODE A will split with a shortcut. Finally, it forms the tree as shown below, where slot 6 points to a shortcut. NODE A +------>+---+ ROOT | | 0 | xxe6 +---+ | +---+ xxxx | 0 | shortcut : : xxe6 +---+ | +---+ xxe6 : : | | | xxe6 +---+ | +---+ | 6 |---+ : : xxe6 +---+ +---+ xxe6 : : | f | xxe6 +---+ +---+ xxe6 | f | +---+ 4. As mentioned above, If a slot(slot 6) of the root points to a shortcut, it may be mistakenly transferred to a key*, leading to a read out-of-bounds read. To fix this issue, one should jump to descend_to_node if the ptr is a shortcut, regardless of whether the node is root or not. [1] https://lore.kernel.org/linux-kernel/1cfa878e-8c7b-4570-8606-21daf5e13ce7@huaweicloud.com/ [jarkko: tweaked the commit message a bit to have an appropriate closes tag.]
- https://git.kernel.org/stable/c/199c20fb7499c79557a075dc24e9a7dae7d9f1ce
- https://git.kernel.org/stable/c/1e4332581cd4eed75aea77af6f66cdcdda8b49b9
- https://git.kernel.org/stable/c/3e79ad156bedf2da0ab909a118d2cec6c9c22b79
- https://git.kernel.org/stable/c/4a74da044ec9ec8679e6beccc4306b936b62873f
- https://git.kernel.org/stable/c/4efb69a0e294ef201bcdf7ce3d6202cd0a545a5d
- https://git.kernel.org/stable/c/bbad2d5b6c99db468d8f88b6ba6a56ed409b4881
- https://git.kernel.org/stable/c/c3ce634ad953ce48c75c39bdfd8b711dd95f346f
- https://git.kernel.org/stable/c/e0a317ad68e4ea48a0158187238c5407e4fdec8b
Modified: 2025-03-10
CVE-2024-50302
In the Linux kernel, the following vulnerability has been resolved: HID: core: zero-initialize the report buffer Since the report buffer is used by all kinds of drivers in various ways, let's zero-initialize it during allocation to make sure that it can't be ever used to leak kernel memory via specially-crafted report.
- https://git.kernel.org/stable/c/05ade5d4337867929e7ef664e7ac8e0c734f1aaf
- https://git.kernel.org/stable/c/177f25d1292c7e16e1199b39c85480f7f8815552
- https://git.kernel.org/stable/c/1884ab3d22536a5c14b17c78c2ce76d1734e8b0b
- https://git.kernel.org/stable/c/3f9e88f2672c4635960570ee9741778d4135ecf5
- https://git.kernel.org/stable/c/492015e6249fbcd42138b49de3c588d826dd9648
- https://git.kernel.org/stable/c/9d9f5c75c0c7f31766ec27d90f7a6ac673193191
- https://git.kernel.org/stable/c/d7dc68d82ab3fcfc3f65322465da3d7031d4ab46
- https://git.kernel.org/stable/c/e7ea60184e1e88a3c9e437b3265cbb6439aa7e26
Modified: 2024-11-28
CVE-2024-53042
In the Linux kernel, the following vulnerability has been resolved:
ipv4: ip_tunnel: Fix suspicious RCU usage warning in ip_tunnel_init_flow()
There are code paths from which the function is called without holding
the RCU read lock, resulting in a suspicious RCU usage warning [1].
Fix by using l3mdev_master_upper_ifindex_by_index() which will acquire
the RCU read lock before calling
l3mdev_master_upper_ifindex_by_index_rcu().
[1]
WARNING: suspicious RCU usage
6.12.0-rc3-custom-gac8f72681cf2 #141 Not tainted
-----------------------------
net/core/dev.c:876 RCU-list traversed in non-reader section!!
other info that might help us debug this:
rcu_scheduler_active = 2, debug_locks = 1
1 lock held by ip/361:
#0: ffffffff86fc7cb0 (rtnl_mutex){+.+.}-{3:3}, at: rtnetlink_rcv_msg+0x377/0xf60
stack backtrace:
CPU: 3 UID: 0 PID: 361 Comm: ip Not tainted 6.12.0-rc3-custom-gac8f72681cf2 #141
Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
Call Trace:
- https://git.kernel.org/stable/c/5edcb3fdb12c3d46a6e79eeeec27d925b80fc168
- https://git.kernel.org/stable/c/699b48fc31727792edf2cab3829586ae6ba649e2
- https://git.kernel.org/stable/c/6dfaa458fe923211c766238a224e0a3c0522935c
- https://git.kernel.org/stable/c/72c0f482e39c87317ebf67661e28c8d86c93e870
- https://git.kernel.org/stable/c/ad4a3ca6a8e886f6491910a3ae5d53595e40597d
- https://git.kernel.org/stable/c/e2742758c9c85c84e077ede5f916479f724e11c2
Modified: 2024-11-22
CVE-2024-53052
In the Linux kernel, the following vulnerability has been resolved: io_uring/rw: fix missing NOWAIT check for O_DIRECT start write When io_uring starts a write, it'll call kiocb_start_write() to bump the super block rwsem, preventing any freezes from happening while that write is in-flight. The freeze side will grab that rwsem for writing, excluding any new writers from happening and waiting for existing writes to finish. But io_uring unconditionally uses kiocb_start_write(), which will block if someone is currently attempting to freeze the mount point. This causes a deadlock where freeze is waiting for previous writes to complete, but the previous writes cannot complete, as the task that is supposed to complete them is blocked waiting on starting a new write. This results in the following stuck trace showing that dependency with the write blocked starting a new write: task:fio state:D stack:0 pid:886 tgid:886 ppid:876 Call trace: __switch_to+0x1d8/0x348 __schedule+0x8e8/0x2248 schedule+0x110/0x3f0 percpu_rwsem_wait+0x1e8/0x3f8 __percpu_down_read+0xe8/0x500 io_write+0xbb8/0xff8 io_issue_sqe+0x10c/0x1020 io_submit_sqes+0x614/0x2110 __arm64_sys_io_uring_enter+0x524/0x1038 invoke_syscall+0x74/0x268 el0_svc_common.constprop.0+0x160/0x238 do_el0_svc+0x44/0x60 el0_svc+0x44/0xb0 el0t_64_sync_handler+0x118/0x128 el0t_64_sync+0x168/0x170 INFO: task fsfreeze:7364 blocked for more than 15 seconds. Not tainted 6.12.0-rc5-00063-g76aaf945701c #7963 with the attempting freezer stuck trying to grab the rwsem: task:fsfreeze state:D stack:0 pid:7364 tgid:7364 ppid:995 Call trace: __switch_to+0x1d8/0x348 __schedule+0x8e8/0x2248 schedule+0x110/0x3f0 percpu_down_write+0x2b0/0x680 freeze_super+0x248/0x8a8 do_vfs_ioctl+0x149c/0x1b18 __arm64_sys_ioctl+0xd0/0x1a0 invoke_syscall+0x74/0x268 el0_svc_common.constprop.0+0x160/0x238 do_el0_svc+0x44/0x60 el0_svc+0x44/0xb0 el0t_64_sync_handler+0x118/0x128 el0t_64_sync+0x168/0x170 Fix this by having the io_uring side honor IOCB_NOWAIT, and only attempt a blocking grab of the super block rwsem if it isn't set. For normal issue where IOCB_NOWAIT would always be set, this returns -EAGAIN which will have io_uring core issue a blocking attempt of the write. That will in turn also get completions run, ensuring forward progress. Since freezing requires CAP_SYS_ADMIN in the first place, this isn't something that can be triggered by a regular user.
- https://git.kernel.org/stable/c/003d2996964c03dfd34860500428f4cdf1f5879e
- https://git.kernel.org/stable/c/1d60d74e852647255bd8e76f5a22dc42531e4389
- https://git.kernel.org/stable/c/26b8c48f369b7591f5679e0b90612f4862a32929
- https://git.kernel.org/stable/c/485d9232112b17f389b29497ff41b97b3189546b
- https://git.kernel.org/stable/c/4e24041ba86d50aaa4c792ae2c88ed01b3d96243
- https://git.kernel.org/stable/c/9e8debb8e51354b201db494689198078ec2c1e75
Modified: 2024-12-11
CVE-2024-53057
In the Linux kernel, the following vulnerability has been resolved: net/sched: stop qdisc_tree_reduce_backlog on TC_H_ROOT In qdisc_tree_reduce_backlog, Qdiscs with major handle ffff: are assumed to be either root or ingress. This assumption is bogus since it's valid to create egress qdiscs with major handle ffff: Budimir Markovic found that for qdiscs like DRR that maintain an active class list, it will cause a UAF with a dangling class pointer. In 066a3b5b2346, the concern was to avoid iterating over the ingress qdisc since its parent is itself. The proper fix is to stop when parent TC_H_ROOT is reached because the only way to retrieve ingress is when a hierarchy which does not contain a ffff: major handle call into qdisc_lookup with TC_H_MAJ(TC_H_ROOT). In the scenario where major ffff: is an egress qdisc in any of the tree levels, the updates will also propagate to TC_H_ROOT, which then the iteration must stop. net/sched/sch_api.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
- https://git.kernel.org/stable/c/05df1b1dff8f197f1c275b57ccb2ca33021df552
- https://git.kernel.org/stable/c/2e95c4384438adeaa772caa560244b1a2efef816
- https://git.kernel.org/stable/c/580b3189c1972aff0f993837567d36392e9d981b
- https://git.kernel.org/stable/c/597cf9748c3477bf61bc35f0634129f56764ad24
- https://git.kernel.org/stable/c/9995909615c3431a5304c1210face5f268d24dba
- https://git.kernel.org/stable/c/ce691c814bc7a3c30c220ffb5b7422715458fd9b
- https://git.kernel.org/stable/c/dbe778b08b5101df9e89bc06e0a3a7ecd2f4ef20
- https://git.kernel.org/stable/c/e7f9a6f97eb067599a74f3bcb6761976b0ed303e
Modified: 2024-12-03
CVE-2024-53059
In the Linux kernel, the following vulnerability has been resolved: wifi: iwlwifi: mvm: Fix response handling in iwl_mvm_send_recovery_cmd() 1. The size of the response packet is not validated. 2. The response buffer is not freed. Resolve these issues by switching to iwl_mvm_send_cmd_status(), which handles both size validation and frees the buffer.
- https://git.kernel.org/stable/c/07a6e3b78a65f4b2796a8d0d4adb1a15a81edead
- https://git.kernel.org/stable/c/3eb986c64c6bfb721950f9666a3b723cf65d043f
- https://git.kernel.org/stable/c/3f45d590ccbae6dfd6faef54efe74c30bd85d3da
- https://git.kernel.org/stable/c/45a628911d3c68e024eed337054a0452b064f450
- https://git.kernel.org/stable/c/64d63557ded6ff3ce72b18ab87a6c4b1b652161c
- https://git.kernel.org/stable/c/9480c3045f302f43f9910d2d556d6cf5a62c1822
- https://git.kernel.org/stable/c/9c98ee7ea463a838235e7a0e35851b38476364f2
Modified: 2024-12-03
CVE-2024-53060
In the Linux kernel, the following vulnerability has been resolved: drm/amdgpu: prevent NULL pointer dereference if ATIF is not supported acpi_evaluate_object() may return AE_NOT_FOUND (failure), which would result in dereferencing buffer.pointer (obj) while being NULL. Although this case may be unrealistic for the current code, it is still better to protect against possible bugs. Bail out also when status is AE_NOT_FOUND. This fixes 1 FORWARD_NULL issue reported by Coverity Report: CID 1600951: Null pointer dereferences (FORWARD_NULL) (cherry picked from commit 91c9e221fe2553edf2db71627d8453f083de87a1)
- https://git.kernel.org/stable/c/1a9f55ed5b512f510ccd21ad527d532e60550e80
- https://git.kernel.org/stable/c/27fc29b5376998c126c85cf9b15d9dfc2afc9cbe
- https://git.kernel.org/stable/c/2ac7f253deada4d449559b65a1c1cd0a6f6f19b7
- https://git.kernel.org/stable/c/8d7a28eca7553d35d4ce192fa1f390f2357df41b
- https://git.kernel.org/stable/c/a613a392417532ca5aaf3deac6e3277aa7aaef2b
- https://git.kernel.org/stable/c/a6dd15981c03f2cdc9a351a278f09b5479d53d2e
- https://git.kernel.org/stable/c/b9d9881237afeb52eddd70077b7174bf17e2fa30
- https://git.kernel.org/stable/c/ce8a00a00e36f61f5a1e47734332420b68784c43
Modified: 2025-02-18
CVE-2024-53061
In the Linux kernel, the following vulnerability has been resolved: media: s5p-jpeg: prevent buffer overflows The current logic allows word to be less than 2. If this happens, there will be buffer overflows, as reported by smatch. Add extra checks to prevent it. While here, remove an unused word = 0 assignment.
- https://git.kernel.org/stable/c/14a22762c3daeac59a5a534e124acbb4d7a79b3a
- https://git.kernel.org/stable/c/784bc785a453eb2f8433dd62075befdfa1b2d6fd
- https://git.kernel.org/stable/c/a930cddfd153b5d4401df0c01effa14c831ff21e
- https://git.kernel.org/stable/c/c5f6fefcda8fac8f082b6c5bf416567f4e100c51
- https://git.kernel.org/stable/c/c85db2d4432de4ff9d97006691ce2dcb5bda660e
- https://git.kernel.org/stable/c/c951a0859fdacf49a2298b5551a7e52b95ff6f51
- https://git.kernel.org/stable/c/e5117f6e7adcf9fd7546cdd0edc9abe4474bc98b
- https://git.kernel.org/stable/c/f54e8e1e39dacccebcfb9a9a36f0552a0a97e2ef
Modified: 2024-11-26
CVE-2024-53063
In the Linux kernel, the following vulnerability has been resolved: media: dvbdev: prevent the risk of out of memory access The dvbdev contains a static variable used to store dvb minors. The behavior of it depends if CONFIG_DVB_DYNAMIC_MINORS is set or not. When not set, dvb_register_device() won't check for boundaries, as it will rely that a previous call to dvb_register_adapter() would already be enforcing it. On a similar way, dvb_device_open() uses the assumption that the register functions already did the needed checks. This can be fragile if some device ends using different calls. This also generate warnings on static check analysers like Coverity. So, add explicit guards to prevent potential risk of OOM issues.
- https://git.kernel.org/stable/c/1e461672616b726f29261ee81bb991528818537c
- https://git.kernel.org/stable/c/3b88675e18b6517043a6f734eaa8ea6eb3bfa140
- https://git.kernel.org/stable/c/5f76f7df14861e3a560898fa41979ec92424b58f
- https://git.kernel.org/stable/c/972e63e895abbe8aa1ccbdbb4e6362abda7cd457
- https://git.kernel.org/stable/c/9c17085fabbde2041c893d29599800f2d4992b23
- https://git.kernel.org/stable/c/a4a17210c03ade1c8d9a9f193a105654b7a05c11
- https://git.kernel.org/stable/c/b751a96025275c17f04083cbfe856822f1658946
- https://git.kernel.org/stable/c/fedfde9deb83ac8d2f3d5f36f111023df34b1684
Modified: 2024-11-26
CVE-2024-53066
In the Linux kernel, the following vulnerability has been resolved: nfs: Fix KMSAN warning in decode_getfattr_attrs() Fix the following KMSAN warning: CPU: 1 UID: 0 PID: 7651 Comm: cp Tainted: G B Tainted: [B]=BAD_PAGE Hardware name: QEMU Standard PC (Q35 + ICH9, 2009) ===================================================== ===================================================== BUG: KMSAN: uninit-value in decode_getfattr_attrs+0x2d6d/0x2f90 decode_getfattr_attrs+0x2d6d/0x2f90 decode_getfattr_generic+0x806/0xb00 nfs4_xdr_dec_getattr+0x1de/0x240 rpcauth_unwrap_resp_decode+0xab/0x100 rpcauth_unwrap_resp+0x95/0xc0 call_decode+0x4ff/0xb50 __rpc_execute+0x57b/0x19d0 rpc_execute+0x368/0x5e0 rpc_run_task+0xcfe/0xee0 nfs4_proc_getattr+0x5b5/0x990 __nfs_revalidate_inode+0x477/0xd00 nfs_access_get_cached+0x1021/0x1cc0 nfs_do_access+0x9f/0xae0 nfs_permission+0x1e4/0x8c0 inode_permission+0x356/0x6c0 link_path_walk+0x958/0x1330 path_lookupat+0xce/0x6b0 filename_lookup+0x23e/0x770 vfs_statx+0xe7/0x970 vfs_fstatat+0x1f2/0x2c0 __se_sys_newfstatat+0x67/0x880 __x64_sys_newfstatat+0xbd/0x120 x64_sys_call+0x1826/0x3cf0 do_syscall_64+0xd0/0x1b0 entry_SYSCALL_64_after_hwframe+0x77/0x7f The KMSAN warning is triggered in decode_getfattr_attrs(), when calling decode_attr_mdsthreshold(). It appears that fattr->mdsthreshold is not initialized. Fix the issue by initializing fattr->mdsthreshold to NULL in nfs_fattr_init().
- https://git.kernel.org/stable/c/25ffd294fef81a7f3cd9528adf21560c04d98747
- https://git.kernel.org/stable/c/8fc5ea9231af9122d227c9c13f5e578fca48d2e3
- https://git.kernel.org/stable/c/9b453e8b108a5a93a6e348cf2ba4c9c138314a00
- https://git.kernel.org/stable/c/9be0a21ae52b3b822d0eec4d14e909ab394f8a92
- https://git.kernel.org/stable/c/bbfcd261cc068fe1cd02a4e871275074a0daa4e2
- https://git.kernel.org/stable/c/dc270d7159699ad6d11decadfce9633f0f71c1db
- https://git.kernel.org/stable/c/f6b2b2b981af8e7d7c62d34143acefa4e1edfe8b
- https://git.kernel.org/stable/c/f749cb60a01f8391c760a1d6ecd938cadacf9549
Modified: 2024-12-24
CVE-2024-53097
In the Linux kernel, the following vulnerability has been resolved: mm: krealloc: Fix MTE false alarm in __do_krealloc This patch addresses an issue introduced by commit 1a83a716ec233 ("mm: krealloc: consider spare memory for __GFP_ZERO") which causes MTE (Memory Tagging Extension) to falsely report a slab-out-of-bounds error. The problem occurs when zeroing out spare memory in __do_krealloc. The original code only considered software-based KASAN and did not account for MTE. It does not reset the KASAN tag before calling memset, leading to a mismatch between the pointer tag and the memory tag, resulting in a false positive. Example of the error: ================================================================== swapper/0: BUG: KASAN: slab-out-of-bounds in __memset+0x84/0x188 swapper/0: Write at addr f4ffff8005f0fdf0 by task swapper/0/1 swapper/0: Pointer tag: [f4], memory tag: [fe] swapper/0: swapper/0: CPU: 4 UID: 0 PID: 1 Comm: swapper/0 Not tainted 6.12. swapper/0: Hardware name: MT6991(ENG) (DT) swapper/0: Call trace: swapper/0: dump_backtrace+0xfc/0x17c swapper/0: show_stack+0x18/0x28 swapper/0: dump_stack_lvl+0x40/0xa0 swapper/0: print_report+0x1b8/0x71c swapper/0: kasan_report+0xec/0x14c swapper/0: __do_kernel_fault+0x60/0x29c swapper/0: do_bad_area+0x30/0xdc swapper/0: do_tag_check_fault+0x20/0x34 swapper/0: do_mem_abort+0x58/0x104 swapper/0: el1_abort+0x3c/0x5c swapper/0: el1h_64_sync_handler+0x80/0xcc swapper/0: el1h_64_sync+0x68/0x6c swapper/0: __memset+0x84/0x188 swapper/0: btf_populate_kfunc_set+0x280/0x3d8 swapper/0: __register_btf_kfunc_id_set+0x43c/0x468 swapper/0: register_btf_kfunc_id_set+0x48/0x60 swapper/0: register_nf_nat_bpf+0x1c/0x40 swapper/0: nf_nat_init+0xc0/0x128 swapper/0: do_one_initcall+0x184/0x464 swapper/0: do_initcall_level+0xdc/0x1b0 swapper/0: do_initcalls+0x70/0xc0 swapper/0: do_basic_setup+0x1c/0x28 swapper/0: kernel_init_freeable+0x144/0x1b8 swapper/0: kernel_init+0x20/0x1a8 swapper/0: ret_from_fork+0x10/0x20 ==================================================================
- https://git.kernel.org/stable/c/3dfb40da84f26dd35dd9bbaf626a2424565b8406
- https://git.kernel.org/stable/c/486aeb5f1855c75dd810c25036134961bd2a6722
- https://git.kernel.org/stable/c/704573851b51808b45dae2d62059d1d8189138a2
- https://git.kernel.org/stable/c/71548fada7ee0eb50cc6ccda82dff010c745f92c
- https://git.kernel.org/stable/c/8ebee7565effdeae6085458f8f8463363120a871
- https://git.kernel.org/stable/c/d02492863023431c31f85d570f718433c22b9311
- https://git.kernel.org/stable/c/d43f1430d47c22a0727c05b6f156ed25fecdfeb4
Modified: 2024-12-19
CVE-2024-53101
In the Linux kernel, the following vulnerability has been resolved: fs: Fix uninitialized value issue in from_kuid and from_kgid ocfs2_setattr() uses attr->ia_mode, attr->ia_uid and attr->ia_gid in a trace point even though ATTR_MODE, ATTR_UID and ATTR_GID aren't set. Initialize all fields of newattrs to avoid uninitialized variables, by checking if ATTR_MODE, ATTR_UID, ATTR_GID are initialized, otherwise 0.
- https://git.kernel.org/stable/c/15f34347481648a567db67fb473c23befb796af5
- https://git.kernel.org/stable/c/17ecb40c5cc7755a321fb6148cba5797431ee5b8
- https://git.kernel.org/stable/c/1c28bca1256aecece6e94b26b85cd07e08b0dc90
- https://git.kernel.org/stable/c/1cb5bfc5bfc651982b6203c224d49b7ddacf28bc
- https://git.kernel.org/stable/c/5a72b0d3497b818d8f000c347a7c11801eb27bfc
- https://git.kernel.org/stable/c/9db25c2b41c34963c3ccf473b08171f87670652e
- https://git.kernel.org/stable/c/a0c77e5e3dcbffc7c6080ccc89c037f0c86496cf
- https://git.kernel.org/stable/c/b3e612bd8f64ce62e731e95f635e06a2efe3c80c