Nixpkgs security tracker

Login with GitHub

Dismissed suggestions

These automatic suggestions were dismissed after initial triaging.

to select a suggestion for revision.

View:
Compact
Detailed
Dismissed
(no matching packages found)
Permalink CVE-2026-10818
8.1 HIGH
  • CVSS version (CVSS): 3.1
  • Attack Vector (AV): Network (N)
  • Attack Complexity (AC): High (H)
  • Privileges Required (PR): None (N)
  • User Interaction (UI): None (N)
  • Scope (S): Unchanged (U)
  • Confidentiality (C): High (H)
  • Integrity (I): High (H)
  • Availability (A): High (H)
  • Modified Attack Vector (MAV): Network (N)
  • Modified Attack Complexity (MAC): High (H)
  • Modified Privileges Required (MPR): None (N)
  • Modified User Interaction (MUI): None (N)
  • Modified Confidentiality (MC): High (H)
  • Modified Scope (MS): Unchanged (U)
  • Modified Integrity (MI): High (H)
  • Modified Availability (MA): High (H)
created 5 hours ago Activity log
  • Created & dismissed (no matching packages found) suggestion
WPForms Pro <= 1.10.1.1 - Unauthenticated Arbitrary File Write via Chunked Upload Init/Finalize Ordering

The WPForms Pro plugin for WordPress is vulnerable to Arbitrary File Upload in all versions up to, and including, 1.10.1.1 via the ajax_chunk_upload_finalize function. This is due to the file type validation occurring after chunk metadata and file contents have already been written to disk, and the assembled file not being deleted upon validation failure. This makes it possible for unauthenticated attackers to upload files that may be executable, which makes remote code execution possible.

Affected products

WPForms Pro
  • =<1.10.1.1
Dismissed
(max. allowed matches exceeded)
created 5 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
usb: misc: usbio: bound bulk IN response length to the received transfer

In the Linux kernel, the following vulnerability has been resolved: usb: misc: usbio: bound bulk IN response length to the received transfer usbio_bulk_msg() copies bpkt_len = le16_to_cpu(bpkt->len) bytes out of the bulk IN buffer (usbio->rxbuf, allocated with size usbio->rxbuf_len) into the caller's buffer. bpkt_len is fully controlled by the device and is only checked against ibuf_len; ibuf_len in turn is checked against usbio->txbuf_len, not against rxbuf_len: if ((obuf_len > (usbio->txbuf_len - sizeof(*bpkt))) || (ibuf_len > (usbio->txbuf_len - sizeof(*bpkt)))) return -EMSGSIZE; txbuf_len and rxbuf_len are taken independently from the bulk OUT and bulk IN endpoint wMaxPacketSize in usbio_probe(). A malicious or malfunctioning device that advertises a large bulk OUT endpoint and a small bulk IN endpoint (e.g. by claiming one of the quirk-free IDs such as the Lattice NX33U, 0x2ac1:0x20cb) therefore makes ibuf_len, and hence the device-supplied bpkt_len, exceed rxbuf_len. memcpy() then reads up to txbuf_len - rxbuf_len bytes past the end of the rxbuf slab object. The over-read bytes are handed back to the i2c layer and on to user space through i2c-dev, disclosing adjacent slab memory; with KASAN this is reported as a slab-out-of-bounds read. The number of bytes actually received is already known: act equals the URB actual_length and is bounded by rxbuf_len. Reject any response that claims more payload than was received, mirroring the existing "act < sizeof(*bpkt)" check just above. The control path (usbio_ctrl_msg()) is not affected: it uses a single buffer (ctrlbuf) for both directions, so its analogous copy can never leave the allocation. Found by code review. The out-of-bounds read was confirmed under AddressSanitizer with a faithful userspace model of usbio_bulk_msg()'s receive path (an rxbuf_len-sized buffer, the same act/ibuf_len/bpkt_len checks and the memcpy). A USB raw-gadget + dummy_hcd reproducer is also available.

Affected products

Linux
  • <fc1b546973c1442d5b947fcdd03581f20ecc5bd2
  • <6.18
  • =<6.18.*
  • ==6.18
  • <48394f94211cf8fe0ea8604fc441633abf90fc94
  • =<7.1.*
  • =<*
  • <8c6314489550fa81d41723a0ff33f655b5b6c7b6
