p PatchFirst

PatchFirst · Latest vulnerabilities

linux-6.12 vulnerabilities · Page 141

Vulnerabilities published for linux-6.12 in the last 30 days: 483. Listed in the KEV catalogue: 0.

Filter vulnerabilities
Clear filters

Vulnerabilities: 2889

  1. CVE-2026-64287

    High · CVSS 8.2EPSS 0.18%Fix available

    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 cop

    • Update to 6.12.100-1~deb12u1
    Published Updated
  2. CVE-2026-64286

    High · CVSS 8.2EPSS 0.18%Fix available

    KVM: arm64: Clear __hyp_running_vcpu when flushing the pKVM hyp vCPU

    In the Linux kernel, the following vulnerability has been resolved: KVM: arm64: Clear __hyp_running_vcpu when flushing the pKVM hyp vCPU flush_hyp_vcpu() copies the host vCPU context into the hyp's private vCPU on every run. ctxt_to_vcpu() expects a guest context to have a NULL __hyp_running_vcpu, which is only ever set on the host context, so that it resolves the vCPU via container_of(). While this is generally the case, flush_hyp_vcpu() copies the context verbatim and does not enforce this, so a value provided by the host is dereferenced at EL2 (host -> EL2). Fix by clearing __hyp_running_vcpu after the copy.

    • Update to 6.12.100-1~deb12u1
    Published Updated
  3. CVE-2026-64284

    High · CVSS 7.1EPSS 0.13%Fix available

    KVM: x86: Ensure vendor's exit handler runs before fastpath userspace exits

    In the Linux kernel, the following vulnerability has been resolved: KVM: x86: Ensure vendor's exit handler runs before fastpath userspace exits Move the handling of fastpath userspace exits into vendor code to ensure KVM runs vendor specific operations that need to run before userspace gains control of the vCPU. E.g. for VMX (and soon to be for SVM as well), KVM needs to flush the PML buffer prior to exiting to userspace, otherwise any memory written by the final KVM_RUN might never be flagged as dirty. Note, waiting to snapshot CR0 and CR3 until svm_handle_exit() is flawed in general, as that risks consuming stale state in a fastpath han

    • Update to 6.12.100-1~deb12u1
    Published Updated
  4. CVE-2026-64280

    High · CVSS 8.8EPSS 0.17%Fix available

    fpga: dfl-afu: validate DMA mapping length in afu_dma_map_region()

    In the Linux kernel, the following vulnerability has been resolved: fpga: dfl-afu: validate DMA mapping length in afu_dma_map_region() afu_ioctl_dma_map() accepts a 64-bit length from userspace via DFL_FPGA_PORT_DMA_MAP ioctl without an upper bound check. The value is passed to afu_dma_pin_pages() where npages is derived as length >> PAGE_SHIFT and passed to pin_user_pages_fast() which takes int nr_pages, causing implicit truncation if length is very large. Validate map.length at the ioctl entry point before calling afu_dma_map_region(), rejecting values whose page count exceeds INT_MAX.

    • Update to 6.12.101-1~deb12u1
    Published Updated
  5. CVE-2026-64279

    High · CVSS 7.8EPSS 0.13%Fix available

    i2c: core: fix adapter deregistration race

    In the Linux kernel, the following vulnerability has been resolved: i2c: core: fix adapter deregistration race Adapters can be looked up by their id using i2c_get_adapter() which takes a reference to the embedded struct device. Remove the adapter from the IDR before tearing it down during deregistration (and on registration failure) to make sure its resources are not accessed after having been freed (e.g. the device name).

    • Update to 6.12.100-1~deb12u1
    Published Updated
  6. CVE-2026-64277

    High · CVSS 7.8EPSS 0.17%Fix available

    Input: synaptics-rmi4 - bound the F3A keymap to the GPIO count

    In the Linux kernel, the following vulnerability has been resolved: Input: synaptics-rmi4 - bound the F3A keymap to the GPIO count rmi_f3a_initialize() takes the GPIO count from the device query register (f3a->gpio_count = buf & RMI_F3A_GPIO_COUNT, range 0..127). rmi_f3a_map_gpios() then allocates gpio_key_map with min(gpio_count, TRACKSTICK_RANGE_END) == at most 6 entries, but rmi_f3a_attention() iterates the full gpio_count and dereferences gpio_key_map[i], and input->keycodemax is set to the full gpio_count while input->keycode points at the 6-entry allocation. A device that reports gpio_count > 6 therefore causes an out-of-bounds read

    • Update to 6.12.100-1~deb12u1
    Published Updated
  7. CVE-2026-64276

    High · CVSS 7.8EPSS 0.17%Fix available

    Input: synaptics-rmi4 - bound the F30 keymap to the GPIO/LED count

    In the Linux kernel, the following vulnerability has been resolved: Input: synaptics-rmi4 - bound the F30 keymap to the GPIO/LED count rmi_f30_map_gpios() allocates gpioled_key_map with min(gpioled_count, TRACKSTICK_RANGE_END) == at most 6 entries, but rmi_f30_attention() iterates the full f30->gpioled_count (device query register, range 0..31) and dereferences gpioled_key_map[i], and input->keycodemax is set to the full gpioled_count while input->keycode points at the 6-entry allocation. A device that reports gpioled_count > 6 with GPIO support enabled therefore causes an out-of-bounds read on the attention interrupt and out-of-bounds rea

    • Update to 6.12.100-1~deb12u1
    Published Updated
  8. CVE-2026-64275

    Medium · CVSS 5.5EPSS 0.16%Fix available

    Input: elan_i2c - prevent division by zero and arithmetic underflow

    In the Linux kernel, the following vulnerability has been resolved: Input: elan_i2c - prevent division by zero and arithmetic underflow The Elan I2C touchpad driver queries the device for its physical dimensions and trace counts to calculate the device resolution and width. However, if the device firmware or device tree provides invalid zero values for x_traces or y_traces, it results in a fatal division-by-zero exception leading to a kernel panic during device probe. Add checks to ensure these parameters are non-zero before performing the division. If invalid trace values are detected, fall back to a safe default of 1. Additionally, prev

    • Update to 6.12.100-1~deb12u1
    Published Updated
  9. CVE-2026-64274

    High · CVSS 7.8EPSS 0.17%Fix available

    Input: goodix - clamp the device-reported contact count

    In the Linux kernel, the following vulnerability has been resolved: Input: goodix - clamp the device-reported contact count goodix_ts_read_input_report() copies the number of touch points reported by the device into an on-stack buffer u8 point_data[2 + GOODIX_MAX_CONTACT_SIZE * GOODIX_MAX_CONTACTS]; which is sized for at most GOODIX_MAX_CONTACTS (10) contacts. The only runtime check bounds the per-interrupt count against ts->max_touch_num, but that value is taken verbatim from a 4-bit field of the device configuration block and is never clamped: ts->max_touch_num = ts->config[MAX_CONTACTS_LOC] & 0x0f; The nibble can be 0..15, so a mal

    • Update to 6.12.100-1~deb12u1
    Published Updated
  10. CVE-2026-64273

    High · CVSS 7.8EPSS 0.17%Fix available

    Input: iforce - bound the device-reported force-feedback effect index

    In the Linux kernel, the following vulnerability has been resolved: Input: iforce - bound the device-reported force-feedback effect index iforce_process_packet() handles a status report (packet id 0x02) by taking a force-feedback effect index straight from the device wire and using it to address the per-effect state array: i = data[1] & 0x7f; if (data[1] & 0x80) { if (!test_and_set_bit(FF_CORE_IS_PLAYED, iforce->core_effects[i].flags)) ... } else if (test_and_clear_bit(FF_CORE_IS_PLAYED, iforce->core_effects[i].flags)) { ... } The index is masked only with 0x7f, so it ranges 0..127, but core_effects[] holds

    • Update to 6.12.100-1~deb12u1
    Published Updated
  11. CVE-2026-64272

    High · CVSS 7.8EPSS 0.17%Fix available

    Input: mms114 - fix touch indexing for MMS134S and MMS136

    In the Linux kernel, the following vulnerability has been resolved: Input: mms114 - fix touch indexing for MMS134S and MMS136 The MMS134S and MMS136 touch controllers have an event size of 6 bytes rather than 8 bytes. When __mms114_read_reg() reads the touch data packet from the device into the touch buffer, the events are packed tightly at 6-byte intervals. However, the driver iterates through the events using standard C array indexing (touch[index]), where each element is sizeof(struct mms114_touch) (8 bytes) apart. As a result, any touch events beyond the first one are read from incorrect offsets and parsed improperly. Fix this by expli

    • Update to 6.12.100-1~deb12u1
    Published Updated
  12. CVE-2026-64271

    High · CVSS 7.8EPSS 0.17%Fix available

    Input: touchwin - reset the packet index on every complete packet

    In the Linux kernel, the following vulnerability has been resolved: Input: touchwin - reset the packet index on every complete packet tw_interrupt() accumulates each non-zero serial byte into a fixed three-byte buffer with a running index that is only reset once a full packet has been received *and* the device's two Y bytes agree: tw->data[tw->idx++] = data; if (tw->idx == TW_LENGTH && tw->data[1] == tw->data[2]) { ... tw->idx = 0; } The reset is gated on tw->data[1] == tw->data[2], a value the device controls. A malicious, malfunctioning or counterfeit Touchwindow peripheral can stream non-zero bytes whose 2nd and 3rd bytes diffe

    • Update to 6.12.100-1~deb12u1
    Published Updated
  13. CVE-2026-64270

    High · CVSS 7.8EPSS 0.17%Fix available

    Input: mms114 - reject an oversized device packet size

    In the Linux kernel, the following vulnerability has been resolved: Input: mms114 - reject an oversized device packet size mms114_interrupt() reads a packet of touch data from the device into a fixed-size on-stack buffer struct mms114_touch touch[MMS114_MAX_TOUCH]; which holds MMS114_MAX_TOUCH (10) events of MMS114_EVENT_SIZE (8) bytes, i.e. 80 bytes. The length of the I2C read into it is taken verbatim from the device: packet_size = mms114_read_reg(data, MMS114_PACKET_SIZE); if (packet_size <= 0) goto out; ... error = __mms114_read_reg(data, MMS114_INFORMATION, packet_size, (u8 *)touch); packet_size is a single device registe

    • Update to 6.12.100-1~deb12u1
    Published Updated
  14. CVE-2026-64269

    Critical · CVSS 9.1EPSS 0.71%Fix available

    RDMA/rtrs-srv: Bound RDMA-Write length to chunk size in rdma_write_sg

    In the Linux kernel, the following vulnerability has been resolved: RDMA/rtrs-srv: Bound RDMA-Write length to chunk size in rdma_write_sg When the server answers an RTRS READ, rdma_write_sg() builds the source scatter/gather entry for the IB_WR_RDMA_WRITE that returns data to the peer. Its length is taken directly from the wire descriptor: plist->length = le32_to_cpu(id->rd_msg->desc[0].len); rd_msg points into the chunk buffer that the remote peer filled via RDMA-WRITE-WITH-IMM (rtrs_srv_rdma_done() -> process_io_req() -> process_read()), so desc[0].len is attacker-controlled and, before this change, was only rejected when zero. The so

    • Update to 6.12.100-1~deb12u1
    Published Updated
  15. CVE-2026-64268

    Critical · CVSS 9.8EPSS 0.71%Fix available

    RDMA/siw: bound Read Response placement to the RREAD length

    In the Linux kernel, the following vulnerability has been resolved: RDMA/siw: bound Read Response placement to the RREAD length In drivers/infiniband/sw/siw/siw_qp_rx.c, siw_proc_rresp() places each inbound Read Response DDP segment at sge->laddr + wqe->processed and then accumulates wqe->processed, but it never checks the running total against the sink buffer length on continuation segments. siw_check_sge() resolves and validates the sink memory only on the first fragment (the if (!*mem) branch), and siw_rresp_check_ntoh() compares the cumulative length against wqe->bytes only on the final segment (the !frx->more_ddp_segs guard). A connec

    • Update to 6.12.100-1~deb12u1
    Published Updated
  16. CVE-2026-64266

    High · CVSS 7.8EPSS 0.13%Fix available

    fuse: re-lock request before returning from fuse_ref_folio()

    In the Linux kernel, the following vulnerability has been resolved: fuse: re-lock request before returning from fuse_ref_folio() fuse_ref_folio() unlocks the request but does not re-lock it before returning. fuse_chan_abort() can end the request and the async end callback (eg fuse_writepage_free()) can free the args while the subsequent copy chain logic after fuse_ref_folio() accesses them, leading to use-after-free issues. Fix this by locking the request in fuse_ref_folio() before returning.

    • Update to 6.12.100-1~deb12u1
    Published Updated
  17. CVE-2026-64265

    High · CVSS 7.8EPSS 0.17%Fix available

    fuse: clear intr_entry in fuse_resend and fuse_remove_pending_req

    In the Linux kernel, the following vulnerability has been resolved: fuse: clear intr_entry in fuse_resend and fuse_remove_pending_req When fuse_resend() moves a request from fpq->processing back to fiq->pending, it sets FR_PENDING and clears FR_SENT but does not remove the requests intr_entry from fiq->interrupts. If the request had FR_INTERRUPTED set from a prior signal, intr_entry remains dangling on fiq->interrupts. When the requesting task then receives a fatal signal, fuse_remove_pending_req() sees FR_PENDING=1, removes the request from fiq->pending and frees it via the refcount path, also without cleaning intr_entry. The stale intr

    • Update to 6.12.100-1~deb12u1
    Published Updated
  18. CVE-2026-64256

    Medium · CVSS 5.5EPSS 0.16%Fix available

    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.

    • Update to 6.12.100-1~deb12u1
    Published Updated
  19. CVE-2026-64241

    Medium · CVSS 5.5EPSS 0.11%Fix available

    gpio: rockchip: teardown bugs and resource leaks

    In the Linux kernel, the following vulnerability has been resolved: gpio: rockchip: teardown bugs and resource leaks Address several teardown issues and resource leaks in the driver's remove path and error handling: 1. Debounce clock reference leak: The debounce clock (bank->db_clk) is obtained using of_clk_get() which increments the clock's reference count, but clk_put() is never called. Register a devm action to cleanly release it on unbind. Note that of_clk_get(..., 1) remains necessary over devm_clk_get() because the DT binding does not define clock-names, precluding name-based lookup. 2. Unregistered chained IRQ handle

    • Update to 6.12.100-1~deb12u1
    Published Updated
  20. CVE-2026-64227

    Medium · CVSS 5.5EPSS 0.16%Fix available

    ACPI: driver: Check ACPI_COMPANION() against NULL during probe

    In the Linux kernel, the following vulnerability has been resolved: ACPI: driver: Check ACPI_COMPANION() against NULL during probe Since every platform driver can be forced to match a device that doesn't match its list of device IDs because of device_match_driver_override(), platform drivers that rely on the existence of a device's ACPI companion object should verify its presence. Accordingly, add requisite ACPI_COMPANION() or ACPI_HANDLE() checks against NULL to 13 platform drivers handling core ACPI devices. Also change the value returned by the ACPI thermal zone driver when the device's ACPI companion is not present to -ENODEV for cons

    • Update to 6.12.100-1~deb12u1
    Published Updated

Check your server

Check your installed stack and versions against the current vulnerability feeds.

Check your server →