« Volver al listado

CVE-2026-97577

Estado: RecibidaAlta (7.8)—

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

media: verisilicon: rockchip: reject AV1 frames exceeding the tile capacity

rockchip_vpu981_av1_dec_set_tile_info() indexes the tile group entry array by tile1 * tile_cols + tile0, reading up to tile_cols * tile_rows entries, lays out one descriptor per tile in the AV1_MAX_TILES tile_info buffer, and programs the real tile_cols / tile_rows into the hardware.

The tile group entry control is a dynamic array sized to the number of entries userspace submitted, independent of tile_cols / tile_rows, so a frame that claims more tiles than entries reads past the array. A frame that claims more than AV1_MAX_TILES tiles also leaves the hardware programmed for more tiles than the descriptor buffer holds.

Leer descripción completaMostrar menos

Reject both in prepare_run(): tile_cols * tile_rows must not exceed the submitted entry count or AV1_MAX_TILES. The entry count is read via v4l2_ctrl_find() (ctrl->elems). This mirrors the bound the mediatek AV1 decoder already enforces.

CVSS

Probabilidad de explotación (EPSS)

EPSS (Exploit Prediction Scoring System, de FIRST) estima la probabilidad de que una vulnerabilidad sea explotada en 30 días. Complementa a CVSS (impacto) y a CISA KEV (explotación confirmada).

🎯 Técnicas ATT&CK

Cómo se explota esta vulnerabilidad y qué consigue el atacante, en el lenguaje de MITRE ATT&CK.

Vector AV:L/PR:L sin interacción permite escalada local. Lectura de memoria fuera de límites (out-of-bounds) y DoS por manipulación de tiles AV1 en kernel de Linux.

Inferido por nuestro agente de análisis a partir de la descripción oficial, el vector CVSS y la CWE, y comprobado por un supervisor. Puede contener errores.

🛡️ Mitigaciones ATT&CK que cubren estas técnicas

Tecnologías afectadas (1)

⚠ Inferidas por IA a partir de la descripción — NVD aún no ha analizado esta CVE; no son CPE verificados.

Referencias

JSON original (NVD)

Mostrar
{
  "id": "CVE-2026-97577",
  "cveTags": [],
  "metrics": {
    "cvssMetricV31": [
      {
        "type": "Secondary",
        "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "cvssData": {
          "scope": "UNCHANGED",
          "version": "3.1",
          "baseScore": 7.8,
          "attackVector": "LOCAL",
          "baseSeverity": "HIGH",
          "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
          "integrityImpact": "HIGH",
          "userInteraction": "NONE",
          "attackComplexity": "LOW",
          "availabilityImpact": "HIGH",
          "privilegesRequired": "LOW",
          "confidentialityImpact": "HIGH"
        },
        "impactScore": 5.9,
        "exploitabilityScore": 1.8
      }
    ]
  },
  "affected": [
    {
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "affectedData": [
        {
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "product": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "727a400686a2c0d25015c9e44916a59b72882f83",
              "lessThan": "95ee48eb17c91bd4859b65e0a54e7722f370d0e5",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "727a400686a2c0d25015c9e44916a59b72882f83",
              "lessThan": "40029f7f35397853f8711d6fce1d90a4c7a01f8c",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "727a400686a2c0d25015c9e44916a59b72882f83",
              "lessThan": "a41babf528f70c9a82ed31cfb5fe19065910f7f0",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "727a400686a2c0d25015c9e44916a59b72882f83",
              "lessThan": "fd965369220cc160bb20a24991790814bfbab401",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "727a400686a2c0d25015c9e44916a59b72882f83",
              "lessThan": "367db8b23c26a913d76ed70457bbcd781c422b49",
              "versionType": "git"
            }
          ],
          "programFiles": [
            "drivers/media/platform/verisilicon/rockchip_vpu981_hw_av1_dec.c"
          ],
          "defaultStatus": "unaffected"
        },
        {
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "product": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.5"
            },
            {
              "status": "unaffected",
              "version": "0",
              "lessThan": "6.5",
              "versionType": "semver"
            },
            {
              "status": "unaffected",
              "version": "6.6.158",
              "versionType": "semver",
              "lessThanOrEqual": "6.6.*"
            },
            {
              "status": "unaffected",
              "version": "6.12.111",
              "versionType": "semver",
              "lessThanOrEqual": "6.12.*"
            },
            {
              "status": "unaffected",
              "version": "6.18.53",
              "versionType": "semver",
              "lessThanOrEqual": "6.18.*"
            },
            {
              "status": "unaffected",
              "version": "7.2.7",
              "versionType": "semver",
              "lessThanOrEqual": "7.2.*"
            },
            {
              "status": "unaffected",
              "version": "7.3-rc3",
              "versionType": "original_commit_for_fix",
              "lessThanOrEqual": "*"
            }
          ],
          "programFiles": [
            "drivers/media/platform/verisilicon/rockchip_vpu981_hw_av1_dec.c"
          ],
          "defaultStatus": "affected"
        }
      ]
    }
  ],
  "published": "2026-09-25T11:17:08.447",
  "references": [
    {
      "url": "https://git.kernel.org/stable/c/367db8b23c26a913d76ed70457bbcd781c422b49",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/40029f7f35397853f8711d6fce1d90a4c7a01f8c",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/95ee48eb17c91bd4859b65e0a54e7722f370d0e5",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/a41babf528f70c9a82ed31cfb5fe19065910f7f0",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/fd965369220cc160bb20a24991790814bfbab401",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    }
  ],
  "vulnStatus": "Received",
  "descriptions": [
    {
      "lang": "en",
      "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nmedia: verisilicon: rockchip: reject AV1 frames exceeding the tile capacity\n\nrockchip_vpu981_av1_dec_set_tile_info() indexes the tile group entry\narray by tile1 * tile_cols + tile0, reading up to tile_cols * tile_rows\nentries, lays out one descriptor per tile in the AV1_MAX_TILES tile_info\nbuffer, and programs the real tile_cols / tile_rows into the hardware.\n\nThe tile group entry control is a dynamic array sized to the number of\nentries userspace submitted, independent of tile_cols / tile_rows, so a\nframe that claims more tiles than entries reads past the array. A frame\nthat claims more than AV1_MAX_TILES tiles also leaves the hardware\nprogrammed for more tiles than the descriptor buffer holds.\n\nReject both in prepare_run(): tile_cols * tile_rows must not exceed the\nsubmitted entry count or AV1_MAX_TILES. The entry count is read via\nv4l2_ctrl_find() (ctrl->elems). This mirrors the bound the mediatek AV1\ndecoder already enforces."
    }
  ],
  "lastModified": "2026-10-03T11:18:05.050",
  "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}