GCVE Workshop - 22 September 2026 (14:00-18:00), Luxembourg Before The Vulnopticon Conference - Registration

CVE-2026-43352 (GCVE-0-2026-43352)

Vulnerability from cvelistv5 – Published: 2026-05-08 14:21 – Updated: 2026-08-05 12:27
VLAI
Title
i3c: mipi-i3c-hci: Correct RING_CTRL_ABORT handling in DMA dequeue
Summary
In the Linux kernel, the following vulnerability has been resolved: i3c: mipi-i3c-hci: Correct RING_CTRL_ABORT handling in DMA dequeue The logic used to abort the DMA ring contains several flaws: 1. The driver unconditionally issues a ring abort even when the ring has already stopped. 2. The completion used to wait for abort completion is never re-initialized, resulting in incorrect wait behavior. 3. The abort sequence unintentionally clears RING_CTRL_ENABLE, which resets hardware ring pointers and disrupts the controller state. 4. If the ring is already stopped, the abort operation should be considered successful without attempting further action. Fix the abort handling by checking whether the ring is running before issuing an abort, re-initializing the completion when needed, ensuring that RING_CTRL_ENABLE remains asserted during abort, and treating an already stopped ring as a successful condition.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: 9ad9a52cce2828d932ae9495181e3d6414f72c07 , < 003df94bcc9227e8e930abd03ac7f63ac10033dc (git)
Affected: 9ad9a52cce2828d932ae9495181e3d6414f72c07 , < 5549611888f5ca2db5e8e692b57f30626ddf9898 (git)
Affected: 9ad9a52cce2828d932ae9495181e3d6414f72c07 , < b795e68bf3073d67bebbb5a44d93f49efc5b8cc7 (git)
guessed Create a notification for this product.
Linux Linux Affected: 5.11
Unaffected: 0 , < 5.11 (semver)
Unaffected: 6.18.19 , ≤ 6.18.* (semver)
Unaffected: 6.19.9 , ≤ 6.19.* (semver)
Unaffected: 7.0 , ≤ * (original_commit_for_fix)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/i3c/master/mipi-i3c-hci/dma.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "003df94bcc9227e8e930abd03ac7f63ac10033dc",
              "status": "affected",
              "version": "9ad9a52cce2828d932ae9495181e3d6414f72c07",
              "versionType": "git"
            },
            {
              "lessThan": "5549611888f5ca2db5e8e692b57f30626ddf9898",
              "status": "affected",
              "version": "9ad9a52cce2828d932ae9495181e3d6414f72c07",
              "versionType": "git"
            },
            {
              "lessThan": "b795e68bf3073d67bebbb5a44d93f49efc5b8cc7",
              "status": "affected",
              "version": "9ad9a52cce2828d932ae9495181e3d6414f72c07",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/i3c/master/mipi-i3c-hci/dma.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "5.11"
            },
            {
              "lessThan": "5.11",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.19",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.19.*",
              "status": "unaffected",
              "version": "6.19.9",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.0",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.19",
                  "versionStartIncluding": "5.11",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.19.9",
                  "versionStartIncluding": "5.11",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.0",
                  "versionStartIncluding": "5.11",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ni3c: mipi-i3c-hci: Correct RING_CTRL_ABORT handling in DMA dequeue\n\nThe logic used to abort the DMA ring contains several flaws:\n\n 1. The driver unconditionally issues a ring abort even when the ring has\n    already stopped.\n 2. The completion used to wait for abort completion is never\n    re-initialized, resulting in incorrect wait behavior.\n 3. The abort sequence unintentionally clears RING_CTRL_ENABLE, which\n    resets hardware ring pointers and disrupts the controller state.\n 4. If the ring is already stopped, the abort operation should be\n    considered successful without attempting further action.\n\nFix the abort handling by checking whether the ring is running before\nissuing an abort, re-initializing the completion when needed, ensuring that\nRING_CTRL_ENABLE remains asserted during abort, and treating an already\nstopped ring as a successful condition."
        }
      ],
      "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 vulnerable DMA dequeue path is reached through local I3C/I2C transfer paths on a system with MIPI I3C HCI hardware, including kernel I3C client drivers and the i2c-dev ioctl path. It is not reachable through network packets or a remotely exposed protocol.\nAC:L - A local attacker who can initiate transfers can force timeout/error handling, for example by setting aggressive I2C adapter timeouts and issuing transfers, causing the dequeue abort path to run. The trigger does not depend on an uncontrollable race or rare memory layout.\nPR:L - The practical attacker needs local access to an exposed I2C/I3C transfer interface or low-privilege access to driver operations that initiate I3C transfers. No init-namespace root-only capability gate or user-namespace-mediated privilege path is required for the core vulnerable path.\nUI:N - Once the attacker has local access to the relevant transfer interface, exploitation does not require another user to perform an action. The attacker can repeatedly issue the triggering transfers themselves.\nS:U - The vulnerability corrupts or disrupts kernel/controller state within the same host security authority. It does not constitute a VM escape or a demonstrated IOMMU/security-scope bypass.\nC:H - The faulty abort handling can fail to stop DMA correctly and can unmap/free transfer buffers while hardware may still be writing, creating a plausible kernel memory corruption primitive. Under the required higher-severity rule, this is scored as potentially enabling high-impact information disclosure.\nI:H - Incorrectly aborting and restarting the DMA ring can leave hardware DMA active against stale or reused memory and corrupt kernel data structures. Such DMA-after-unmap memory corruption is defensibly treated as high integrity impact because it may be shaped into arbitrary kernel memory modification or control-flow compromise.\nA:H - The bug can disrupt the controller state, trigger WARN_ON paths, hang transfers, and plausibly corrupt kernel memory through continued DMA after a failed abort. This supports high availability impact due to kernel crash, hang, or persistent device failure."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-05T12:27:26.003Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/003df94bcc9227e8e930abd03ac7f63ac10033dc"
        },
        {
          "url": "https://git.kernel.org/stable/c/5549611888f5ca2db5e8e692b57f30626ddf9898"
        },
        {
          "url": "https://git.kernel.org/stable/c/b795e68bf3073d67bebbb5a44d93f49efc5b8cc7"
        }
      ],
      "title": "i3c: mipi-i3c-hci: Correct RING_CTRL_ABORT handling in DMA dequeue",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-43352",
    "datePublished": "2026-05-08T14:21:09.552Z",
    "dateReserved": "2026-05-01T14:12:56.004Z",
    "dateUpdated": "2026-08-05T12:27:26.003Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-43352",
      "date": "2026-09-13",
      "epss": "0.00128",
      "percentile": "0.0274"
    },
    "microsoft_vex": {
      "current_release_date": "2026-05-19T01:49:21.000Z",
      "cve": "CVE-2026-43352",
      "id": "msrc_CVE-2026-43352",
      "initial_release_date": "2026-05-02T00:00:00.000Z",
      "product_status:known_affected": "2",
      "product_status:known_not_affected": "1",
      "source": "Microsoft CSAF VEX",
      "status": "final",
      "title": "i3c: mipi-i3c-hci: Correct RING_CTRL_ABORT handling in DMA dequeue",
      "url": "https://msrc.microsoft.com/csaf/vex/2026/msrc_cve-2026-43352.json",
      "version": "4"
    },
    "nvd": "{\"cve\":{\"id\":\"CVE-2026-43352\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2026-05-08T15:16:45.937\",\"lastModified\":\"2026-06-17T10:49:26.233\",\"vulnStatus\":\"Analyzed\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\ni3c: mipi-i3c-hci: Correct RING_CTRL_ABORT handling in DMA dequeue\\n\\nThe logic used to abort the DMA ring contains several flaws:\\n\\n 1. The driver unconditionally issues a ring abort even when the ring has\\n    already stopped.\\n 2. The completion used to wait for abort completion is never\\n    re-initialized, resulting in incorrect wait behavior.\\n 3. The abort sequence unintentionally clears RING_CTRL_ENABLE, which\\n    resets hardware ring pointers and disrupts the controller state.\\n 4. If the ring is already stopped, the abort operation should be\\n    considered successful without attempting further action.\\n\\nFix the abort handling by checking whether the ring is running before\\nissuing an abort, re-initializing the completion when needed, ensuring that\\nRING_CTRL_ENABLE remains asserted during abort, and treating an already\\nstopped ring as a successful condition.\"}],\"affected\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"affectedData\":[{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"unaffected\",\"programFiles\":[\"drivers/i3c/master/mipi-i3c-hci/dma.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"9ad9a52cce2828d932ae9495181e3d6414f72c07\",\"lessThan\":\"003df94bcc9227e8e930abd03ac7f63ac10033dc\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"9ad9a52cce2828d932ae9495181e3d6414f72c07\",\"lessThan\":\"5549611888f5ca2db5e8e692b57f30626ddf9898\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"9ad9a52cce2828d932ae9495181e3d6414f72c07\",\"lessThan\":\"b795e68bf3073d67bebbb5a44d93f49efc5b8cc7\",\"versionType\":\"git\",\"status\":\"affected\"}]},{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"affected\",\"programFiles\":[\"drivers/i3c/master/mipi-i3c-hci/dma.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"5.11\",\"status\":\"affected\"},{\"version\":\"0\",\"lessThan\":\"5.11\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.18.19\",\"lessThanOrEqual\":\"6.18.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.19.9\",\"lessThanOrEqual\":\"6.19.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"7.0\",\"lessThanOrEqual\":\"*\",\"versionType\":\"original_commit_for_fix\",\"status\":\"unaffected\"}]}]}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"type\":\"Secondary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H\",\"baseScore\":7.8,\"baseSeverity\":\"HIGH\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"LOW\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"HIGH\",\"integrityImpact\":\"HIGH\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":1.8,\"impactScore\":5.9}]},\"weaknesses\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"description\":[{\"lang\":\"en\",\"value\":\"NVD-CWE-noinfo\"}]}],\"configurations\":[{\"nodes\":[{\"operator\":\"OR\",\"negate\":false,\"cpeMatch\":[{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"5.11\",\"versionEndExcluding\":\"6.18.19\",\"matchCriteriaId\":\"2303E895-6E04-4172-831C-1F2500169926\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"6.19\",\"versionEndExcluding\":\"6.19.9\",\"matchCriteriaId\":\"E825E7C3-FEAC-4FD3-8A81-78D7387948C9\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:7.0:rc1:*:*:*:*:*:*\",\"matchCriteriaId\":\"F253B622-8837-4245-BCE5-A7BF8FC76A16\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:7.0:rc2:*:*:*:*:*:*\",\"matchCriteriaId\":\"4AE85AD8-4641-4E7C-A2F4-305E2CD9EE64\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:7.0:rc3:*:*:*:*:*:*\",\"matchCriteriaId\":\"F666C8D8-6538-46D4-B318-87610DE64C34\"}]}]}],\"references\":[{\"url\":\"https://git.kernel.org/stable/c/003df94bcc9227e8e930abd03ac7f63ac10033dc\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/5549611888f5ca2db5e8e692b57f30626ddf9898\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/b795e68bf3073d67bebbb5a44d93f49efc5b8cc7\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]}]}}",
    "redhat_vex": {
      "aggregate_severity": "Moderate",
      "current_release_date": "2026-07-02T12:51:12+00:00",
      "cve": "CVE-2026-43352",
      "id": "CVE-2026-43352",
      "initial_release_date": "2026-05-08T00:00:00+00:00",
      "product_status:known_affected": "76",
      "product_status:known_not_affected": "198",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: i3c: mipi-i3c-hci: Correct RING_CTRL_ABORT handling in DMA dequeue",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-43352.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "moderate",
      "current_release_date": "2026-09-11T01:18:24Z",
      "cve": "CVE-2026-43352",
      "id": "CVE-2026-43352",
      "initial_release_date": "2026-05-12T03:30:40Z",
      "product_status:first_fixed": "2",
      "product_status:known_affected": "557",
      "product_status:known_not_affected": "175",
      "product_status:recommended": "250",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2026-43352",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2026-43352.json",
      "version": "9"
    }
  }
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Detection rules are retrieved from Rulezet.

Loading…

Loading…

Loading…