---
id: CVE-2026-64191
title: |-
  In the Linux kernel, the following vulnerability has been resolved:

  i2c: stub: Reject I2C block transfers with invalid length

  The I2C_SMBUS_I2C_BLOCK_DATA case in stub_xfer() uses data->block[0]
  as the transfer length
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  i2c: stub: Reject I2C block transfers with invalid length

  The I2C_SMBUS_I2C_BLOCK_DATA case in stub_xfer() uses data->block[0]
  as the transfer length. The existing che…
severity: high
cvss: 7.8
cvssVector: 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H'
published: '2026-07-20'
updated: '2026-07-27'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-64191'
references:
  - url: 'https://git.kernel.org/stable/c/0526931b16e5a118d367b7bfce7d797e63f7ac69'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/1c4ffe6b4f04365485ed58d64c9bb86b46fc9037'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/21e87f336ac6303fed54a69b1d0d79a23b25c8d0'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/3fd225f3e4cd67ec8ddab1afed9da03c7c43537c'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/4bd8635f28c135a08aac6badcd7d9b5cdb34335f'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/5f4d2bd028ebb6e4c09a9d64842546022321d4a7'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/6036b5067a8199ba7a2dc7b377d4b9dd276d5f9e'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/7e9072dbd5f2f17934751873450d2c22080ead80'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: >-
      https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-64191.json
  - url: 'https://access.redhat.com/security/cve/CVE-2026-64191'
  - url: 'https://bugzilla.redhat.com/show_bug.cgi?id=2502872'
  - url: 'https://www.cve.org/CVERecord?id=CVE-2026-64191'
  - url: 'https://nvd.nist.gov/vuln/detail/CVE-2026-64191'
  - url: >-
      https://lore.kernel.org/linux-cve-announce/2026072052-CVE-2026-64191-42fe@gregkh/T
  - url: 'https://access.redhat.com/errata/RHSA-2026:59723'
  - url: 'https://access.redhat.com/errata/RHSA-2026:59821'
  - url: 'https://access.redhat.com/errata/RHSA-2026:65710'
  - url: 'https://access.redhat.com/errata/RHSA-2026:65711'
  - url: 'https://access.redhat.com/errata/RHSA-2026:65709'
  - url: 'https://access.redhat.com/errata/RHSA-2026:59737'
  - url: 'https://access.redhat.com/errata/RHSA-2026:65708'
tags:
  - nvd
  - csaf
  - vex
  - red-hat
epss: 0.00127
epssPercentile: 0.0272
ingestedAt: '2026-07-27T06:16:48.924Z'
vendor: Red Hat
product: Red Hat Enterprise Linux BaseOS (v. 9)
affected:
  - enterprise_linux 10
  - enterprise_linux 7
  - enterprise_linux 9
  - enterprise_linux_appstream_v_9
  - enterprise_linux_baseos_v_8
  - enterprise_linux_baseos_aus_v_8_4
  - enterprise_linux_baseos_eus_extension_v_8_4
  - enterprise_linux_baseos_aus_v_8_6
  - enterprise_linux_baseos_eus_extension_v_8_6
  - enterprise_linux_baseos_e4s_v_8_8
  - enterprise_linux_baseos_tus_v_8_8
  - enterprise_linux_baseos_v_9
  - enterprise_linux_crb_v_8
  - enterprise_linux_codeready_linux_builder_v_9
  - enterprise_linux_nfv_v_8
  - enterprise_linux_real_time_for_nfv_v_9
  - enterprise_linux_rt_v_8
  - enterprise_linux_real_time_v_9
patched:
  - enterprise_linux_appstream_v_9
  - enterprise_linux_baseos_v_8
  - enterprise_linux_baseos_aus_v_8_4
  - enterprise_linux_baseos_eus_extension_v_8_4
  - enterprise_linux_baseos_aus_v_8_6
  - enterprise_linux_baseos_eus_extension_v_8_6
  - enterprise_linux_baseos_e4s_v_8_8
  - enterprise_linux_baseos_tus_v_8_8
  - enterprise_linux_baseos_v_9
  - enterprise_linux_crb_v_8
  - enterprise_linux_codeready_linux_builder_v_9
  - enterprise_linux_nfv_v_8
  - enterprise_linux_real_time_for_nfv_v_9
  - enterprise_linux_rt_v_8
  - enterprise_linux_real_time_v_9
cwe:
  - CWE-787
scores:
  nvd: 7.8
  vendor: 7
---

## Overview

In the Linux kernel, the following vulnerability has been resolved:

i2c: stub: Reject I2C block transfers with invalid length

The I2C_SMBUS_I2C_BLOCK_DATA case in stub_xfer() uses data->block[0]
as the transfer length. The existing check only clamps it to avoid
overrunning the chip->words[256] register array, but does not validate
it against I2C_SMBUS_BLOCK_MAX (32), which is the limit of the union
i2c_smbus_data.block buffer (34 bytes total). The driver is a
development/test tool (CONFIG_I2C_STUB=m, not built by default)
that must be loaded with a chip_addr= parameter.

