Nixpkgs security tracker

Login with GitHub
⚠️ You are using a production deployment that is still only suitable for demo purposes. Any work done in this might be wiped later without notice.

Dismissed suggestions

These automatic suggestions were dismissed after initial triaging.

to select a suggestion for revision.

View:
Compact
Detailed
Dismissed
(max. allowed matches exceeded)
created 3 weeks, 4 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
netfilter: nft_meta_bridge: fix stale stack leak via IIFHWADDR register

In the Linux kernel, the following vulnerability has been resolved: netfilter: nft_meta_bridge: fix stale stack leak via IIFHWADDR register NFT_META_BRI_IIFHWADDR declares its destination register with len = ETH_ALEN (6 bytes), which the register-init tracking rounds up to two 32-bit registers (8 bytes). nft_meta_bridge_get_eval() then does memcpy(dest, br_dev->dev_addr, ETH_ALEN), writing only 6 bytes and leaving the upper 2 bytes of the second register as uninitialised nft_do_chain() stack. A downstream load of that register span leaks those stale bytes to userspace. Zero the second register before the memcpy so the full declared span is written.

Affected products

Linux
  • <c7d573551f9286100a055ef696cde6af54549677
  • =<6.18.*
  • <07acb9798477535933bd658ac9fa85b6cb10d995
  • <6.18
  • =<7.0.*
  • <f1e81d571e375d10e50e852223593493d98c1bac
  • ==6.18
  • =<*
Dismissed
(max. allowed matches exceeded)
Permalink CVE-2026-55693
5.7 MEDIUM
  • CVSS version (CVSS): 4.0
  • Attack Vector (AV): Local (L)
  • Attack Complexity (AC): Low (L)
  • Attack Requirement (AT): None (N)
  • Privileges Required (PR): None (N)
  • User Interaction (UI): Active (A)
  • Vulnerable System Impact Confidentiality (VC): High (H)
  • Vulnerable System Impact Integrity (VI): High (H)
  • Vulnerable System Impact Availability (VA): High (H)
  • Subsequent System Impact Confidentiality (SC): None (N)
  • Subsequent System Impact Integrity (SI): None (N)
  • Subsequent System Impact Availability (SA): None (N)
  • Exploit Maturity (E): Unreported (U)
  • Modified Attack Vector (MAV): Local (L)
  • Modified Attack Complexity (MAC): Low (L)
  • Modified Attack Requirement (MAT): None (N)
  • Modified Privileges Required (MPR): None (N)
  • Modified User Interaction (MUI): Active (A)
  • Modified Vulnerable System Impact Confidentiality (MVC): High (H)
  • Modified Vulnerable System Impact Integrity (MVI): High (H)
  • Modified Vulnerable System Impact Availability (MVA): High (H)
  • Modified Subsequent System Impact Confidentiality (MSC): Negligible (N)
  • Modified Subsequent System Impact Integrity (MSI): Negligible (N)
  • Modified Subsequent System Impact Availability (MSA): Negligible (N)
  • Safety (S): Not Defined (X)
  • Automatable (AU): Not Defined (X)
  • Recovery (R): Not Defined (X)
  • Value Density (V): Not Defined (X)
  • Vulnerability Response Effort (RE): Not Defined (X)
  • Provider Urgency (U): Not Defined (X)
  • Confidentiality Req. (CR): Not Defined (X)
  • Integrity Req. (IR): Not Defined (X)
  • Availability Req. (AR): Not Defined (X)
created 3 weeks, 4 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
Vim: Out-of-bounds Write in Spell File Word Count

Vim is an open source, command line text editor. Prior to 9.2.0653, the tree_count_words() function in src/spellfile.c fills in the word-count fields of a spell-file word trie by walking it iteratively with a depth counter. The counter is bounded only by the trie structure itself; it is never checked against the size of the fixed MAXWLEN-element stack arrays it indexes (arridx[], curi[], wordcount[]). A crafted .spl/.sug file pair, loaded when the user invokes spell suggestion, can drive the descent arbitrarily deep, so the function writes past the end of those arrays. This is a stack out-of-bounds write that corrupts the call frame and crashes the editor. This vulnerability is fixed in 9.2.0653.

