CVE-2026-46240 (GCVE-0-2026-46240)

Vulnerability from cvelistv5 – Published: 2026-05-28 09:41 – Updated: 2026-08-05 12:30
VLAI
Title
media: iris: Fix use-after-free in iris_release_internal_buffers()
Summary
In the Linux kernel, the following vulnerability has been resolved: media: iris: Fix use-after-free in iris_release_internal_buffers() The recent change in commit 1dabf00ee206 ("media: iris: gen1: Destroy internal buffers after FW releases") introduced a regression where session_release_buf() may free the buffer. The caller, iris_release_internal_buffers(), continued to access `buffer` after the call, leading to a potential use-after-free. Fix this by setting BUF_ATTR_PENDING_RELEASE before calling session_release_buf(), and reverting the flag if the call fails. This ensures no dereference occurs after potential freeing.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: 7cde76db8883ec8a3d1456068079ecadbfb15ca5 , < dd24998a4a4016fb9921916024399bd80f0d45c6 (git)
Affected: 1dabf00ee206eceb0f08a1fe5d1ce635f9064338 , < 18c64439f249859b6140f7bf8bcf95c8ed841f28 (git)
Affected: 1dabf00ee206eceb0f08a1fe5d1ce635f9064338 , < f27cfdcfc916bb59297825805f4c3499f89f9e76 (git)
Affected: d4457f23ac0130240053a34be663f0fade3bb371 (git)
Affected: 6.18.16 , < 6.18.32 (semver)
Affected: 6.19.6 , < 6.20 (semver)
guessed Create a notification for this product.
Linux Linux Affected: 7.0
Unaffected: 0 , < 7.0 (semver)
Unaffected: 6.18.32 , ≤ 6.18.* (semver)
Unaffected: 7.0.9 , ≤ 7.0.* (semver)
Unaffected: 7.1 , ≤ * (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/media/platform/qcom/iris/iris_buffer.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "dd24998a4a4016fb9921916024399bd80f0d45c6",
              "status": "affected",
              "version": "7cde76db8883ec8a3d1456068079ecadbfb15ca5",
              "versionType": "git"
            },
            {
              "lessThan": "18c64439f249859b6140f7bf8bcf95c8ed841f28",
              "status": "affected",
              "version": "1dabf00ee206eceb0f08a1fe5d1ce635f9064338",
              "versionType": "git"
            },
            {
              "lessThan": "f27cfdcfc916bb59297825805f4c3499f89f9e76",
              "status": "affected",
              "version": "1dabf00ee206eceb0f08a1fe5d1ce635f9064338",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "d4457f23ac0130240053a34be663f0fade3bb371",
              "versionType": "git"
            },
            {
              "lessThan": "6.18.32",
              "status": "affected",
              "version": "6.18.16",
              "versionType": "semver"
            },
            {
              "lessThan": "6.20",
              "status": "affected",
              "version": "6.19.6",
              "versionType": "semver"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/media/platform/qcom/iris/iris_buffer.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "7.0"
            },
            {
              "lessThan": "7.0",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.32",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.0.*",
              "status": "unaffected",
              "version": "7.0.9",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.1",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.32",
                  "versionStartIncluding": "6.18.16",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.0.9",
                  "versionStartIncluding": "7.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1",
                  "versionStartIncluding": "7.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionStartIncluding": "6.19.6",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nmedia: iris: Fix use-after-free in iris_release_internal_buffers()\n\nThe recent change in commit 1dabf00ee206 (\"media: iris: gen1: Destroy\ninternal buffers after FW releases\") introduced a regression where\nsession_release_buf() may free the buffer. The caller,\niris_release_internal_buffers(), continued to access `buffer` after the\ncall, leading to a potential use-after-free.\n\nFix this by setting BUF_ATTR_PENDING_RELEASE before calling\nsession_release_buf(), and reverting the flag if the call fails. This\nensures no dereference occurs after potential freeing."
        }
      ],
      "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 code is reached only via VIDIOC_STREAMON and related ioctls on the iris V4L2 device node (/dev/videoN); it requires local access to that device, not a network path.\nAC:L - This is a sequential use-after-free, not a race; the attacker drives a decode session and supplies a bitstream with a resolution change to reliably reach the release/free path on gen1 hardware.\nPR:L - Triggering the path needs an open handle to the iris video device (e.g. video-group access, or the codec/media context on Android) but no real root or capability check exists along the path.\nUI:N - The attacker performs all ioctls and supplies the input bitstream directly; no separate victim action is required.\nS:U - The corruption stays within the kernel\u0027s own memory and security authority; no VM, IOMMU, or sandbox boundary is crossed.\nC:H - The use-after-free lets the attacker groom and control the contents of the freed struct iris_buffer slot, enabling kernel memory disclosure.\nI:H - The post-free read-modify-write into the freed slab object can corrupt an adjacent reallocated structure, giving a UAF write primitive exploitable for control-flow/data corruption.\nA:H - The use-after-free reliably leads to slab corruption and kernel oops/panic, a high availability impact."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-05T12:30:40.467Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/dd24998a4a4016fb9921916024399bd80f0d45c6"
        },
        {
          "url": "https://git.kernel.org/stable/c/18c64439f249859b6140f7bf8bcf95c8ed841f28"
        },
        {
          "url": "https://git.kernel.org/stable/c/f27cfdcfc916bb59297825805f4c3499f89f9e76"
        }
      ],
      "title": "media: iris: Fix use-after-free in iris_release_internal_buffers()",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-46240",
    "datePublished": "2026-05-28T09:41:08.376Z",
    "dateReserved": "2026-05-13T15:03:33.107Z",
    "dateUpdated": "2026-08-05T12:30:40.467Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-46240",
      "date": "2026-09-30",
      "epss": "0.00168",
      "percentile": "0.05541"
    },
    "nvd": {
      "cve": {
        "affected": [
          {
            "affectedData": [
              {
                "defaultStatus": "unaffected",
                "product": "Linux",
                "programFiles": [
                  "drivers/media/platform/qcom/iris/iris_buffer.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "lessThan": "dd24998a4a4016fb9921916024399bd80f0d45c6",
                    "status": "affected",
                    "version": "7cde76db8883ec8a3d1456068079ecadbfb15ca5",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "18c64439f249859b6140f7bf8bcf95c8ed841f28",
                    "status": "affected",
                    "version": "1dabf00ee206eceb0f08a1fe5d1ce635f9064338",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "f27cfdcfc916bb59297825805f4c3499f89f9e76",
                    "status": "affected",
                    "version": "1dabf00ee206eceb0f08a1fe5d1ce635f9064338",
                    "versionType": "git"
                  },
                  {
                    "status": "affected",
                    "version": "d4457f23ac0130240053a34be663f0fade3bb371",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "6.18.32",
                    "status": "affected",
                    "version": "6.18.16",
                    "versionType": "semver"
                  },
                  {
                    "lessThan": "6.20",
                    "status": "affected",
                    "version": "6.19.6",
                    "versionType": "semver"
                  }
                ]
              },
              {
                "defaultStatus": "affected",
                "product": "Linux",
                "programFiles": [
                  "drivers/media/platform/qcom/iris/iris_buffer.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "status": "affected",
                    "version": "7.0"
                  },
                  {
                    "lessThan": "7.0",
                    "status": "unaffected",
                    "version": "0",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.18.*",
                    "status": "unaffected",
                    "version": "6.18.32",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "7.0.*",
                    "status": "unaffected",
                    "version": "7.0.9",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "*",
                    "status": "unaffected",
                    "version": "7.1",
                    "versionType": "original_commit_for_fix"
                  }
                ]
              }
            ],
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
          }
        ],
        "configurations": [
          {
            "nodes": [
              {
                "cpeMatch": [
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                    "matchCriteriaId": "BB16B5AB-8895-4F92-9725-88EE499104D5",
                    "versionEndExcluding": "6.18.32",
                    "versionStartIncluding": "6.18.16",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                    "matchCriteriaId": "E23BCEE9-4A9B-4A21-9895-8615B92174E7",
                    "versionEndExcluding": "7.0.9",
                    "versionStartIncluding": "6.19.6",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:7.1:rc1:*:*:*:*:*:*",
                    "matchCriteriaId": "B1EF7059-E670-45F4-B422-54C40FA86390",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:7.1:rc2:*:*:*:*:*:*",
                    "matchCriteriaId": "0D38F0BF-A728-4133-A358-D44A2F7EE6D6",
                    "vulnerable": true
                  }
                ],
                "negate": false,
                "operator": "OR"
              }
            ]
          }
        ],
        "cveTags": [],
        "descriptions": [
          {
            "lang": "en",
            "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nmedia: iris: Fix use-after-free in iris_release_internal_buffers()\n\nThe recent change in commit 1dabf00ee206 (\"media: iris: gen1: Destroy\ninternal buffers after FW releases\") introduced a regression where\nsession_release_buf() may free the buffer. The caller,\niris_release_internal_buffers(), continued to access `buffer` after the\ncall, leading to a potential use-after-free.\n\nFix this by setting BUF_ATTR_PENDING_RELEASE before calling\nsession_release_buf(), and reverting the flag if the call fails. This\nensures no dereference occurs after potential freeing."
          }
        ],
        "id": "CVE-2026-46240",
        "lastModified": "2026-06-17T10:53:23.583",
        "metrics": {
          "cvssMetricV31": [
            {
              "cvssData": {
                "attackComplexity": "LOW",
                "attackVector": "LOCAL",
                "availabilityImpact": "HIGH",
                "baseScore": 7.8,
                "baseSeverity": "HIGH",
                "confidentialityImpact": "HIGH",
                "integrityImpact": "HIGH",
                "privilegesRequired": "LOW",
                "scope": "UNCHANGED",
                "userInteraction": "NONE",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
                "version": "3.1"
              },
              "exploitabilityScore": 1.8,
              "impactScore": 5.9,
              "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
              "type": "Secondary"
            }
          ]
        },
        "published": "2026-05-28T10:16:39.613",
        "references": [
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/18c64439f249859b6140f7bf8bcf95c8ed841f28"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/dd24998a4a4016fb9921916024399bd80f0d45c6"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/f27cfdcfc916bb59297825805f4c3499f89f9e76"
          }
        ],
        "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "vulnStatus": "Analyzed",
        "weaknesses": [
          {
            "description": [
              {
                "lang": "en",
                "value": "CWE-416"
              }
            ],
            "source": "nvd@nist.gov",
            "type": "Primary"
          }
        ]
      }
    },
    "redhat_vex": {
      "aggregate_severity": "None",
      "current_release_date": "2026-06-28T07:41:45+00:00",
      "cve": "CVE-2026-46240",
      "id": "CVE-2026-46240",
      "initial_release_date": "2026-05-28T00:00:00+00:00",
      "product_status:known_not_affected": "274",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: media: iris: Fix use-after-free in iris_release_internal_buffers()",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-46240.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "moderate",
      "current_release_date": "2026-08-06T01:17:24Z",
      "cve": "CVE-2026-46240",
      "id": "CVE-2026-46240",
      "initial_release_date": "2026-05-29T01:14:31Z",
      "product_status:known_not_affected": "293",
      "product_status:recommended": "4",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2026-46240",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2026-46240.json",
      "version": "5"
    }
  }
}



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…

Loading…

Loading…

Related by attack behaviour

Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.


Loading…