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, 3 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
wifi: rtw89: fix wrong pci_get_drvdata type in AER handlers

In the Linux kernel, the following vulnerability has been resolved: wifi: rtw89: fix wrong pci_get_drvdata type in AER handlers rtw89 stores an ieee80211_hw pointer via pci_set_drvdata() at probe time, but io_error_detected() and io_resume() retrieve it as a net_device pointer. This causes netif_device_detach/attach to operate on an ieee80211_hw struct, reading and writing at wrong offsets. The adjacent io_slot_reset() already does it correctly. Use ieee80211_stop_queues/wake_queues instead, consistent with every other queue stop/start path in the driver. Tested on RTL8852CE by calling the handlers from a test module before and after the fix.

Affected products

Linux
  • <aefc30e4a829c1683f6ae999df7f9310c27eae6c
  • <7068c379cf9aa8afe4dce4d9d82390187aa9c4d0
  • <6.17
  • ==6.17
  • <c1907b9a4fa9cb33d11a9af138374dd2e93f7a93
  • =<*
  • =<6.18.*
  • =<7.1.*
Dismissed
(max. allowed matches exceeded)
created 3 weeks, 3 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
can: bcm: fix CAN frame rx/tx statistics

In the Linux kernel, the following vulnerability has been resolved: can: bcm: fix CAN frame rx/tx statistics KCSAN detected a data race within the bcm_rx_handler() when two CAN frames have been simultaneously received and processed in a single rx op by two different CPUs. Use atomic operations with (signed) long data types to access the statistics in the hot path to fix the KCSAN complaint. Additionally simplify the update and check of statistics overflow by using the atomic operations in separate bcm_update_[rx|tx]_stats() functions. The rx variant runs under bcm_rx_update_lock to prevent races when resetting the two rx counters; the tx variant runs under bcm_tx_lock and only needs to guard its own counter's overflow. As the rx path resets its values already at LONG_MAX / 100, there is no conflict between the two locking domains (bcm_rx_update_lock vs. bcm_tx_lock) even for ops that use both paths. The rx statistics update and the frames_filtered update in bcm_rx_changed() were previously performed in two separate bcm_rx_update_lock sections. For an rx op subscribed on all interfaces (ifindex == 0), bcm_rx_handler() can run concurrently on different CPUs, so a counter reset by one CPU between these two sections could leave frames_filtered larger than frames_abs on another CPU, producing a bogus (even negative) reduction percentage in procfs. Update the statistics in the same critical section as bcm_rx_changed() to close this gap, which also removes the now unneeded extra lock/unlock pair around the traffic_flags calculation.

Affected products

Linux
  • ==2.6.25
  • <970caff5c1a63702c80e08d920256bcb5f88ecc5
  • <2.6.25
  • =<6.6.*
  • =<*
  • <e6c24ba95fc3f1b5e1dcd28b1c6e59ef61a9daa5
  • <8b2783172d92edd650de6006ebd1c800937021ab
  • <df47f07cdc801a6afe05a486b5a343c3e532a93c
  • <8104bcdb2612fdda95169ddc3b49747b2ff98d24
  • =<6.12.*
  • =<6.18.*
  • =<7.1.*
Dismissed
(no matching packages found)
Permalink CVE-2026-19474
7.5 HIGH
  • CVSS version (CVSS): 3.1
  • Attack Vector (AV): Network (N)
  • Attack Complexity (AC): Low (L)
  • Privileges Required (PR): None (N)
  • User Interaction (UI): None (N)
  • Scope (S): Unchanged (U)
  • Confidentiality (C): None (N)
  • Integrity (I): None (N)
  • Availability (A): High (H)
  • Modified Attack Vector (MAV): Network (N)
  • Modified Attack Complexity (MAC): Low (L)
  • Modified Privileges Required (MPR): None (N)
  • Modified User Interaction (MUI): None (N)
  • Modified Confidentiality (MC): None (N)
  • Modified Scope (MS): Unchanged (U)
  • Modified Integrity (MI): None (N)
  • Modified Availability (MA): High (H)
created 3 weeks, 3 days ago Activity log
  • Created & dismissed (no matching packages found) suggestion
@fastify/multipart vulnerable to Denial of Service via temporary file leak on aborted upload