Affected products

vim
  • ==< 9.2.0653
Dismissed
(max. allowed matches exceeded)
created 3 weeks, 4 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
RDMA/srp: bound SRP_RSP sense copy by the received length

In the Linux kernel, the following vulnerability has been resolved: RDMA/srp: bound SRP_RSP sense copy by the received length srp_process_rsp() copies sense data from rsp->data + resp_data_len, where resp_data_len is the full 32-bit value supplied by the SRP target and is never checked against the number of bytes actually received (wc->byte_len). The copy length is bounded to SCSI_SENSE_BUFFERSIZE, so at most 96 bytes are copied, but the source offset is not bounded. A malicious or compromised SRP target on the InfiniBand/RoCE fabric that the initiator has logged into can return an SRP_RSP with SRP_RSP_FLAG_SNSVALID set and a large resp_data_len. The receive buffer is allocated at the target-chosen max_ti_iu_len, so the source of the sense copy lands past the bytes actually received; with resp_data_len near 0xFFFFFFFF it is gigabytes past the buffer and the read faults. Copy the sense data only if it has not been truncated, that is, only if the response header, the response data, and the sense region fit within the bytes actually received; otherwise drop the sense and log. The in-tree iSER and NVMe-RDMA receive paths already bound their parse by wc->byte_len; this brings ib_srp into line with them.

Affected products

Linux
  • ==2.6.15
  • =<6.18.*
  • <3523e53ff95f1837ec3f57ff7558532bcb2661b7
  • =<6.1.*
  • <f92a285db7ff6e598591ccbfb551be155c5f4d57
  • =<6.6.*
  • <0d64bc200ebe4f275b27438c6e593903e0b16fe1
  • =<5.15.*
  • =<6.12.*
  • =<7.0.*
  • <2.6.15
  • <2015038195939eac54a1ee83c9d98ef1a8ccbbce
  • <ed77cc819ad631264787cade5ae5ec4c535ec6bb
  • <3889517c2ec7f364914aea8209abfff735f7ecde
  • <0b9ee09d5e849591f17d98c078033dadea967293
  • <13e91fd076306f5d0cdfa14f53d69e37274723c4
  • =<5.10.*
  • =<*
Dismissed
(max. allowed matches exceeded)
created 3 weeks, 4 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
Bluetooth: RFCOMM: hold listener socket in rfcomm_connect_ind()

In the Linux kernel, the following vulnerability has been resolved: Bluetooth: RFCOMM: hold listener socket in rfcomm_connect_ind() rfcomm_get_sock_by_channel() scans rfcomm_sk_list under the list lock, but returns the selected listener after dropping that lock without taking a reference. rfcomm_connect_ind() then locks the listener, queues a child socket on it, and may notify it after unlocking it. The buggy scenario involves two paths, with each column showing the order within that path: rfcomm_connect_ind(): listener close: 1. Find parent in 1. close() enters rfcomm_get_sock_by_channel() rfcomm_sock_release(). 2. Drop rfcomm_sk_list.lock 2. rfcomm_sock_shutdown() without pinning parent. closes the listener. 3. Call lock_sock(parent) and 3. rfcomm_sock_kill() bt_accept_enqueue(parent, unlinks and puts parent. sk, true). 4. Read parent flags and may 4. parent can be freed. call sk_state_change(). If close wins the race, parent can be freed before rfcomm_connect_ind() reaches lock_sock(), bt_accept_enqueue(), or the deferred-setup callback. Take a reference on the listener before leaving rfcomm_sk_list.lock. After lock_sock() succeeds, recheck that it is still in BT_LISTEN before queueing a child, cache the deferred-setup bit while the parent is locked, and drop the reference after the last parent use. KASAN reported a slab-use-after-free in lock_sock_nested() from rfcomm_connect_ind(), with the freeing stack going through rfcomm_sock_kill() and rfcomm_sock_release().