Dismissed
(max. allowed matches exceeded)
created 5 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
smb: client: resolve SWN tcon from live registrations

In the Linux kernel, the following vulnerability has been resolved: smb: client: resolve SWN tcon from live registrations cifs_swn_notify() looks up a witness registration by id under cifs_swnreg_idr_mutex, drops the mutex, and then uses the registration's cached tcon pointer. That pointer is not a lifetime reference, and it is not a stable representative once cifs_get_swn_reg() lets multiple tcons for the same net/share name share one registration id. A same-share second mount can keep the cifs_swn_reg alive after the first tcon unregisters and is freed. The registration then still points at the freed first tcon, so taking tc_lock or incrementing tc_count through swnreg->tcon only moves the use-after-free earlier. Taking tc_lock while holding cifs_swnreg_idr_mutex also violates the documented CIFS lock order. Fix this by making the registration store only the stable witness identity: id, net name, share name, and notify flags. When a notify arrives, copy that identity under cifs_swnreg_idr_mutex, drop the mutex, then find and pin a live witness tcon that currently matches the net/share pair under the normal cifs_tcp_ses_lock -> tc_lock order. The notification path uses that pinned tcon directly and drops the reference when done. Registration and unregister messages now use the live tcon passed by the caller instead of a cached tcon in the registration. The final unregister send is folded into cifs_swn_unregister() while the registration is still protected by cifs_swnreg_idr_mutex. This removes the previous find/drop/reacquire raw-pointer window. The release path only removes the idr entry and frees the stable identity strings. This preserves the intended one-registration/many-tcon behavior: a registration id represents a net/share pair, and notify handling acts on a live representative selected at use time. It also preserves CLIENT_MOVE ordering for the representative tcon because the old-IP unregister is sent before cifs_swn_register() sends the new-IP register.

Affected products

Linux
  • <aa3c0cab4b28c5007ec570c63e1d6ad6943ed0fd
  • ==5.11
  • =<6.18.*
  • <945b4a4a54497db1dcb2f20ef801a84e884dac21
  • <51d18db392e5386a7bb9e816d611f14e600cca3c
  • =<6.12.*
  • <91b8a58c6ac15c7db6518f696389933282f88da7
  • =<7.1.*
  • =<6.1.*
  • =<*
  • =<6.6.*
  • <0700f946659d0ab2352ec8a9b1c6fc74b13a27d7
  • <5.11
  • <ec457f9afe5ae9538bdcd58fd4cb442b9787e183
Dismissed
(max. allowed matches exceeded)
created 5 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
KVM: arm64: Bound used_lrs when flushing the pKVM hyp vCPU

In the Linux kernel, the following vulnerability has been resolved: KVM: arm64: Bound used_lrs when flushing the pKVM hyp vCPU flush_hyp_vcpu() copies the host vGIC state into the hyp's private vCPU on every run. The vGIC list register save and restore use used_lrs as their loop bound and expect it to stay within the number of implemented list registers. While this is generally the case, flush_hyp_vcpu() copies vgic_v3 verbatim and does not enforce this, so a value provided by the host is used at EL2 to index vgic_lr[] and access ICH_LR<n>_EL2 (host -> EL2). Fix by clamping used_lrs to the number of implemented list registers after the copy, as the trusted path already does in vgic_flush_lr_state(). The number of implemented list registers is constant after init, so it is replicated once from kvm_vgic_global_state.nr_lr into hyp_gicv3_nr_lr rather than read on every entry.

Affected products

Linux
  • <c646431865f4b1a5b14067233fa27b11e05e0d46
  • ==6.2
  • <8cc8bbbfab14c22c5551d0dd19b208a44b141c76
  • =<6.18.*
  • <6.2
  • =<6.12.*
  • <9fa301d8298778dd799fa4dcf7a7f440715d146e
  • =<7.1.*
  • =<*
  • =<6.6.*
  • <7fca3fcef81c713bc82a37bf741e0f28e6d04a6f
  • <2c5e72b9fbf83fdfa724e9f1af0f418ccf8739b8
