CVE-2024-26971 (GCVE-0-2024-26971)

Vulnerability from cvelistv5 – Published: 2024-05-01 05:19 – Updated: 2026-08-05 11:28
VLAI
Title
clk: qcom: gcc-ipq5018: fix terminating of frequency table arrays
Summary
In the Linux kernel, the following vulnerability has been resolved: clk: qcom: gcc-ipq5018: fix terminating of frequency table arrays The frequency table arrays are supposed to be terminated with an empty element. Add such entry to the end of the arrays where it is missing in order to avoid possible out-of-bound access when the table is traversed by functions like qcom_find_freq() or qcom_find_freq_floor().
SSVC
Exploitation: none Automatable: no Technical Impact: partial
CISA Coordinator · CISA-ADP (v2.0.3)
Decision recorded 2024-05-01 13:37 UTC
Assigner
Impacted products
Vendor Product Version
Linux Linux Affected: e3fdbef1bab8e372981c8cc4d8febbaa76c490b0 , < b0cf3d200e8a72b6d28e6e088c062b4a98cb5eaf (git)
Affected: e3fdbef1bab8e372981c8cc4d8febbaa76c490b0 , < c8f4bef0667947b826848db1c45a645f751357c1 (git)
Affected: e3fdbef1bab8e372981c8cc4d8febbaa76c490b0 , < 50c3acd460551cdf9d8ac6fe0c04f2de0e8e0872 (git)
Affected: e3fdbef1bab8e372981c8cc4d8febbaa76c490b0 , < 90ad946fff70f312b8d23226afc38c13ddd88c4b (git)
Create a notification for this product.
Linux Linux Affected: 6.6
Unaffected: 0 , < 6.6 (semver)
Unaffected: 6.6.24 , ≤ 6.6.* (semver)
Unaffected: 6.7.12 , ≤ 6.7.* (semver)
Unaffected: 6.8.3 , ≤ 6.8.* (semver)
Unaffected: 6.9 , ≤ * (original_commit_for_fix)
Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "adp": [
      {
        "metrics": [
          {
            "other": {
              "content": {
                "id": "CVE-2024-26971",
                "options": [
                  {
                    "Exploitation": "none"
                  },
                  {
                    "Automatable": "no"
                  },
                  {
                    "Technical Impact": "partial"
                  }
                ],
                "role": "CISA Coordinator",
                "timestamp": "2024-05-01T13:37:17.172214Z",
                "version": "2.0.3"
              },
              "type": "ssvc"
            }
          }
        ],
        "providerMetadata": {
          "dateUpdated": "2024-07-05T17:22:44.592Z",
          "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
          "shortName": "CISA-ADP"
        },
        "title": "CISA ADP Vulnrichment"
      },
      {
        "providerMetadata": {
          "dateUpdated": "2024-08-02T00:21:05.667Z",
          "orgId": "af854a3a-2127-422b-91ae-364da2661108",
          "shortName": "CVE"
        },
        "references": [
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/b0cf3d200e8a72b6d28e6e088c062b4a98cb5eaf"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/c8f4bef0667947b826848db1c45a645f751357c1"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/50c3acd460551cdf9d8ac6fe0c04f2de0e8e0872"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/90ad946fff70f312b8d23226afc38c13ddd88c4b"
          }
        ],
        "title": "CVE Program Container"
      }
    ],
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/clk/qcom/gcc-ipq5018.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "b0cf3d200e8a72b6d28e6e088c062b4a98cb5eaf",
              "status": "affected",
              "version": "e3fdbef1bab8e372981c8cc4d8febbaa76c490b0",
              "versionType": "git"
            },
            {
              "lessThan": "c8f4bef0667947b826848db1c45a645f751357c1",
              "status": "affected",
              "version": "e3fdbef1bab8e372981c8cc4d8febbaa76c490b0",
              "versionType": "git"
            },
            {
              "lessThan": "50c3acd460551cdf9d8ac6fe0c04f2de0e8e0872",
              "status": "affected",
              "version": "e3fdbef1bab8e372981c8cc4d8febbaa76c490b0",
              "versionType": "git"
            },
            {
              "lessThan": "90ad946fff70f312b8d23226afc38c13ddd88c4b",
              "status": "affected",
              "version": "e3fdbef1bab8e372981c8cc4d8febbaa76c490b0",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/clk/qcom/gcc-ipq5018.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.6"
            },
            {
              "lessThan": "6.6",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.24",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.7.*",
              "status": "unaffected",
              "version": "6.7.12",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.8.*",
              "status": "unaffected",
              "version": "6.8.3",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.9",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6.24",
                  "versionStartIncluding": "6.6",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.7.12",
                  "versionStartIncluding": "6.6",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.8.3",
                  "versionStartIncluding": "6.6",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.9",
                  "versionStartIncluding": "6.6",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nclk: qcom: gcc-ipq5018: fix terminating of frequency table arrays\n\nThe frequency table arrays are supposed to be terminated with an\nempty element. Add such entry to the end of the arrays where it\nis missing in order to avoid possible out-of-bound access when\nthe table is traversed by functions like qcom_find_freq() or\nqcom_find_freq_floor()."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 7.3,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:L - The vulnerable code is an on-SoC global clock controller driver reached only through in-kernel `clk_set_rate()`/`clk_round_rate()` calls on the local device; no network protocol, packet, or remote peer data reaches the frequency-table walk.\nAC:L - The over-read is fully deterministic \u2014 any rate request exceeding the table\u0027s largest entry runs the loop off the array end with no race, timing window, or memory-layout precondition involved.\nPR:L - No real-root capability check guards the rate-setting path; the affected RCGs are re-programmed by consumer drivers on paths an unprivileged local user can provoke (device-node open triggering runtime-PM resume on the USB/PCIe controllers, QPIC/NAND I/O), so basic local user privileges are sufficient rather than init-namespace root.\nUI:N - The out-of-bounds walk occurs entirely within kernel clock-rate handling during normal driver operation; no victim must open a file, mount a filesystem, or take any other action.\nS:U - The over-read and its consequences stay within the kernel\u0027s own security authority \u2014 there is no VM, IOMMU, or sandbox boundary crossed.\nC:H - The loop performs an unbounded out-of-bounds read of kernel `.rodata` past the array, and the read `freq` field is propagated back as the clock rate visible through the clk debugfs/round-rate interfaces, so out-of-bounds kernel memory \u2014 potentially including relocated pointers usable to defeat KASLR \u2014 is disclosed; the read is not bounded to a few bytes.\nI:L - There is no out-of-bounds write and no kernel memory corruption \u2014 `src` is validated by `qcom_find_src_index()` and `m`/`n`/`pre_div` are masked before reaching hardware \u2014 but out-of-bounds-derived values are still programmed into the SoC\u0027s RCG clock-control registers, mis-configuring the PCIe/USB aux, QPIC NAND I/O-macro, or UBI32 core clocks and thereby corrupting data clocked through the NAND interface.\nA:H - With `IPQ_GCC_5018` built as a module the tables sit in vmalloc\u0027d module `.rodata`, so the runaway walk can hit an unmapped guard region and oops the kernel, and programming garbage divider/source values into the PCIe, USB, QPIC, or UBI32 clock RCGs can hang the affected peripheral or the SoC outright."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-05T11:28:46.226Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/b0cf3d200e8a72b6d28e6e088c062b4a98cb5eaf"
        },
        {
          "url": "https://git.kernel.org/stable/c/c8f4bef0667947b826848db1c45a645f751357c1"
        },
        {
          "url": "https://git.kernel.org/stable/c/50c3acd460551cdf9d8ac6fe0c04f2de0e8e0872"
        },
        {
          "url": "https://git.kernel.org/stable/c/90ad946fff70f312b8d23226afc38c13ddd88c4b"
        }
      ],
      "title": "clk: qcom: gcc-ipq5018: fix terminating of frequency table arrays",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2024-26971",
    "datePublished": "2024-05-01T05:19:59.773Z",
    "dateReserved": "2024-02-19T14:20:24.202Z",
    "dateUpdated": "2026-08-05T11:28:46.226Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2024-26971",
      "date": "2026-08-14",
      "epss": "0.0023",
      "percentile": "0.13957"
    },
    "fkie_nvd": {
      "descriptions": "[{\"lang\": \"en\", \"value\": \"In the Linux kernel, the following vulnerability has been resolved:\\n\\nclk: qcom: gcc-ipq5018: fix terminating of frequency table arrays\\n\\nThe frequency table arrays are supposed to be terminated with an\\nempty element. Add such entry to the end of the arrays where it\\nis missing in order to avoid possible out-of-bound access when\\nthe table is traversed by functions like qcom_find_freq() or\\nqcom_find_freq_floor().\"}, {\"lang\": \"es\", \"value\": \"En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: clk: qcom: gcc-ipq5018: correcci\\u00f3n de terminaci\\u00f3n de matrices de tablas de frecuencia Se supone que las matrices de tablas de frecuencia terminan con un elemento vac\\u00edo. Agregue dicha entrada al final de las matrices donde falta para evitar un posible acceso fuera de los l\\u00edmites cuando la tabla es atravesada por funciones como qcom_find_freq() o qcom_find_freq_floor().\"}]",
      "id": "CVE-2024-26971",
      "lastModified": "2024-11-21T09:03:31.260",
      "published": "2024-05-01T06:15:13.450",
      "references": "[{\"url\": \"https://git.kernel.org/stable/c/50c3acd460551cdf9d8ac6fe0c04f2de0e8e0872\", \"source\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}, {\"url\": \"https://git.kernel.org/stable/c/90ad946fff70f312b8d23226afc38c13ddd88c4b\", \"source\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}, {\"url\": \"https://git.kernel.org/stable/c/b0cf3d200e8a72b6d28e6e088c062b4a98cb5eaf\", \"source\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}, {\"url\": \"https://git.kernel.org/stable/c/c8f4bef0667947b826848db1c45a645f751357c1\", \"source\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}, {\"url\": \"https://git.kernel.org/stable/c/50c3acd460551cdf9d8ac6fe0c04f2de0e8e0872\", \"source\": \"af854a3a-2127-422b-91ae-364da2661108\"}, {\"url\": \"https://git.kernel.org/stable/c/90ad946fff70f312b8d23226afc38c13ddd88c4b\", \"source\": \"af854a3a-2127-422b-91ae-364da2661108\"}, {\"url\": \"https://git.kernel.org/stable/c/b0cf3d200e8a72b6d28e6e088c062b4a98cb5eaf\", \"source\": \"af854a3a-2127-422b-91ae-364da2661108\"}, {\"url\": \"https://git.kernel.org/stable/c/c8f4bef0667947b826848db1c45a645f751357c1\", \"source\": \"af854a3a-2127-422b-91ae-364da2661108\"}]",
      "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "vulnStatus": "Awaiting Analysis"
    },
    "nvd": "{\"cve\":{\"id\":\"CVE-2024-26971\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2024-05-01T06:15:13.450\",\"lastModified\":\"2026-08-04T11:17:29.420\",\"vulnStatus\":\"Modified\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nclk: qcom: gcc-ipq5018: fix terminating of frequency table arrays\\n\\nThe frequency table arrays are supposed to be terminated with an\\nempty element. Add such entry to the end of the arrays where it\\nis missing in order to avoid possible out-of-bound access when\\nthe table is traversed by functions like qcom_find_freq() or\\nqcom_find_freq_floor().\"},{\"lang\":\"es\",\"value\":\"En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: clk: qcom: gcc-ipq5018: correcci\u00f3n de terminaci\u00f3n de matrices de tablas de frecuencia Se supone que las matrices de tablas de frecuencia terminan con un elemento vac\u00edo. Agregue dicha entrada al final de las matrices donde falta para evitar un posible acceso fuera de los l\u00edmites cuando la tabla es atravesada por funciones como qcom_find_freq() o qcom_find_freq_floor().\"}],\"affected\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"affectedData\":[{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"unaffected\",\"programFiles\":[\"drivers/clk/qcom/gcc-ipq5018.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"e3fdbef1bab8e372981c8cc4d8febbaa76c490b0\",\"lessThan\":\"b0cf3d200e8a72b6d28e6e088c062b4a98cb5eaf\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"e3fdbef1bab8e372981c8cc4d8febbaa76c490b0\",\"lessThan\":\"c8f4bef0667947b826848db1c45a645f751357c1\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"e3fdbef1bab8e372981c8cc4d8febbaa76c490b0\",\"lessThan\":\"50c3acd460551cdf9d8ac6fe0c04f2de0e8e0872\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"e3fdbef1bab8e372981c8cc4d8febbaa76c490b0\",\"lessThan\":\"90ad946fff70f312b8d23226afc38c13ddd88c4b\",\"versionType\":\"git\",\"status\":\"affected\"}]},{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"affected\",\"programFiles\":[\"drivers/clk/qcom/gcc-ipq5018.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"6.6\",\"status\":\"affected\"},{\"version\":\"0\",\"lessThan\":\"6.6\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.6.24\",\"lessThanOrEqual\":\"6.6.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.7.12\",\"lessThanOrEqual\":\"6.7.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.8.3\",\"lessThanOrEqual\":\"6.8.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.9\",\"lessThanOrEqual\":\"*\",\"versionType\":\"original_commit_for_fix\",\"status\":\"unaffected\"}]}]}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"type\":\"Secondary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:H\",\"baseScore\":7.3,\"baseSeverity\":\"HIGH\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"LOW\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"HIGH\",\"integrityImpact\":\"LOW\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":1.8,\"impactScore\":5.5},{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H\",\"baseScore\":5.5,\"baseSeverity\":\"MEDIUM\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"LOW\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"NONE\",\"integrityImpact\":\"NONE\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":1.8,\"impactScore\":3.6}],\"ssvcV203\":[{\"source\":\"134c704f-9b21-4f2e-91b3-4a467353bcc0\",\"ssvcData\":{\"timestamp\":\"2024-05-01T13:37:17.172214Z\",\"id\":\"CVE-2024-26971\",\"options\":[{\"exploitation\":\"none\"},{\"automatable\":\"no\"},{\"technicalImpact\":\"partial\"}],\"role\":\"CISA Coordinator\",\"version\":\"2.0.3\"}}]},\"weaknesses\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"description\":[{\"lang\":\"en\",\"value\":\"CWE-129\"}]}],\"configurations\":[{\"nodes\":[{\"operator\":\"OR\",\"negate\":false,\"cpeMatch\":[{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"6.6\",\"versionEndExcluding\":\"6.6.24\",\"matchCriteriaId\":\"0A32A237-A8EE-4654-9BB7-94C95ED898F1\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"6.7\",\"versionEndExcluding\":\"6.7.12\",\"matchCriteriaId\":\"6BE9771A-BAFD-4624-95F9-58D536540C53\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"6.8\",\"versionEndExcluding\":\"6.8.3\",\"matchCriteriaId\":\"4C59BBC3-6495-4A77-9C82-55EC7CDF5E02\"}]}]}],\"references\":[{\"url\":\"https://git.kernel.org/stable/c/50c3acd460551cdf9d8ac6fe0c04f2de0e8e0872\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Mailing List\",\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/90ad946fff70f312b8d23226afc38c13ddd88c4b\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Mailing List\",\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/b0cf3d200e8a72b6d28e6e088c062b4a98cb5eaf\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Mailing List\",\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/c8f4bef0667947b826848db1c45a645f751357c1\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Mailing List\",\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/50c3acd460551cdf9d8ac6fe0c04f2de0e8e0872\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Mailing List\",\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/90ad946fff70f312b8d23226afc38c13ddd88c4b\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Mailing List\",\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/b0cf3d200e8a72b6d28e6e088c062b4a98cb5eaf\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Mailing List\",\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/c8f4bef0667947b826848db1c45a645f751357c1\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Mailing List\",\"Patch\"]}]}}",
    "redhat_vex": {
      "aggregate_severity": "Moderate",
      "current_release_date": "2026-08-04T19:08:06+00:00",
      "cve": "CVE-2024-26971",
      "id": "CVE-2024-26971",
      "initial_release_date": "2024-05-01T00:00:00+00:00",
      "product_status:known_not_affected": "198",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: clk: qcom: gcc-ipq5018: fix terminating of frequency table arrays",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2024/cve-2024-26971.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "moderate",
      "current_release_date": "2026-08-05T01:00:13Z",
      "cve": "CVE-2024-26971",
      "id": "CVE-2024-26971",
      "initial_release_date": "2024-05-03T02:09:46Z",
      "product_status:known_not_affected": "330",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2024-26971",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2024-26971.json",
      "version": "18"
    },
    "vulnrichment": {
      "containers": "{\"adp\": [{\"title\": \"CVE Program Container\", \"references\": [{\"url\": \"https://git.kernel.org/stable/c/b0cf3d200e8a72b6d28e6e088c062b4a98cb5eaf\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://git.kernel.org/stable/c/c8f4bef0667947b826848db1c45a645f751357c1\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://git.kernel.org/stable/c/50c3acd460551cdf9d8ac6fe0c04f2de0e8e0872\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://git.kernel.org/stable/c/90ad946fff70f312b8d23226afc38c13ddd88c4b\", \"tags\": [\"x_transferred\"]}], \"providerMetadata\": {\"orgId\": \"af854a3a-2127-422b-91ae-364da2661108\", \"shortName\": \"CVE\", \"dateUpdated\": \"2024-08-02T00:21:05.667Z\"}}, {\"title\": \"CISA ADP Vulnrichment\", \"metrics\": [{\"other\": {\"type\": \"ssvc\", \"content\": {\"id\": \"CVE-2024-26971\", \"role\": \"CISA Coordinator\", \"options\": [{\"Exploitation\": \"none\"}, {\"Automatable\": \"no\"}, {\"Technical Impact\": \"partial\"}], \"version\": \"2.0.3\", \"timestamp\": \"2024-05-01T13:37:17.172214Z\"}}}], \"providerMetadata\": {\"orgId\": \"134c704f-9b21-4f2e-91b3-4a467353bcc0\", \"shortName\": \"CISA-ADP\", \"dateUpdated\": \"2024-07-05T15:20:43.728Z\"}}], \"cna\": {\"title\": \"clk: qcom: gcc-ipq5018: fix terminating of frequency table arrays\", \"metrics\": [{\"cvssV3_1\": {\"version\": \"3.1\", \"baseScore\": 7.3, \"baseSeverity\": \"HIGH\", \"vectorString\": \"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:H\"}, \"scenarios\": [{\"lang\": \"en\", \"value\": \"AV:L - The vulnerable code is an on-SoC global clock controller driver reached only through in-kernel `clk_set_rate()`/`clk_round_rate()` calls on the local device; no network protocol, packet, or remote peer data reaches the frequency-table walk.\\nAC:L - The over-read is fully deterministic \\u2014 any rate request exceeding the table\u0027s largest entry runs the loop off the array end with no race, timing window, or memory-layout precondition involved.\\nPR:L - No real-root capability check guards the rate-setting path; the affected RCGs are re-programmed by consumer drivers on paths an unprivileged local user can provoke (device-node open triggering runtime-PM resume on the USB/PCIe controllers, QPIC/NAND I/O), so basic local user privileges are sufficient rather than init-namespace root.\\nUI:N - The out-of-bounds walk occurs entirely within kernel clock-rate handling during normal driver operation; no victim must open a file, mount a filesystem, or take any other action.\\nS:U - The over-read and its consequences stay within the kernel\u0027s own security authority \\u2014 there is no VM, IOMMU, or sandbox boundary crossed.\\nC:H - The loop performs an unbounded out-of-bounds read of kernel `.rodata` past the array, and the read `freq` field is propagated back as the clock rate visible through the clk debugfs/round-rate interfaces, so out-of-bounds kernel memory \\u2014 potentially including relocated pointers usable to defeat KASLR \\u2014 is disclosed; the read is not bounded to a few bytes.\\nI:L - There is no out-of-bounds write and no kernel memory corruption \\u2014 `src` is validated by `qcom_find_src_index()` and `m`/`n`/`pre_div` are masked before reaching hardware \\u2014 but out-of-bounds-derived values are still programmed into the SoC\u0027s RCG clock-control registers, mis-configuring the PCIe/USB aux, QPIC NAND I/O-macro, or UBI32 core clocks and thereby corrupting data clocked through the NAND interface.\\nA:H - With `IPQ_GCC_5018` built as a module the tables sit in vmalloc\u0027d module `.rodata`, so the runaway walk can hit an unmapped guard region and oops the kernel, and programming garbage divider/source values into the PCIe, USB, QPIC, or UBI32 clock RCGs can hang the affected peripheral or the SoC outright.\"}]}], \"affected\": [{\"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\", \"vendor\": \"Linux\", \"product\": \"Linux\", \"versions\": [{\"status\": \"affected\", \"version\": \"e3fdbef1bab8e372981c8cc4d8febbaa76c490b0\", \"lessThan\": \"b0cf3d200e8a72b6d28e6e088c062b4a98cb5eaf\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"e3fdbef1bab8e372981c8cc4d8febbaa76c490b0\", \"lessThan\": \"c8f4bef0667947b826848db1c45a645f751357c1\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"e3fdbef1bab8e372981c8cc4d8febbaa76c490b0\", \"lessThan\": \"50c3acd460551cdf9d8ac6fe0c04f2de0e8e0872\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"e3fdbef1bab8e372981c8cc4d8febbaa76c490b0\", \"lessThan\": \"90ad946fff70f312b8d23226afc38c13ddd88c4b\", \"versionType\": \"git\"}], \"programFiles\": [\"drivers/clk/qcom/gcc-ipq5018.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.6\"}, {\"status\": \"unaffected\", \"version\": \"0\", \"lessThan\": \"6.6\", \"versionType\": \"semver\"}, {\"status\": \"unaffected\", \"version\": \"6.6.24\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"6.6.*\"}, {\"status\": \"unaffected\", \"version\": \"6.7.12\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"6.7.*\"}, {\"status\": \"unaffected\", \"version\": \"6.8.3\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"6.8.*\"}, {\"status\": \"unaffected\", \"version\": \"6.9\", \"versionType\": \"original_commit_for_fix\", \"lessThanOrEqual\": \"*\"}], \"programFiles\": [\"drivers/clk/qcom/gcc-ipq5018.c\"], \"defaultStatus\": \"affected\"}], \"references\": [{\"url\": \"https://git.kernel.org/stable/c/b0cf3d200e8a72b6d28e6e088c062b4a98cb5eaf\"}, {\"url\": \"https://git.kernel.org/stable/c/c8f4bef0667947b826848db1c45a645f751357c1\"}, {\"url\": \"https://git.kernel.org/stable/c/50c3acd460551cdf9d8ac6fe0c04f2de0e8e0872\"}, {\"url\": \"https://git.kernel.org/stable/c/90ad946fff70f312b8d23226afc38c13ddd88c4b\"}], \"x_generator\": {\"engine\": \"bippy-1.2.0\"}, \"descriptions\": [{\"lang\": \"en\", \"value\": \"In the Linux kernel, the following vulnerability has been resolved:\\n\\nclk: qcom: gcc-ipq5018: fix terminating of frequency table arrays\\n\\nThe frequency table arrays are supposed to be terminated with an\\nempty element. Add such entry to the end of the arrays where it\\nis missing in order to avoid possible out-of-bound access when\\nthe table is traversed by functions like qcom_find_freq() or\\nqcom_find_freq_floor().\"}], \"cpeApplicability\": [{\"nodes\": [{\"negate\": false, \"cpeMatch\": [{\"criteria\": \"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\", \"vulnerable\": true, \"versionEndExcluding\": \"6.6.24\", \"versionStartIncluding\": \"6.6\"}, {\"criteria\": \"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\", \"vulnerable\": true, \"versionEndExcluding\": \"6.7.12\", \"versionStartIncluding\": \"6.6\"}, {\"criteria\": \"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\", \"vulnerable\": true, \"versionEndExcluding\": \"6.8.3\", \"versionStartIncluding\": \"6.6\"}, {\"criteria\": \"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\", \"vulnerable\": true, \"versionEndExcluding\": \"6.9\", \"versionStartIncluding\": \"6.6\"}], \"operator\": \"OR\"}]}], \"providerMetadata\": {\"orgId\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"shortName\": \"Linux\", \"dateUpdated\": \"2026-08-05T11:28:46.226Z\"}}}",
      "cveMetadata": "{\"cveId\": \"CVE-2024-26971\", \"state\": \"PUBLISHED\", \"dateUpdated\": \"2026-08-05T11:28:46.226Z\", \"dateReserved\": \"2024-02-19T14:20:24.202Z\", \"assignerOrgId\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"datePublished\": \"2024-05-01T05:19:59.773Z\", \"assignerShortName\": \"Linux\"}",
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }
  }
}



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…

Detection rules are retrieved from Rulezet.

Loading…

Loading…

Loading…