Affected products

Linux
  • ==2.6.12
  • <1f73f92f66251065a5f39b09a47cf05ea14d3107
  • =<5.10.*
  • =<6.1.*
  • =<6.18.*
  • =<6.6.*
  • =<5.15.*
  • =<6.12.*
  • <b0e33e409715c617e2a20f46f99aa5403a14dfda
  • =<7.0.*
  • <de31973ef00e5aa55496f84cf6a44bb157a34e02
  • <8802413ce63175fb522a2bd609fb043a3550c720
  • <2.6.12
  • <a07d741c077d4e34b16458241a94d29039386553
  • <f5ec76bdbeb80f75ad0be204371afffee0f8fac8
  • <43c441edacf953b39517a44f5e5e10a93618b226
  • <6f4462d12133106460d7c046b95aad2491e3fddf
  • =<*
Dismissed
(max. allowed matches exceeded)
created 3 weeks, 4 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
thunderbolt: Bound root directory content to block size

In the Linux kernel, the following vulnerability has been resolved: thunderbolt: Bound root directory content to block size __tb_property_parse_dir() does not check that content_offset + content_len fits within block_len for the root directory case. When rootdir->length equals or exceeds block_len - 2, the entry loop reads past the allocated property block. Add a bounds check after computing content_offset and content_len to reject directories whose content extends past the block.

Affected products

Linux
  • =<5.10.*
  • =<6.18.*
  • =<6.1.*
  • <b212bc161d8a9937b42153723a4a3f2f74fab528
  • <60ba6217460792356a238299edd675d91d46bab4
  • =<6.6.*
  • =<5.15.*
  • =<6.12.*
  • =<7.0.*
  • ==4.15
  • <65423079c7420e3dbf9a7aa345c243a3f5752e5d
  • <5c7657d38d07268124782f03519f07c22a5814fb
  • <4.15
  • <4d0b1524caadb04c10a71f3f88692c63dcb39115
  • <1912be23daf4afc8d24ce916021ab68ca4c679db
  • <0a32040a48db8cf35de48b85d6115df5623e4964
  • <cbeb68cbaa0a6f979ef428a7f2d0268c082ba166
  • =<*
Dismissed
(max. allowed matches exceeded)
created 3 weeks, 4 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
net: phonet: free phonet_device after RCU grace period

In the Linux kernel, the following vulnerability has been resolved: net: phonet: free phonet_device after RCU grace period phonet_device_destroy() removes a phonet_device from the per-net device list with list_del_rcu(), but frees it immediately. RCU readers walking the same list can still hold a pointer to the object after it has been removed, leading to a slab-use-after-free. Use kfree_rcu(), matching the lifetime rule already used by phonet_address_del() for the same object type.

Affected products

Linux
  • =<6.18.*
  • <2.6.33
  • ==2.6.33
  • <bff309ea51f1395c1ef8be8b75ce62d28a319113
  • <52b8f5ef82c886f7cd24617915e4b1579ddfd001
  • =<7.0.*
  • <71de0177b28da751f407581a4515cf4d762f6296
  • =<*
Dismissed
(max. allowed matches exceeded)
created 3 weeks, 4 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
thunderbolt: Limit XDomain response copy to actual frame size

In the Linux kernel, the following vulnerability has been resolved: thunderbolt: Limit XDomain response copy to actual frame size tb_xdomain_copy() copies req->response_size bytes from the received packet buffer regardless of the actual frame size. When a short response arrives, this reads past the valid frame data in the DMA pool buffer into stale contents from previous transactions. Use the minimum of frame size and expected response size for the copy length.

Affected products