@fastify/multipart is a multipart form-data parser for Fastify. In versions from 3.0.0 up to but not including 10.1.1, request.saveRequestFiles() can leave completed temporary files on disk when a client disconnects while the parser is advancing between multipart parts. The iterator rejection that occurs between parts falls outside the per-file cleanup path, so an earlier completed file is never removed. An unauthenticated client can repeat this to cause persistent, linear disk consumption, leading to denial of service. This is an incomplete-fix variant of CVE-2025-24033. The issue is fixed in @fastify/multipart 10.1.1. Users should upgrade to 10.1.1.

Affected products

@fastify/multipart
  • <10.1.1
  • ==10.1.1
Dismissed
(max. allowed matches exceeded)
created 3 weeks, 3 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
bpf: Preserve pointer spill metadata during half-slot cleanup

In the Linux kernel, the following vulnerability has been resolved: bpf: Preserve pointer spill metadata during half-slot cleanup __clean_func_state() cleans dead stack slots in 4-byte halves. When the high half of a STACK_SPILL slot is dead and the low half remains live, cleanup converts the live low half to STACK_MISC or STACK_ZERO and clears the saved spilled_ptr metadata. That conversion is safe only for scalar spills. For a pointer spill, this metadata clear lets a later 32-bit fill from the still-live half avoid the normal non-scalar register-fill check and be treated as an ordinary scalar stack read. Leave non-scalar spill slots intact in this half-live shape. This is conservative for pruning and preserves the existing check_stack_read_fixed_off() rejection path for partial fills from pointer spills.

Affected products

Linux
  • =<*
  • <3a354149bceacadbcf7d7b4766f5ef26a85892ab
  • <7.1
  • =<7.1.*
  • ==7.1
  • <0f9278b22cda6fd2525049930157b79b4036b4ef
Dismissed
(max. allowed matches exceeded)
created 3 weeks, 3 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
sctp: add INIT verification after cookie unpacking

In the Linux kernel, the following vulnerability has been resolved: sctp: add INIT verification after cookie unpacking In SCTP handshake, the INIT chunk is initially processed by the server and embedded into the cookie carried in INIT-ACK. The client then returns this cookie via COOKIE-ECHO, where the server unpacks it and reconstructs the original INIT chunk. When cookie authentication is enabled, the cookie contents are protected against tampering, so reusing the unpacked INIT without re-verification is safe. However, when cookie authentication is disabled, the reconstructed INIT can no longer be trusted. In this case, the INIT must be explicitly validated after unpacking to avoid processing potentially tampered data. Add sctp_verify_init() checks after cookie unpacking in COOKIE-ECHO processing paths (sctp_sf_do_5_1D_ce() and sctp_sf_do_5_2_4_dupcook()) when cookie_auth_enable is disabled. On failure, the new association is freed and the packet is discarded. Also tighten cookie validation in sctp_unpack_cookie() by verifying the embedded chunk type is SCTP_CID_INIT before treating it as an INIT chunk. Finally, update sctp_verify_init() to validate parameter bounds using the actual embedded INIT length instead of chunk->chunk_end, since the INIT stored in COOKIE-ECHO may not span the entire chunk buffer.

Affected products

Linux
  • <414c5447fe6a200613dd46d7fdc8454622076cb1
  • ==2.6.12
  • =<*
  • =<6.18.*
  • <bca3100f550281c2f2418652338bced3b35af0e6
  • <2.6.12
  • =<7.1.*
  • <062bcbf8d1f1051fdeb20b94920031b0e2cb95a2
Dismissed
(max. allowed matches exceeded)
created 3 weeks, 3 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
can: bcm: add locking when updating filter and timer values

