CVE-2026-80950 (GCVE-0-2026-80950)
Vulnerability from cvelistv5
Published
2026-09-11 19:42
Modified
2026-10-19 08:45
Summary
In the Linux kernel, the following vulnerability has been resolved: i3c: renesas: Check that the transfer is valid before accessing it The Renesas I3C driver uses an asynchronous model to transfer data. It prepares a struct renesas_i3c_xfer, enqueues it, and waits for completion. The interrupt handler dequeues the transfer, updates/uses it, and signals the waiting thread. If the completion times out, the waiting thread dequeues the transfer and free it. If an interrupt fires after that, the handler may access freed memory, leading to crashes. Check that the transfer is still valid before accessing it in the interrupt handler. With it clear any status flags and disable all the interrupts to avoid triggering the same interrupts again.
Impacted products
Vendor Product Version
Linux Linux Version: d028219a9f1485914492bf373406f6a0e665ace2
Version: d028219a9f1485914492bf373406f6a0e665ace2
Version: d028219a9f1485914492bf373406f6a0e665ace2
Create a notification for this product.
Show details on NVD website


{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/i3c/master/renesas-i3c.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "0093f9fc102ba8b98561fdd2f8559553ef56be59",
              "status": "affected",
              "version": "d028219a9f1485914492bf373406f6a0e665ace2",
              "versionType": "git"
            },
            {
              "lessThan": "ec631aff93261c6d031f953549802322032f2aba",
              "status": "affected",
              "version": "d028219a9f1485914492bf373406f6a0e665ace2",
              "versionType": "git"
            },
            {
              "lessThan": "5f1a76ecfe90544a28d657306c9b3caa66ba0e63",
              "status": "affected",
              "version": "d028219a9f1485914492bf373406f6a0e665ace2",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/i3c/master/renesas-i3c.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.17"
            },
            {
              "lessThan": "6.17",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.50",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.2.*",
              "status": "unaffected",
              "version": "7.2.4",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.3",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.50",
                  "versionStartIncluding": "6.17",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2.4",
                  "versionStartIncluding": "6.17",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.3",
                  "versionStartIncluding": "6.17",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ni3c: renesas: Check that the transfer is valid before accessing it\n\nThe Renesas I3C driver uses an asynchronous model to transfer data. It\nprepares a struct renesas_i3c_xfer, enqueues it, and waits for completion.\nThe interrupt handler dequeues the transfer, updates/uses it, and signals\nthe waiting thread.\n\nIf the completion times out, the waiting thread dequeues the transfer and\nfree it. If an interrupt fires after that, the handler may access freed\nmemory, leading to crashes.\n\nCheck that the transfer is still valid before accessing it in the\ninterrupt handler. With it clear any status flags and disable all\nthe interrupts to avoid triggering the same interrupts again."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 7.8,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:L - The UAF is reached from local I3C/I2C transfer paths on Renesas RZ SoCs: i2c-dev I2C_RDWR/I2C_TIMEOUT on the I3C master\u0027s I2C adapter, I3C client sysfs (IIO/hwmon) private transfers, and the master\u0027s do_daa sysfs. No network protocol delivers data into this driver.\nAC:L - A local attacker can start a transfer and force the software completion timeout (hardcoded 1s on I3C, or attacker-set via I2C_TIMEOUT including 0) so the waiter dequeues and frees the xfer while controller IRQs remain armed; the later ISR then uses the stale object, and the attacker can retry at will.\nPR:L - i2cdev_open() has no capability check; reachability depends on /dev/i2c-* DAC (commonly 0660 root:i2c on embedded and automotive boards) or unprivileged reads of I3C-backed IIO/hwmon sysfs. That is ordinary local access, not init-namespace root.\nUI:N - The attacker issues their own open/ioctl or sysfs operations against already-present I3C/I2C interfaces; no separate victim action such as plugging a device or mounting a filesystem is required.\nS:U - The use-after-free corrupts kernel heap state in the I3C master driver within the same kernel security authority and does not cross a VM, IOMMU, or sandbox boundary.\nC:H - After timeout the ISR dereferences the freed renesas_i3c_xfer (including cmds, buffers, and completion). Reclaiming that kmalloc object lets an attacker control what the IRQ path reads from kernel memory, which per UAF guidance is High confidentiality impact.\nI:H - The IRQ handlers write through the freed xfer (xfer-\u003eret, complete(\u0026xfer-\u003ecomp), FIFO copies into cmd-\u003erx_buf). A sprayed fake object can turn cmd-\u003erx_buf into an arbitrary kernel write and hijack control flow, so integrity impact is High.\nA:H - Even without exploitation, the post-timeout ISR dereferences a NULL or freed transfer pointer in hardirq context, causing a kernel oops or panic and full loss of availability."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-10-19T08:45:34.205Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/0093f9fc102ba8b98561fdd2f8559553ef56be59"
        },
        {
          "url": "https://git.kernel.org/stable/c/ec631aff93261c6d031f953549802322032f2aba"
        },
        {
          "url": "https://git.kernel.org/stable/c/5f1a76ecfe90544a28d657306c9b3caa66ba0e63"
        }
      ],
      "title": "i3c: renesas: Check that the transfer is valid before accessing it",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-80950",
    "datePublished": "2026-09-11T19:42:20.360Z",
    "dateReserved": "2026-08-26T14:34:25.804Z",
    "dateUpdated": "2026-10-19T08:45:34.205Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2"
}


Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Sightings

Author Source Type Date

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
  • Confirmed: The vulnerability is confirmed from an analyst perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
  • Patched: This vulnerability was successfully patched by the user reporting the sighting.
  • Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
  • Not confirmed: The user expresses doubt about the veracity of the vulnerability.
  • Not patched: This vulnerability was not successfully patched by the user reporting the sighting.


Loading…

Loading…