Linux
  • <c55da494dfb445fb28df3a9d293c2be6a299cd01
  • =<6.18.*
  • <4db2bd2ed4785dbadaeeab9f4e346b21ac5fb8eb
  • =<6.1.*
  • <a15b6d3136accb2bf84b04d9a3ddd991f7fbf1cb
  • =<6.6.*
  • =<5.15.*
  • =<6.12.*
  • =<7.0.*
  • ==4.15
  • <033dfa63bf6be2653441a1dccae4a8313a91bb9d
  • <fc261397295b8ad0654cec747b0ec25ea0011995
  • <b5daa920f44cb582272fc9bfaeb67408776cbaef
  • <4.15
  • <b2c1e5d9f1598cc1a4736d5c6bd1218f90805ee4
  • <7720654b4842bcdfeb64bc002f6186041849e1e7
  • =<5.10.*
  • =<*
Dismissed
(max. allowed matches exceeded)
created 3 weeks, 4 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
USB: serial: kl5kusb105: fix bulk-out buffer overflow

In the Linux kernel, the following vulnerability has been resolved: USB: serial: kl5kusb105: fix bulk-out buffer overflow klsi_105_prepare_write_buffer() is called by the generic write path with the bulk-out buffer and its size (bulk_out_size, 64 bytes). It stores a two-byte length header at the start of the buffer and copies the payload from the write fifo starting at buf + KLSI_HDR_LEN, but passes the full buffer size as the number of bytes to copy: count = kfifo_out_locked(&port->write_fifo, buf + KLSI_HDR_LEN, size, &port->lock); When the fifo holds at least size bytes, size bytes are copied starting two bytes into the size-byte buffer, writing KLSI_HDR_LEN bytes past its end. Copy at most size - KLSI_HDR_LEN bytes instead, leaving room for the header as safe_serial already does. Writing bulk_out_size or more bytes to the tty triggers a slab out-of-bounds write, observed with KASAN by emulating the device with dummy_hcd and raw-gadget: BUG: KASAN: slab-out-of-bounds in kfifo_copy_out+0x83/0xc0 Write of size 64 at addr ffff888112c62202 by task python3 kfifo_copy_out klsi_105_prepare_write_buffer [kl5kusb105] usb_serial_generic_write_start [usbserial] Allocated by task 139: usb_serial_probe [usbserial] The buggy address is located 2 bytes inside of allocated 64-byte region The out-of-bounds write no longer occurs with this change applied.

Affected products

Linux
  • <60af1fd82983c26604102e63a3fcc822c186cceb
  • =<5.10.*
  • <70d86e355c564b5510fde61361df014f5476c83e
  • =<6.1.*
  • =<6.18.*
  • <0a57320f71941d4e0b1307453c9a1f0939afe666
  • =<6.6.*
  • <2.6.35
  • =<5.15.*
  • =<6.12.*
  • =<7.0.*
  • <14147b7963685957839c76ba8094924e22777d79
  • <96d47e40bf9db4a9efd5c8fb53287a508d165f14
  • <a1288cd700f721c1a119c4f1e8efa234e59caada
  • <bde742b076cbe26ecc89c8c68c76ae076a524d02
  • ==2.6.35
  • <372f33ebed747d91870f57c0a2e62884a870bffa
  • =<*
Dismissed
(max. allowed matches exceeded)
created 3 weeks, 4 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
hv_netvsc: use kmap_local_page in netvsc_copy_to_send_buf

In the Linux kernel, the following vulnerability has been resolved: hv_netvsc: use kmap_local_page in netvsc_copy_to_send_buf netvsc_copy_to_send_buf() copies page buffer entries into the VMBus send buffer using phys_to_virt() on the entry PFN. Entries for the RNDIS header and the skb linear data come from kmalloc'd memory and are always in the kernel direct map, but entries for skb fragments reference page cache or user pages, which on 32-bit x86 with CONFIG_HIGHMEM=y can live above the LOWMEM boundary. For such a page phys_to_virt() returns an address outside the direct map and the subsequent memcpy() faults on the transmit softirq path, which is fatal. Map the pages with kmap_local_page() instead, handling two properties of the page buffer entries: - pb[i].pfn is a Hyper-V PFN at HV_HYP_PAGE_SIZE (4K) granularity, not a native PFN. Reconstruct the physical address first and derive the native page from it, so the mapping stays correct where PAGE_SIZE > HV_HYP_PAGE_SIZE (e.g. arm64 with 64K pages). - Since commit 41a6328b2c55 ("hv_netvsc: Preserve contiguous PFN grouping in the page buffer array"), an entry describes a full physically contiguous fragment and pb[i].len can exceed PAGE_SIZE, while kmap_local_page() maps a single page. Copy page by page, splitting at native page boundaries. The copy path only handles packets smaller than the send section size (6144 bytes by default); larger packets take the cp_partial path where only the RNDIS header is copied. So entries here are bounded by the section size and a copy is split at most once on 4K-page systems. On !CONFIG_HIGHMEM configs kmap_local_page() folds to page_address() and no mapping work is added.