In the Linux kernel, the following vulnerability has been resolved: can: bcm: add locking when updating filter and timer values KCSAN detected a simultaneous access to timer values that can be overwritten in bcm_rx_setup() when updating timer and filter content while bcm_rx_handler(), bcm_rx_timeout_handler() or bcm_rx_thr_handler() run concurrently on incoming CAN traffic. Protect the timer (ival1/ival2/kt_ival1/kt_ival2/kt_lastmsg) and filter (nframes/flags/frames/last_frames) updates in bcm_rx_setup() with a new per-op bcm_rx_update_lock, taken with the matching scope in the RX handlers. memcpy_from_msg() is staged into a temporary buffer before the lock is taken, since it can sleep and must not run under a spinlock. hrtimer_cancel() is always called without bcm_rx_update_lock held, since bcm_rx_timeout_handler()/bcm_rx_thr_handler() take the same lock and a running callback would otherwise deadlock against the canceller. Also close a related race: bcm_rx_setup() cleared the RTR flag in the stored reply frame's can_id as a separate, unprotected step after the frame content was already installed, so a concurrent bcm_rx_handler() could transmit a stale reply with CAN_RTR_FLAG still set. Fold that normalization into the initial frame preparation instead (on the staged buffer for updates, directly on op->frames pre-registration for new ops), so the installed frame is always atomically self-consistent. bcm_rx_handler()'s RX_RTR_FRAME check now takes a lock-protected snapshot of op->flags before deciding whether to call bcm_can_tx(), but does not hold the lock across that call. Also take a lock-protected snapshot of the currframe in bcm_can_tx() to avoid partly overwrites by content updates in bcm_tx_setup(). Finally check if a TX_RESET_MULTI_IDX/SETTIMER might have reset op->currframe between the two locked sections in bcm_can_tx(). Omit calling hrtimer_forward() with zero interval in bcm_rx_thr_handler(). kt_ival2 may have been concurrently cleared by bcm_rx_setup() before it cancels this timer, so check kt_ival2 inside the bcm_rx_update_lock.

Affected products

Linux
  • =<6.6.*
  • =<*
  • <749179c2e25b95d22499ed29096b3e02d6dfd2b4
  • <6.15
  • <834cbca3b12e46887f7a9b35f1981a888360ea4c
  • =<7.1.*
  • ==7595de7bc56e0e52b74e56c90f7e247bf626d628
  • <6.12.101
  • <6.2
  • =<6.18.*
  • ==2a437b86ac5a9893c902f30ef66815bf13587bf6
  • ==8f1c022541bf5a923c8d6fa483112c15250f30a4
  • ==c4e8a172501e677ebd8ea9d9161d97dc4df56fbd
  • <5.11
  • <fc9f5ee1b073bd233d9c604e338af4ebb42cbc33
  • <6.15
  • =<6.12.*
  • <5.16
  • <a7eb6db1cd3f7b556a301dc1265945ad112089f7
  • ==6.15
  • ==fbd8fdc2b218e979cfe422b139b8f74c12419d1f
  • <6.6.148
  • <5.5
  • <19b1994069dd29478ba767de1f98f14a088198dc
Dismissed
(max. allowed matches exceeded)
created 3 weeks, 3 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
dlm: fix add msg handle in send_queue ordered

In the Linux kernel, the following vulnerability has been resolved: dlm: fix add msg handle in send_queue ordered In a benchmark scenario triggering a lot of requests that triggers a lot of DLM messages on the network it can be that the mh->seq is not ordered according the oldest seq number. This ordering is required by dlm_receive_ack as "before(mh->seq, seq)" will stop to check for older sequence numbers that are ordered in the tail of "node->send_queue". The side effects of not having it correct ordered regarding "before(mh->seq, seq)" are refcounting issues and use-after free. I only was able to reproduce this issue in a experimental DLM branch and a user space DLM benchmark that uses io_uring. After changing this I don't experienced any refcounting with the sending buffer issues anymore.

Affected products

Linux
  • =<6.6.*
  • =<*
  • <ae9e534e502a0f48c12baf83608c5de0ff0eab11
  • <d2248cb70c070f8f04762872772e155b59016f17
  • <4d45250b1d22960f86d83245be188b16e456218b
  • <6369619f1b665f12d8c99cc6ff733c64eb08b22e
  • <712714f818d83373847874ab0f8e426be79296cf
  • ==5.14
  • =<6.12.*
  • =<6.18.*
  • =<7.1.*
  • <5.14
Dismissed
(max. allowed matches exceeded)
created 3 weeks, 3 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
RDMA/srpt: fix integer overflow in immediate data length check

In the Linux kernel, the following vulnerability has been resolved: RDMA/srpt: fix integer overflow in immediate data length check imm_buf->len is a user-controlled uint32_t received from the network. Adding it to imm_data_offset without overflow checking allows a malicious initiator to send len=0xFFFFFFFF, causing req_size to wrap around to a small value, bypassing the bounds check, and subsequently passing a ~4GB length to sg_init_one(). Use check_add_overflow() to detect wrapping before the comparison.

Affected products

