CVE-2026-80835 (GCVE-0-2026-80835)
Vulnerability from cvelistv5
Published
2026-09-04 15:54
Modified
2026-10-19 08:44
Severity ?
Summary
In the Linux kernel, the following vulnerability has been resolved: crypto: qcom-rng - Remove crypto_rng interface qcom-rng.c exposes the same hardware through two completely separate interfaces, crypto_rng and hwrng. However, the implementation of this is buggy because it permits generation operations from these interfaces to run concurrently with each other, accessing the same registers. That is, qcom_rng_generate() synchronizes with itself but not with qcom_hwrng_read(). This results in potential repetition of output from the RNG, output of non-random values, etc. Fortunately, there's actually no point in hardware RNG drivers implementing the crypto_rng interface. It's not actually used by anything besides the "rng" algorithm type of AF_ALG, which in turn is not actually used in practice. Other crypto_rng hardware drivers are likewise being phased out, leaving just the hwrng support. Thus, remove it to simplify the code and avoid conflict (and confusion) with the hwrng interface which is the one that actually matters.
Impacted products
Vendor Product Version
Linux Linux Version: f29cd5bb64c258f29b4c49452532481f50eb43ca
Version: f29cd5bb64c258f29b4c49452532481f50eb43ca
Version: f29cd5bb64c258f29b4c49452532481f50eb43ca
Version: f29cd5bb64c258f29b4c49452532481f50eb43ca
Version: f29cd5bb64c258f29b4c49452532481f50eb43ca
Create a notification for this product.
Show details on NVD website


{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/crypto/Kconfig",
            "drivers/crypto/qcom-rng.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "bb474dcd9d0224264a27a60891f00872b879835f",
              "status": "affected",
              "version": "f29cd5bb64c258f29b4c49452532481f50eb43ca",
              "versionType": "git"
            },
            {
              "lessThan": "14d9ee8286460a7b82f3b8610b5c7ebf4550b06b",
              "status": "affected",
              "version": "f29cd5bb64c258f29b4c49452532481f50eb43ca",
              "versionType": "git"
            },
            {
              "lessThan": "843e2bdaf8deb8bc341203094dfe582e38ea4af2",
              "status": "affected",
              "version": "f29cd5bb64c258f29b4c49452532481f50eb43ca",
              "versionType": "git"
            },
            {
              "lessThan": "669d940351eda316b82e24986e2e0e057653ce7d",
              "status": "affected",
              "version": "f29cd5bb64c258f29b4c49452532481f50eb43ca",
              "versionType": "git"
            },
            {
              "lessThan": "2ecdf5c9910e20f73639bc322f0518a3439d17c0",
              "status": "affected",
              "version": "f29cd5bb64c258f29b4c49452532481f50eb43ca",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/crypto/Kconfig",
            "drivers/crypto/qcom-rng.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.7"
            },
            {
              "lessThan": "6.7",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.108",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.49",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.1.*",
              "status": "unaffected",
              "version": "7.1.13",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.2.*",
              "status": "unaffected",
              "version": "7.2.3",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.3",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.108",
                  "versionStartIncluding": "6.7",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.49",
                  "versionStartIncluding": "6.7",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1.13",
                  "versionStartIncluding": "6.7",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2.3",
                  "versionStartIncluding": "6.7",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.3",
                  "versionStartIncluding": "6.7",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ncrypto: qcom-rng - Remove crypto_rng interface\n\nqcom-rng.c exposes the same hardware through two completely separate\ninterfaces, crypto_rng and hwrng.  However, the implementation of this\nis buggy because it permits generation operations from these interfaces\nto run concurrently with each other, accessing the same registers.  That\nis, qcom_rng_generate() synchronizes with itself but not with\nqcom_hwrng_read().  This results in potential repetition of output from\nthe RNG, output of non-random values, etc.\n\nFortunately, there\u0027s actually no point in hardware RNG drivers\nimplementing the crypto_rng interface.  It\u0027s not actually used by\nanything besides the \"rng\" algorithm type of AF_ALG, which in turn is\nnot actually used in practice.  Other crypto_rng hardware drivers are\nlikewise being phased out, leaving just the hwrng support.\n\nThus, remove it to simplify the code and avoid conflict (and confusion)\nwith the hwrng interface which is the one that actually matters."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-10-19T08:44:27.558Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/bb474dcd9d0224264a27a60891f00872b879835f"
        },
        {
          "url": "https://git.kernel.org/stable/c/14d9ee8286460a7b82f3b8610b5c7ebf4550b06b"
        },
        {
          "url": "https://git.kernel.org/stable/c/843e2bdaf8deb8bc341203094dfe582e38ea4af2"
        },
        {
          "url": "https://git.kernel.org/stable/c/669d940351eda316b82e24986e2e0e057653ce7d"
        },
        {
          "url": "https://git.kernel.org/stable/c/2ecdf5c9910e20f73639bc322f0518a3439d17c0"
        }
      ],
      "title": "crypto: qcom-rng - Remove crypto_rng interface",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-80835",
    "datePublished": "2026-09-04T15:54:44.116Z",
    "dateReserved": "2026-08-26T14:34:25.796Z",
    "dateUpdated": "2026-10-19T08:44:27.558Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2"
}


Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Sightings

Author Source Type Date

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
  • Confirmed: The vulnerability is confirmed from an analyst perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
  • Patched: This vulnerability was successfully patched by the user reporting the sighting.
  • Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
  • Not confirmed: The user expresses doubt about the veracity of the vulnerability.
  • Not patched: This vulnerability was not successfully patched by the user reporting the sighting.


Loading…

Loading…