Affected products

Linux
  • =<6.18.*
  • =<6.1.*
  • <09b8a7aa5a341bb345dc492aac139525efa13515
  • <a82d4251918f37d9c5aab7b365157669fb885ec3
  • =<6.6.*
  • ==3.16
  • <918c0c988239aa5ab96b254e504d191af6191061
  • <3.16
  • =<5.15.*
  • =<6.12.*
  • =<7.0.*
  • <fe7221b4346418d27ec2daccfc09df6692b76f0b
  • <0b38870d81ab3a04c1ab0598d9d3285f5d9d0584
  • <004e9ecfe6c5384f9e0b2f6f6389d42ec22789af
  • <16514afeb7d3d121072ba9a0b640d6c1c5507db0
  • <695c59cf7bf707e6ff8cea01916ee50e86616933
  • =<5.10.*
  • =<*
Dismissed
(max. allowed matches exceeded)
created 3 weeks, 4 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
net: guard timestamp cmsgs to real error queue skbs

In the Linux kernel, the following vulnerability has been resolved: net: guard timestamp cmsgs to real error queue skbs skb_is_err_queue() treats PACKET_OUTGOING as the sole marker for an skb from sk_error_queue. That assumption is not true for AF_PACKET sockets: outgoing packet taps are also delivered to packet sockets with skb->pkt_type == PACKET_OUTGOING, but their skb->cb is owned by AF_PACKET instead of struct sock_exterr_skb. If such an skb is received with timestamping enabled, the generic timestamp cmsg path can read AF_PACKET control-buffer state as sock_exterr_skb::opt_stats. With SO_RXQ_OVFL enabled, the packet drop counter overlaps opt_stats. An odd drop count makes the path emit SCM_TIMESTAMPING_OPT_STATS with skb->len and skb->data. For non-linear skbs this copies past the linear head and can trigger hardened usercopy or disclose adjacent heap contents. Keep skb_is_err_queue() local to net/socket.c, but make it verify that the PACKET_OUTGOING marker is paired with the sock_rmem_free destructor installed by sock_queue_err_skb(). AF_PACKET receive skbs use normal receive ownership and no longer pass as error-queue skbs, while legitimate sk_error_queue entries keep the PACKET_OUTGOING marker and sock_rmem_free ownership.

Affected products

Linux
  • ==cdaf15b43bd31003220cb080bcbbd57787a2fca9
  • <ad9a0374ee6d11048e1f74cd5180bad58b9848b4
  • =<6.6.*
  • <4.11
  • <24a0d548d3a765cd4558224e4f8e06e14cba26e3
  • <e0665b2a8e90bb08bd205062c75662b502d31797
  • <4.11
  • ==4.11
  • =<6.18.*
  • =<5.10.*
  • =<*
  • =<6.1.*
  • <1ee90b77b727df903033db873c75caac5c27ec98
  • <b903e9b5629ec8dd6db92174070045bf81ad7060
  • <3dde4fb941fa5649ab809f6cd3e20e0c424a4e31
  • <71ff5cdd5da61d0438e902aa0fd68c28bc901abe
  • =<5.15.*
  • =<6.12.*
  • =<7.0.*
  • <eb51a9ad3ceb01bc6c0fb608dbc856e03ee6f24a