Linux
  • =<5.10.*
  • <07dec3f6dcb6c6cc891162d252b800eb0e6d5e8e
  • <72497172a4799119a0282a5eb5e2b8ddcc821921
  • =<6.6.*
  • =<*
  • ==5.0
  • <65572fbd86033ae2370125593d59b8be34253aaf
  • <c82c860f8c8e4f4f454c9f14d0ad0c0466965f7d
  • <eb4ecdf631fe00e8020bf461503cb9b7017ed796
  • <dcf7a986f377cce0749ed53f1d64195fbd5fdf91
  • <5.0
  • =<6.18.*
  • =<6.12.*
  • <067b9556eeb007f28b7c2033b4dcde5b6d88418f
  • =<7.1.*
  • =<5.15.*
  • =<6.1.*
  • <3efa5301137140a3ca3677a9098c0a93a0acfd49
Dismissed
(max. allowed matches exceeded)
created 3 weeks, 3 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
dm-verity: fix buffer overflow in FEC calculation

In the Linux kernel, the following vulnerability has been resolved: dm-verity: fix buffer overflow in FEC calculation There's a buffer overflow in dm-verity-fec: if (neras && *neras <= v->fec->roots) fio->erasures[(*neras)++] = i; This allows *neras to reach roots + 1 (the post-increment pushes it past roots). This value is then passed as no_eras to decode_rs8(). Inside the RS decoder (lib/reed_solomon/decode_rs.c:113-121), the erasure locator polynomial loop writes lambda[j] where j can reach nroots + 1 — one element past the end of lambda[] (which is sized nroots + 1, valid indices 0..nroots). The out-of-bounds write lands on syn[0], corrupting the syndrome buffer.

Affected products

Linux
  • <f7990c2b0f08b8841fcd2652d1d7002f5994a7a7
  • =<*
  • <5488d3a69d205e28f74f18857b853aa12e778e66
  • <4.5
  • =<6.18.*
  • =<7.1.*
  • <31d6e6c0ba8d5a7bd59660035a089307100c5e8e
  • ==4.5
Dismissed
(max. allowed matches exceeded)
created 3 weeks, 3 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
fs/ntfs3: add bounds check to run_get_highest_vcn()

In the Linux kernel, the following vulnerability has been resolved: fs/ntfs3: add bounds check to run_get_highest_vcn() run_get_highest_vcn() parses a packed NTFS mapping-pairs buffer without any length bound, relying solely on a 0x00 terminator to stop. A crafted $LogFile UpdateMappingPairs record whose embedded attribute contains mapping-pairs runs without a terminator causes the function to read past the slab allocation, triggering a KASAN slab-out-of-bounds read on mount. The sibling function run_unpack() received an analogous bounds-check in commit b62567bca474 ("ntfs3: add buffer boundary checks to run_unpack()"), but run_get_highest_vcn() was missed. Take a run_buf_size parameter and reject any run header whose payload would extend past the buffer end, mirroring the pattern used by run_unpack(). The caller in fslog.c passes the remaining attribute bytes after the mapping-pairs offset. KASAN report (on mainline v7.1 merge window HEAD): BUG: KASAN: slab-out-of-bounds in run_get_highest_vcn+0x3c0/0x410 Read of size 1 at addr ffff88800e2d5400 by task mount/72 Call Trace: run_get_highest_vcn+0x3c0/0x410 do_action.isra.0+0x3ba8/0x7b50 log_replay+0x9ddd/0x10200 ntfs_loadlog_and_replay+0x4ad/0x610 ntfs_fill_super+0x214a/0x4540

Affected products

Linux
  • =<6.6.*
  • <7.1
  • =<*
  • =<7.1.*
  • <6.1.178
  • <8afc24a884aff6a6f08028bd779ee65c40054455
  • =<6.18.*
  • ==7.1
  • <bb11485a87fbb2254b62cfed630b699d50e57da8
  • <6.6.145
  • =<6.1.*
  • <7.1
  • <6.12.97
  • ==bbad75336870b51b81979b97613746237fcb02fe
  • =<6.12.*
  • <5.16
  • <41081202eb823f5b27ff164b12010b24428100ad
  • <c23083b472a720c3f60b147db05b25b751c7c1bf
  • ==41aadf5cb482793a24e05aa136224e179a778586
  • <c69b9003332917b652175d5fa9d84158c5ed8617
  • <6.18.40
  • <a31893206588374d7d16fad387189d8165c7efd3