Dismissed
(max. allowed matches exceeded)
created 5 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
posix-cpu-timers: Fix pid refcount leak in do_cpu_nanosleep() error path

In the Linux kernel, the following vulnerability has been resolved: posix-cpu-timers: Fix pid refcount leak in do_cpu_nanosleep() error path In do_cpu_nanosleep(), posix_cpu_timer_create() takes a pid reference via get_pid() and stores it in timer.it.cpu.pid. If the subsequent posix_cpu_timer_set() call fails, the function returns immediately without calling posix_cpu_timer_del() to release the pid reference, causing a leak. Fix it by calling posix_cpu_timer_del() before the unlock-and-return on the error path, consistent with the other exit paths in the same function.

Affected products

Linux
  • <8a270b1258797f61b61da44f8bfd41a581b5c85b
  • =<6.18.*
  • <afed3cdc1cca133f804fcf57ff228974f424b23a
  • =<5.15.*
  • =<6.12.*
  • <e5ffc638faf5dc7d9dc85c9a95e10bf97442e0c0
  • =<7.1.*
  • <d605d00085adc3fddf67de01dc2a44aebf1a3fb5
  • <eb4cec29a78334d09bcfb41c0660cdd62ba05843
  • <8f06363446c5d043c9a7c008b250040e9de98cf9
  • <87bd2ad568e15b90d5f7d4bcd70342d05dad649c
  • =<*
  • <2.6.12
  • ==2.6.12
  • <7776f9226e99eb49d97492b0b445027cfcb189da
  • =<6.1.*
  • =<6.6.*
  • =<5.10.*
Dismissed
(max. allowed matches exceeded)
created 5 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
xfs: don't wrap around quota ids in dqiterate

In the Linux kernel, the following vulnerability has been resolved: xfs: don't wrap around quota ids in dqiterate LOLLM noticed that q_id is an unsigned 32-bit variable. If it happens to be set to XFS_DQ_ID_MAX due to a filesystem that actually has a dquot for ID_MAX, then this addition will truncate to zero and the iteration starts over. Fix this by casting to u64.

Affected products

Linux
  • <2b14fe1e0924c6b901f4256456342569c5397abe
  • <6.8
  • =<6.18.*
  • <d766e4e5e85d829629c3ba503802fe1303d7b591
  • =<6.12.*
  • =<7.1.*
  • <249e311c2ba392ceaf9ebfc145a46922946f069a
  • <d1c4c40599c376aeb0c93068a2ae344e79ee4b90
  • ==6.8
  • =<*
Dismissed
(max. allowed matches exceeded)
created 5 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
tcp: Fix out-of-bounds access for twsk in tcp_ao_established_key().

In the Linux kernel, the following vulnerability has been resolved: tcp: Fix out-of-bounds access for twsk in tcp_ao_established_key(). lockdep_sock_is_held() was added in tcp_ao_established_key() by the cited commit. It can be called from tcp_v[46]_timewait_ack() with twsk. Since it does not have sk->sk_lock, the lockdep annotation results in out-of-bound access. $ pahole -C tcp_timewait_sock vmlinux | grep size /* size: 288, cachelines: 5, members: 8 */ $ pahole -C sock vmlinux | grep sk_lock socket_lock_t sk_lock; /* 440 192 */ Let's not use lockdep_sock_is_held() for TCP_TIME_WAIT.

Affected products

Linux
  • <03cb001ef87b3f8d859cf7f96329acf3d6235d29
  • <87bb3e719042f0030a6dad39118c6a6b2a491ad9
  • =<6.18.*
  • <6.13
  • =<7.0.*
  • =<6.12.*
  • <29cf64d128c94cf98d1c69d8b2962d39db5ff4c6
  • <6.12.92
  • <510db031ba6eb40134f84c90ef963ea4b6dfb878
  • =<*
  • ==6.13
Dismissed
(max. allowed matches exceeded)
created 5 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
usb: cdnsp: fix stream context array leak in cdnsp_alloc_stream_info()

