A vulnerability in the Linux kernel namespace handling was resolved involving the order of unhashing a dentry before detaching mounts on it. The issue allowed a race condition during unlink(), rmdir(), and rename() operations where the dentry remained hashed and visible between detach_mounts() and d_delete(), potentially exposing mount points that should have been hidden. This race window could be exploited by concurrent lookups to observe mounts that were supposed to be detached. The fix changes the order to unhash the dentry before detaching mounts, preventing lookups from seeing stale mount information.
A vulnerability in the Linux kernel's namei component allowed refwalk operations to reveal overmounted entries due to a race condition when a mountpoint was unlinked. This could cause a refwalk to expose underlying filesystem entries that should have been hidden. The issue was addressed by adding checks to detect dentries marked as unlinked during refwalk traversal, preventing exposure of detached mounts.
A vulnerability in the Linux kernel's namespace handling allowed automounts to be added below a mount that is not in the caller's mount namespace. This could lead to a kernel crash (general protection fault) due to a null pointer dereference when accessing certain filesystem layers via fanotify. The issue arises because an internal mount flag (MNT_NS_INTERNAL) was incorrectly treated as a valid mount namespace, causing unsafe operations. The flaw has been resolved by using a safer check that rejects unmounted and internal mounts, preventing the crash and restoring expected behavior.
A vulnerability in the Linux kernel related to namespace handling and locked mounts has been resolved. Locked mounts are designed to protect underlying files and directories from being revealed. The flaw allowed an unlocked ancestor mount to expire a locked mount beneath it, potentially exposing protected directories. The fix ensures that locked mounts are not expired independently but only as part of their parent mount, preventing the exposure of hidden files. Lazy unmounts still remove the entire mount tree including locked mounts. This vulnerability is addressed by changes to the expiry logic and mount locking behavior.
A vulnerability in the Linux kernel related to mount locking for automounts across user namespaces has been resolved. The issue involved improper locking of mounts when mounts are propagated across user namespaces, causing the host's mount to be locked instead of the child's copy. This could prevent the host from changing mount flags correctly. The fix ensures that the lock is applied to the mount in the namespace where the mount actually occurs, preserving correct mount flag management.
A vulnerability in the Linux kernel's XFS filesystem handling was resolved that involved improper management of reflink flags during file extent exchanges. The flaw caused reflink flags to be incorrectly transferred between files during certain extent exchange operations, potentially leading to data corruption due to writes occurring in place instead of copy-on-write. The fix stops exchanging reflink flags during these operations and ensures both inodes retain the flag as appropriate. The vulnerability affects the XFS_IOC_SWAPEXT operation as well, which was corrected by setting reflink flags on both inodes and ensuring copy-on-write forks exist. The reflink flags remain set until explicitly removed by specific operations.
A use-after-free (UaF) vulnerability in the Linux kernel's cgroup cpuset subsystem was resolved by avoiding direct access to a potentially stale pointer in the is_in_v2_mode() function. The fix introduces a new flag to safely indicate cpuset v2 mode, preventing unsafe memory access during cgroup filesystem rebind operations.
A vulnerability in the Linux kernel's gpio: exar driver was resolved by correcting the initialization order of an ID before registering its cleanup action. The issue involved improper handling of allocated IDs during failure in registering cleanup actions, potentially causing ID leaks and incorrect freeing of device IDs.
A vulnerability in the Linux kernel's drm/vc4 component involved a memory leak where the BO cache size list was not freed during teardown, leading to resource leakage on every unbind operation. This issue has been resolved by ensuring the size list is freed properly in vc4_bo_cache_destroy().
A vulnerability in the Linux kernel's net/sched subsystem was resolved that involved improper handling of unterminated algorithm names in the em_text module. The flaw allowed an out-of-bounds read and potential kernel memory disclosure when a 16-byte algorithm name without a NUL terminator was passed, causing the kernel to read adjacent memory and invoke a usermode helper with unintended data. The issue was fixed by rejecting attributes lacking a NUL terminator within the expected byte size.
A use-after-free vulnerability in the Linux kernel's AMT relay component was resolved. The issue involved queuing a packet buffer (skb) referencing a tunnel that could be freed before the packet was processed, leading to a use-after-free in amt_dev_xmit(). The fix changes the relay's General Query sending method to avoid queuing and referencing freed tunnels, removing unsafe skb control block usage. This eliminates the use-after-free condition and related kernel warnings.
A vulnerability in the Linux kernel's cxgb4 driver related to ch_ktls handling has been resolved. The issue involves improper locking when erasing entries from a shared tid_list array, which can lead to a spinlock deadlock due to softirqs not being disabled during xa_erase operations. The fix involves using xa_erase_bh() to properly disable softirqs and prevent lock contention.
A vulnerability in the Linux kernel bonding driver related to XDP program replacement has been resolved. The issue involved a program leak when the XDP program was replaced or removed, due to failure to release the reference on the old BPF program. This was detected through AI-assisted testing and will be addressed with a selftest in future kernel releases.
A vulnerability in the Linux kernel's nvmet subsystem was resolved involving improper handling of local P2P device references during metadata allocation failure. Specifically, if data allocation succeeds but metadata allocation fails, a cleanup function uses an uninitialized device pointer, potentially causing improper resource handling.
A vulnerability in the Linux kernel's Btrfs filesystem was resolved involving the replacement of extended attributes (xattrs) when multiple xattrs are packed in the same directory item. The issue occurs when replacing an xattr value with a different size, leading to an uninitialized directory item and filesystem corruption detected during extent buffer writeback. This can cause transaction aborts and loss of xattr data.
A vulnerability in the Linux kernel's mt7915 WiFi driver was resolved by properly disabling the receive NAPI (New API) when removing the device. Previously, unloading the mt7915e module with a MT7916 chipset caused multiple warnings and system instability due to the driver not disabling NAPI before destruction. This issue affected module reloads required to change frequency parameters, leading to system instability.
A vulnerability in the Linux kernel's ASoC adau1372 driver has been resolved. The issue involved the use of gpiod_set_value() which emits a WARN when used with GPIO providers that can sleep, such as I2C controlled GPIO expanders. The driver incorrectly used a non-sleep variant for powerdown GPIOs, which are manipulated in process context. The fix involved switching to the _cansleep variant, allowing the use of sleepy GPIOs to power off the chip without warnings.
A vulnerability in the Linux kernel's flow_dissector component caused incorrect computation of the transport header offset (thoff) due to 16-bit truncation of skb->len. This could lead to the transport header pointer being set incorrectly inside the Ethernet header. The issue affects handling of large skbs (socket buffers) exceeding 64KB, which are common with certain network features like GSO and BIG TCP. The vulnerability has been resolved by changing the comparison to use 32-bit integers and capping the offset when it cannot fit in 16 bits, reporting dissection failure instead of returning incorrect offsets.
A vulnerability in the Linux kernel's network stack related to the handling of Generic Segmentation Offload (GSO) packets in the __virtio_net_hdr_to_skb() function has been resolved. The issue involved improper flow dissection of GSO packets when skb->network_header was zero, leading to potential out-of-bounds reads in TCP header processing. This could occur with malformed network headers or packets carrying IP options or IPv6 extension headers. The fix involves proper initialization of skb fields and ensuring all GSO packets are fully dissected and validated.
A vulnerability in the Linux kernel's riscv ptrace implementation was resolved by zero-initializing regset buffers before copying user data. The flaw involved uninitialized stack buffer data when a PTRACE_SETREGSET request provided a short iov_len, potentially causing garbage data to be copied into the target's vstate or shadow stack pointer.