« Volver al listado

CVE-2026-90433

Estado: RecibidaSin puntuar—

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

spi: oc-tiny: switch to managed controller allocation

The controller is allocated with the non-managed spi_alloc_host() while the interrupt is registered with devm_request_irq(). During removal, spi_bitbang_stop() only unregisters the controller; the subsequent spi_controller_put() then frees the controller together with its embedded driver-private devdata, which is the IRQ handler's dev_id. The devm_request_irq() release action (free_irq()), which drains the handler, does not run until after .remove() returns. A late or latched interrupt can therefore reach tiny_spi_irq() and dereference already-freed memory (e.g. hw->base).

Leer descripción completaMostrar menos

Switch to devm_spi_alloc_host() so that the devres LIFO order releases the controller only after free_irq() has drained the handler, and drop the now-redundant spi_controller_put() from .remove(). The probe error path is simplified to direct returns.

This issue was found by an in-house static analysis tool.

CVSS

NVD no ha asignado puntuación CVSS a esta CVE (habitual desde el cambio de política de abril de 2026).

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).

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-90433",
  "cveTags": [],
  "metrics": {},
  "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": "ce792580ea2ce6f7259b45124e9ccc4574c31606",
              "lessThan": "0260c94453a08491640e61f8cf0c384edbe7bd11",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "ce792580ea2ce6f7259b45124e9ccc4574c31606",
              "lessThan": "ef5cc4a8c088d05549f71950a72b5deff5000fd7",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "ce792580ea2ce6f7259b45124e9ccc4574c31606",
              "lessThan": "1cd16c8d68f58e54abb8f331d05469237200631f",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "ce792580ea2ce6f7259b45124e9ccc4574c31606",
              "lessThan": "d710f43ce30975d197f73c543bfe47b958d8ba17",
              "versionType": "git"
            }
          ],
          "programFiles": [
            "drivers/spi/spi-oc-tiny.c"
          ],
          "defaultStatus": "unaffected"
        },
        {
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "product": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "2.6.39"
            },
            {
              "status": "unaffected",
              "version": "0",
              "lessThan": "2.6.39",
              "versionType": "semver"
            },
            {
              "status": "unaffected",
              "version": "6.12.110",
              "versionType": "semver",
              "lessThanOrEqual": "6.12.*"
            },
            {
              "status": "unaffected",
              "version": "6.18.52",
              "versionType": "semver",
              "lessThanOrEqual": "6.18.*"
            },
            {
              "status": "unaffected",
              "version": "7.2.6",
              "versionType": "semver",
              "lessThanOrEqual": "7.2.*"
            },
            {
              "status": "unaffected",
              "version": "7.3-rc1",
              "versionType": "original_commit_for_fix",
              "lessThanOrEqual": "*"
            }
          ],
          "programFiles": [
            "drivers/spi/spi-oc-tiny.c"
          ],
          "defaultStatus": "affected"
        }
      ]
    }
  ],
  "published": "2026-09-17T17:17:48.400",
  "references": [
    {
      "url": "https://git.kernel.org/stable/c/0260c94453a08491640e61f8cf0c384edbe7bd11",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/1cd16c8d68f58e54abb8f331d05469237200631f",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/d710f43ce30975d197f73c543bfe47b958d8ba17",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/ef5cc4a8c088d05549f71950a72b5deff5000fd7",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    }
  ],
  "vulnStatus": "Received",
  "descriptions": [
    {
      "lang": "en",
      "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nspi: oc-tiny: switch to managed controller allocation\n\nThe controller is allocated with the non-managed spi_alloc_host() while\nthe interrupt is registered with devm_request_irq().  During removal,\nspi_bitbang_stop() only unregisters the controller; the subsequent\nspi_controller_put() then frees the controller together with its\nembedded driver-private devdata, which is the IRQ handler's dev_id.  The\ndevm_request_irq() release action (free_irq()), which drains the\nhandler, does not run until after .remove() returns.  A late or latched\ninterrupt can therefore reach tiny_spi_irq() and dereference\nalready-freed memory (e.g. hw->base).\n\nSwitch to devm_spi_alloc_host() so that the devres LIFO order releases\nthe controller only after free_irq() has drained the handler, and drop\nthe now-redundant spi_controller_put() from .remove().  The probe error\npath is simplified to direct returns.\n\nThis issue was found by an in-house static analysis tool."
    }
  ],
  "lastModified": "2026-09-17T17:17:48.400",
  "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}