In the Linux kernel, the following vulnerability has been resolved: usb: cdnsp: fix stream context array leak in cdnsp_alloc_stream_info() cdnsp_alloc_stream_info() allocates stream_info->stream_ctx_array with cdnsp_alloc_stream_ctx(). If a later stream ring allocation or stream mapping update fails, the error path frees the allocated stream rings and stream_rings array, but leaves stream_ctx_array allocated. Free the stream context array before falling through to the stream_rings cleanup path.

Affected products

Linux
  • ==5.12
  • <963075c4da0cd43b3d17b107c355e1eb0ee64a58
  • <5.12
  • <d9643bbe93a6aee24edee1a86e0303aa74bcd320
  • =<6.18.*
  • <3348f444a4ce43dd5c2d1aa41634cb6eff33aa64
  • =<5.15.*
  • =<6.12.*
  • <c00826e87bb75e14e0381b05da5f18ffd0241ab6
  • =<7.1.*
  • =<6.1.*
  • =<*
  • =<6.6.*
  • <37283f5a47127fbdea567749a2110766af53d18d
  • <cb8e9391b7f4f77d112c51910cd7c355a337ef76
  • <fde3c095e1d48e0ac3ab8bc32905da42fe58a36a
Dismissed
(max. allowed matches exceeded)
created 5 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
crypto: ecc - Fix carry overflow in vli multiplication

In the Linux kernel, the following vulnerability has been resolved: crypto: ecc - Fix carry overflow in vli multiplication The carry flag calculation fails when r01.m_high is saturated (0xFFFFFFFFFFFFFFFF) and addition of lower bits overflows. The condition (r01.m_high < product.m_high) doesn't handle the case where r01.m_high == product.m_high and an additional carry exists from lower-bit overflow. When commit 3c4b23901a0c ("crypto: ecdh - Add ECDH software support") introduced crypto/ecc.c, it split the muladd() function in the micro-ecc library into separate mul_64_64() and add_128_128() helpers. It seems the check got lost in translation. Add proper handling for this boundary by accounting for the carry from the lower addition.

Affected products

Linux
  • <5275e0fca256d081e2e7d4ba3dd8216c6e50d44e
  • <774ddddf5eb26eeca177350413e3e2bc50930ee9
  • <d11b2bb99bec1f5557c01cac42231e23745f49b8
  • =<6.18.*
  • =<6.12.*
  • <ebaae7c4251cc0cdb2602f334d4f08a3e82d271e
  • =<7.1.*
  • =<6.1.*
  • <27b536a2ec8e2f85a0380c2d13c9ecbc7aaab406
  • <677450e5ef850c4d28b7956aa01104548c2a894e
  • =<6.6.*
  • ==4.8
  • =<5.15.*
  • =<*
  • <24a54dfa06d09813b4802a374fad3d2c0e16a884
  • <b709e0e768766abe29a49e1c1922a1604be602f4
  • =<5.10.*
  • <4.8
Dismissed
(max. allowed matches exceeded)
created 5 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
regulator: scmi: fix of_node refcount leak in scmi_regulator_probe()

In the Linux kernel, the following vulnerability has been resolved: regulator: scmi: fix of_node refcount leak in scmi_regulator_probe() scmi_regulator_probe() calls of_find_node_by_name() which takes a reference on the returned device node. On the error path where process_scmi_regulator_of_node() fails, the function returns without calling of_node_put() on the child node, leaking the reference. Add of_node_put(np) on the error path to properly release the reference.

Affected products

Linux
  • <a935b64548fcfe1d5b4dbdd31dddfb0d7019367f
  • ==5.11
  • =<6.18.*
  • <22cb337370e6539b0418832c6040e9b00c1b74ca
  • <1e446e8f8c763be3de7d0362e024cdf46194ffef
  • <e2baf8ea13fb4b10bec2c4751aea05c00dabcd0f
  • =<6.12.*
  • =<7.1.*
  • <3e1441a4d06d35a314961e40057bd1f0106bbc14
  • =<6.1.*
  • =<*
  • <fa11039d6cdff84584a3ef8cc1f5e1b56e045da2
  • =<6.6.*
  • =<5.15.*
  • <637c11e3d8d43a7ee654591cda8d17c55a9234fa
  • <5.11