{
  "affected": [
    {
      "ranges": [
        {
          "events": [
            {
              "introduced": "9ebb5d9c69f1f5721f9f6f49e501c674c1e184ae"
            },
            {
              "fixed": "8f01f886cc5e7bbc16cbf1a9928fdebbc911e973"
            },
            {
              "fixed": "2be39946abcde5a6416fb074ef728429e246a996"
            },
            {
              "fixed": "522d6dcdc645d8f97d6b4cdfd6d8eea307f3ff0e"
            },
            {
              "fixed": "9a756f277eb89f769dbf380f38245c270d31fdb5"
            },
            {
              "fixed": "32d6df14fdab71fe1ba304fd9a0db0411ea2e043"
            },
            {
              "fixed": "97ca58b0fb026799b99e3d552d5f69cf9a3113ad"
            },
            {
              "fixed": "47049fdadc0eaa115e813735b827e1379c0d2cf8"
            },
            {
              "fixed": "0918ee2c0eeb4d7f45b82b3dc11e65c2d9b7ad59"
            }
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "type": "GIT"
        }
      ]
    },
    {
      "package": {
        "ecosystem": "Linux",
        "name": "Kernel"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "3.7.0"
            },
            {
              "fixed": "5.10.270"
            }
          ],
          "type": "ECOSYSTEM"
        },
        {
          "events": [
            {
              "introduced": "5.11.0"
            },
            {
              "fixed": "5.15.221"
            }
          ],
          "type": "ECOSYSTEM"
        },
        {
          "events": [
            {
              "introduced": "5.16.0"
            },
            {
              "fixed": "6.1.188"
            }
          ],
          "type": "ECOSYSTEM"
        },
        {
          "events": [
            {
              "introduced": "6.2.0"
            },
            {
              "fixed": "6.6.157"
            }
          ],
          "type": "ECOSYSTEM"
        },
        {
          "events": [
            {
              "introduced": "6.7.0"
            },
            {
              "fixed": "6.12.110"
            }
          ],
          "type": "ECOSYSTEM"
        },
        {
          "events": [
            {
              "introduced": "6.13.0"
            },
            {
              "fixed": "6.18.51"
            }
          ],
          "type": "ECOSYSTEM"
        },
        {
          "events": [
            {
              "introduced": "6.19.0"
            },
            {
              "fixed": "7.2.5"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    }
  ],
  "database_specific": {
    "cna_assigner": "Linux",
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/89xxx/CVE-2026-89864.json"
  },
  "details": "In the Linux kernel, the following vulnerability has been resolved:\n\nscsi: qla2xxx: Bound i2c-\u003elength in I2C bsg handlers\n\nstruct qla_i2c_access carries a 16-bit length field alongside a fixed\n64-byte buffer:\n\n\tstruct qla_i2c_access {\n\t\tuint16_t device, offset, option, length;\n\t\tuint8_t  buffer[0x40];\n\t} __packed;\n\nqla2x00_write_i2c() and qla2x00_read_i2c() use the user-supplied\ni2c-\u003elength without any bounds check. i2c is overlaid on a 256-byte\non-stack buffer and sfp is a 256-byte DMA-pool buffer, so a length up to\n65535 overruns both:\n\n  - write: memcpy(sfp, i2c-\u003ebuffer, i2c-\u003elength) over-reads the stack and\n    over-writes the sfp heap buffer, and qla2x00_write_sfp() then DMAs\n    i2c-\u003elength bytes out of the 256-byte buffer.\n  - read: qla2x00_read_sfp() DMAs i2c-\u003elength bytes into the 256-byte sfp,\n    then memcpy(i2c-\u003ebuffer, sfp, i2c-\u003elength) overflows the 64-byte\n    buffer inside the on-stack array.\n\nA caller holding CAP_SYS_RAWIO can use this to corrupt the heap and the\nkernel stack. Reject requests whose length exceeds the buffer before any\ncopy or DMA transfer in both handlers.",
  "id": "CVE-2026-89864",
  "modified": "2026-09-18T03:30:53.118841020Z",
  "published": "2026-09-16T10:31:35.068Z",
  "references": [
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/0918ee2c0eeb4d7f45b82b3dc11e65c2d9b7ad59"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/2be39946abcde5a6416fb074ef728429e246a996"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/32d6df14fdab71fe1ba304fd9a0db0411ea2e043"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/47049fdadc0eaa115e813735b827e1379c0d2cf8"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/522d6dcdc645d8f97d6b4cdfd6d8eea307f3ff0e"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/8f01f886cc5e7bbc16cbf1a9928fdebbc911e973"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/97ca58b0fb026799b99e3d552d5f69cf9a3113ad"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/9a756f277eb89f769dbf380f38245c270d31fdb5"
    },
    {
      "type": "ADVISORY",
      "url": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/89xxx/CVE-2026-89864.json"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-89864"
    },
    {
      "type": "PACKAGE",
      "url": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"
    }
  ],
  "schema_version": "1.9.0",
  "summary": "scsi: qla2xxx: Bound i2c-\u003elength in I2C bsg handlers"
}