CVE-2026-90070 (GCVE-0-2026-90070)

Vulnerability from cvelistv5 – Published: 2026-09-17 16:05 – Updated: 2026-09-17 16:05
VLAI
Title
tpm: st33zp24: Return zero on status read failure
Summary
In the Linux kernel, the following vulnerability has been resolved: tpm: st33zp24: Return zero on status read failure st33zp24_status() ignores the result of the transport read and returns data even when no byte was received. The I2C transport, for example, skips i2c_master_recv() when the register-select write is short or fails, leaving data uninitialized. The resulting stack value can be interpreted as TPM_STS flags and let status checks complete spuriously. The status callback cannot propagate a transport error. Return zero unless recv() reports exactly one byte. With no status bits set, callers retry or take their existing timeout or error path instead of acting on an invalid status value. This issue was found by a static analysis checker and confirmed by manual source review.
Severity
No CVSS data available.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: 251a7b08213af82e40e4a70cac056e245853c410 , < d732cfc4befe28f02ec82ed5fd2bc2a21fbabd42 (git)
Affected: 251a7b08213af82e40e4a70cac056e245853c410 , < 4973e8386257eed10e5433a94a53bcc6ec37d2a1 (git)
Affected: 251a7b08213af82e40e4a70cac056e245853c410 , < 981307e2e8a930da492c2bcf763865c47c2a5165 (git)
Affected: 251a7b08213af82e40e4a70cac056e245853c410 , < 1bfd5c54e40704ce93d128a25de3d8dd772bf183 (git)
Affected: 251a7b08213af82e40e4a70cac056e245853c410 , < 38c26fe4522963a91d4fb02c844d8faa740fe9d1 (git)
Affected: 251a7b08213af82e40e4a70cac056e245853c410 , < 14feaa498c20c1b7ddefe27de5329aaff822cc0d (git)
Affected: 251a7b08213af82e40e4a70cac056e245853c410 , < e6d7d9b665419cda3e9f91030d81c9f8ba71e51d (git)
Affected: 251a7b08213af82e40e4a70cac056e245853c410 , < 8b92687708f5ef980de01c2042dbd76d11f78547 (git)
guessed Create a notification for this product.
Linux Linux Affected: 3.9
Unaffected: 0 , < 3.9 (semver)
Unaffected: 5.10.270 , ≤ 5.10.* (semver)
Unaffected: 5.15.221 , ≤ 5.15.* (semver)
Unaffected: 6.1.188 , ≤ 6.1.* (semver)
Unaffected: 6.6.157 , ≤ 6.6.* (semver)
Unaffected: 6.12.110 , ≤ 6.12.* (semver)
Unaffected: 6.18.52 , ≤ 6.18.* (semver)
Unaffected: 7.2.6 , ≤ 7.2.* (semver)
Unaffected: 7.3-rc1 , ≤ * (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/char/tpm/st33zp24/st33zp24.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "d732cfc4befe28f02ec82ed5fd2bc2a21fbabd42",
              "status": "affected",
              "version": "251a7b08213af82e40e4a70cac056e245853c410",
              "versionType": "git"
            },
            {
              "lessThan": "4973e8386257eed10e5433a94a53bcc6ec37d2a1",
              "status": "affected",
              "version": "251a7b08213af82e40e4a70cac056e245853c410",
              "versionType": "git"
            },
            {
              "lessThan": "981307e2e8a930da492c2bcf763865c47c2a5165",
              "status": "affected",
              "version": "251a7b08213af82e40e4a70cac056e245853c410",
              "versionType": "git"
            },
            {
              "lessThan": "1bfd5c54e40704ce93d128a25de3d8dd772bf183",
              "status": "affected",
              "version": "251a7b08213af82e40e4a70cac056e245853c410",
              "versionType": "git"
            },
            {
              "lessThan": "38c26fe4522963a91d4fb02c844d8faa740fe9d1",
              "status": "affected",
              "version": "251a7b08213af82e40e4a70cac056e245853c410",
              "versionType": "git"
            },
            {
              "lessThan": "14feaa498c20c1b7ddefe27de5329aaff822cc0d",
              "status": "affected",
              "version": "251a7b08213af82e40e4a70cac056e245853c410",
              "versionType": "git"
            },
            {
              "lessThan": "e6d7d9b665419cda3e9f91030d81c9f8ba71e51d",
              "status": "affected",
              "version": "251a7b08213af82e40e4a70cac056e245853c410",
              "versionType": "git"
            },
            {
              "lessThan": "8b92687708f5ef980de01c2042dbd76d11f78547",
              "status": "affected",
              "version": "251a7b08213af82e40e4a70cac056e245853c410",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/char/tpm/st33zp24/st33zp24.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "3.9"
            },
            {
              "lessThan": "3.9",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.10.*",
              "status": "unaffected",
              "version": "5.10.270",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.15.*",
              "status": "unaffected",
              "version": "5.15.221",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.1.*",
              "status": "unaffected",
              "version": "6.1.188",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.157",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.110",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.52",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.2.*",
              "status": "unaffected",
              "version": "7.2.6",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.3-rc1",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.10.270",
                  "versionStartIncluding": "3.9",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.15.221",
                  "versionStartIncluding": "3.9",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1.188",
                  "versionStartIncluding": "3.9",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6.157",
                  "versionStartIncluding": "3.9",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.110",
                  "versionStartIncluding": "3.9",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.52",
                  "versionStartIncluding": "3.9",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2.6",
                  "versionStartIncluding": "3.9",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.3-rc1",
                  "versionStartIncluding": "3.9",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ntpm: st33zp24: Return zero on status read failure\n\nst33zp24_status() ignores the result of the transport read and returns\ndata even when no byte was received. The I2C transport, for example,\nskips i2c_master_recv() when the register-select write is short or fails,\nleaving data uninitialized. The resulting stack value can be interpreted\nas TPM_STS flags and let status checks complete spuriously.\n\nThe status callback cannot propagate a transport error. Return zero\nunless recv() reports exactly one byte. With no status bits set, callers\nretry or take their existing timeout or error path instead of acting on\nan invalid status value.\n\nThis issue was found by a static analysis checker and confirmed by manual\nsource review."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-09-17T16:05:51.585Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/d732cfc4befe28f02ec82ed5fd2bc2a21fbabd42"
        },
        {
          "url": "https://git.kernel.org/stable/c/4973e8386257eed10e5433a94a53bcc6ec37d2a1"
        },
        {
          "url": "https://git.kernel.org/stable/c/981307e2e8a930da492c2bcf763865c47c2a5165"
        },
        {
          "url": "https://git.kernel.org/stable/c/1bfd5c54e40704ce93d128a25de3d8dd772bf183"
        },
        {
          "url": "https://git.kernel.org/stable/c/38c26fe4522963a91d4fb02c844d8faa740fe9d1"
        },
        {
          "url": "https://git.kernel.org/stable/c/14feaa498c20c1b7ddefe27de5329aaff822cc0d"
        },
        {
          "url": "https://git.kernel.org/stable/c/e6d7d9b665419cda3e9f91030d81c9f8ba71e51d"
        },
        {
          "url": "https://git.kernel.org/stable/c/8b92687708f5ef980de01c2042dbd76d11f78547"
        }
      ],
      "title": "tpm: st33zp24: Return zero on status read failure",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-90070",
    "datePublished": "2026-09-17T16:05:51.585Z",
    "dateReserved": "2026-09-11T19:38:34.784Z",
    "dateUpdated": "2026-09-17T16:05:51.585Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-90070",
      "date": "2026-09-25",
      "epss": "0.0022",
      "percentile": "0.11109"
    },
    "nvd": {
      "cve": {
        "affected": [
          {
            "affectedData": [
              {
                "defaultStatus": "unaffected",
                "product": "Linux",
                "programFiles": [
                  "drivers/char/tpm/st33zp24/st33zp24.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "lessThan": "d732cfc4befe28f02ec82ed5fd2bc2a21fbabd42",
                    "status": "affected",
                    "version": "251a7b08213af82e40e4a70cac056e245853c410",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "4973e8386257eed10e5433a94a53bcc6ec37d2a1",
                    "status": "affected",
                    "version": "251a7b08213af82e40e4a70cac056e245853c410",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "981307e2e8a930da492c2bcf763865c47c2a5165",
                    "status": "affected",
                    "version": "251a7b08213af82e40e4a70cac056e245853c410",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "1bfd5c54e40704ce93d128a25de3d8dd772bf183",
                    "status": "affected",
                    "version": "251a7b08213af82e40e4a70cac056e245853c410",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "38c26fe4522963a91d4fb02c844d8faa740fe9d1",
                    "status": "affected",
                    "version": "251a7b08213af82e40e4a70cac056e245853c410",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "14feaa498c20c1b7ddefe27de5329aaff822cc0d",
                    "status": "affected",
                    "version": "251a7b08213af82e40e4a70cac056e245853c410",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "e6d7d9b665419cda3e9f91030d81c9f8ba71e51d",
                    "status": "affected",
                    "version": "251a7b08213af82e40e4a70cac056e245853c410",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "8b92687708f5ef980de01c2042dbd76d11f78547",
                    "status": "affected",
                    "version": "251a7b08213af82e40e4a70cac056e245853c410",
                    "versionType": "git"
                  }
                ]
              },
              {
                "defaultStatus": "affected",
                "product": "Linux",
                "programFiles": [
                  "drivers/char/tpm/st33zp24/st33zp24.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "status": "affected",
                    "version": "3.9"
                  },
                  {
                    "lessThan": "3.9",
                    "status": "unaffected",
                    "version": "0",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "5.10.*",
                    "status": "unaffected",
                    "version": "5.10.270",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "5.15.*",
                    "status": "unaffected",
                    "version": "5.15.221",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.1.*",
                    "status": "unaffected",
                    "version": "6.1.188",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.6.*",
                    "status": "unaffected",
                    "version": "6.6.157",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.12.*",
                    "status": "unaffected",
                    "version": "6.12.110",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.18.*",
                    "status": "unaffected",
                    "version": "6.18.52",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "7.2.*",
                    "status": "unaffected",
                    "version": "7.2.6",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "*",
                    "status": "unaffected",
                    "version": "7.3-rc1",
                    "versionType": "original_commit_for_fix"
                  }
                ]
              }
            ],
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
          }
        ],
        "cveTags": [],
        "descriptions": [
          {
            "lang": "en",
            "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ntpm: st33zp24: Return zero on status read failure\n\nst33zp24_status() ignores the result of the transport read and returns\ndata even when no byte was received. The I2C transport, for example,\nskips i2c_master_recv() when the register-select write is short or fails,\nleaving data uninitialized. The resulting stack value can be interpreted\nas TPM_STS flags and let status checks complete spuriously.\n\nThe status callback cannot propagate a transport error. Return zero\nunless recv() reports exactly one byte. With no status bits set, callers\nretry or take their existing timeout or error path instead of acting on\nan invalid status value.\n\nThis issue was found by a static analysis checker and confirmed by manual\nsource review."
          }
        ],
        "id": "CVE-2026-90070",
        "lastModified": "2026-09-17T17:16:55.940",
        "metrics": {},
        "published": "2026-09-17T17:16:55.940",
        "references": [
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/14feaa498c20c1b7ddefe27de5329aaff822cc0d"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/1bfd5c54e40704ce93d128a25de3d8dd772bf183"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/38c26fe4522963a91d4fb02c844d8faa740fe9d1"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/4973e8386257eed10e5433a94a53bcc6ec37d2a1"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/8b92687708f5ef980de01c2042dbd76d11f78547"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/981307e2e8a930da492c2bcf763865c47c2a5165"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/d732cfc4befe28f02ec82ed5fd2bc2a21fbabd42"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/e6d7d9b665419cda3e9f91030d81c9f8ba71e51d"
          }
        ],
        "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "vulnStatus": "Received"
      }
    }
  }
}



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…