A local user with access to /dev/i2c-* can issue an I2C_SMBUS ioctl
with I2C_SMBUS_I2C_BLOCK_DATA and data->block[0] > 32, causing
stub_xfer() to read or write past the end of the union
i2c_smbus_data.block buffer:

 BUG: KASAN: stack-out-of-bounds in stub_xfer (drivers/i2c/i2c-stub.c:223)
 Read of size 1 at addr ffff88800abcfd92 by task exploit/81
 Call Trace:
  <TASK>
  stub_xfer (drivers/i2c/i2c-stub.c:223)
  __i2c_smbus_xfer (drivers/i2c/i2c-core-smbus.c:593)
  i2c_smbus_xfer (drivers/i2c/i2c-core-smbus.c:536)
  i2cdev_ioctl_smbus (drivers/i2c/i2c-dev.c:391)
  i2cdev_ioctl (drivers/i2c/i2c-dev.c:478)
  __x64_sys_ioctl (fs/ioctl.c:583)
  do_syscall_64 (arch/x86/entry/syscall_64.c:94)
  entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:130)
  </TASK>

The bug exists because i2c-stub implements .smbus_xfer directly,
bypassing the I2C_SMBUS_BLOCK_MAX validation in
i2c_smbus_xfer_emulated(). The I2C_SMBUS_BLOCK_DATA case in the same
function correctly validates against I2C_SMBUS_BLOCK_MAX, but the
I2C_SMBUS_I2C_BLOCK_DATA case does not.

Fix by rejecting transfers with data->block[0] == 0 or
data->block[0] > I2C_SMBUS_BLOCK_MAX with -EINVAL, consistent with
both the I2C_SMBUS_BLOCK_DATA case in the same function and the
I2C_SMBUS_I2C_BLOCK_DATA validation in i2c_smbus_xfer_emulated().

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.

## Vendor advisories

- **RHSA-2026:59723** · Red Hat · fixed in: Red Hat Enterprise Linux AppStream (v. 9), Red Hat Enterprise Linux BaseOS (v. 9), Red Hat Enterprise Linux CodeReady Linux Builder (v. 9), Red Hat Enterprise Linux Real Time for NFV (v. 9), Red Hat Enterprise Linux Real Time (v. 9) · released 2026-08-26 · [advisory](https://access.redhat.com/errata/RHSA-2026:59723)
- **RHSA-2026:59821** · Red Hat · fixed in: Red Hat Enterprise Linux BaseOS (v. 8), Red Hat Enterprise Linux CRB (v. 8) · released 2026-08-26 · [advisory](https://access.redhat.com/errata/RHSA-2026:59821)
- **RHSA-2026:65710** · Red Hat · fixed in: Red Hat Enterprise Linux BaseOS AUS (v.8.4), Red Hat Enterprise Linux BaseOS EUS EXTENSION (v.8.4) · released 2026-09-09 · [advisory](https://access.redhat.com/errata/RHSA-2026:65710)
- **RHSA-2026:65711** · Red Hat · fixed in: Red Hat Enterprise Linux BaseOS AUS (v.8.6), Red Hat Enterprise Linux BaseOS EUS EXTENSION (v.8.6) · released 2026-09-09 · [advisory](https://access.redhat.com/errata/RHSA-2026:65711)
- **RHSA-2026:65709** · Red Hat · fixed in: Red Hat Enterprise Linux BaseOS E4S (v.8.8), Red Hat Enterprise Linux BaseOS TUS (v.8.8) · released 2026-09-09 · [advisory](https://access.redhat.com/errata/RHSA-2026:65709)
- **RHSA-2026:59737** · Red Hat · fixed in: Red Hat Enterprise Linux NFV (v. 8), Red Hat Enterprise Linux RT (v. 8) · released 2026-08-26 · [advisory](https://access.redhat.com/errata/RHSA-2026:59737)
- **Red Hat VEX** · Important · affected: Red Hat Enterprise Linux 10, Red Hat Enterprise Linux 7, Red Hat Enterprise Linux 9 · no fix planned: Red Hat Enterprise Linux 10, Red Hat Enterprise Linux 7, Red Hat Enterprise Linux 9 · updated 2026-09-09 · [vex](https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-64191.json)
- **RHSA-2026:65708** · Red Hat · fixed in: Red Hat Enterprise Linux AppStream EUS (v.9.6), Red Hat Enterprise Linux BaseOS EUS (v.9.6), Red Hat CodeReady Linux Builder EUS (v.9.6), Red Hat Enterprise Linux Real Time for NFV EUS (v.9.6), Red Hat Enterprise Linux Real Time EUS (v.9.6) · released 2026-09-09 · [advisory](https://access.redhat.com/errata/RHSA-2026:65708)
