CVE-2025-23158 (GCVE-0-2025-23158)
Vulnerability from cvelistv5
Published
2025-05-01 12:55
Modified
2025-05-26 05:19
Severity ?
Summary
In the Linux kernel, the following vulnerability has been resolved: media: venus: hfi: add check to handle incorrect queue size qsize represents size of shared queued between driver and video firmware. Firmware can modify this value to an invalid large value. In such situation, empty_space will be bigger than the space actually available. Since new_wr_idx is not checked, so the following code will result in an OOB write. ... qsize = qhdr->q_size if (wr_idx >= rd_idx) empty_space = qsize - (wr_idx - rd_idx) .... if (new_wr_idx < qsize) { memcpy(wr_ptr, packet, dwords << 2) --> OOB write Add check to ensure qsize is within the allocated size while reading and writing packets into the queue.
Impacted products
Vendor Product Version
Linux Linux Version: d96d3f30c0f2f564f6922bf4ccdf4464992e31fb
Version: d96d3f30c0f2f564f6922bf4ccdf4464992e31fb
Version: d96d3f30c0f2f564f6922bf4ccdf4464992e31fb
Version: d96d3f30c0f2f564f6922bf4ccdf4464992e31fb
Version: d96d3f30c0f2f564f6922bf4ccdf4464992e31fb
Version: d96d3f30c0f2f564f6922bf4ccdf4464992e31fb
Version: d96d3f30c0f2f564f6922bf4ccdf4464992e31fb
Version: d96d3f30c0f2f564f6922bf4ccdf4464992e31fb
Version: d96d3f30c0f2f564f6922bf4ccdf4464992e31fb
Create a notification for this product.
Show details on NVD website


{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/media/platform/qcom/venus/hfi_venus.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "1b86c1917e16bafbbb08ab90baaff533aa36c62d",
              "status": "affected",
              "version": "d96d3f30c0f2f564f6922bf4ccdf4464992e31fb",
              "versionType": "git"
            },
            {
              "lessThan": "a45957bcde529169188929816775a575de77d84f",
              "status": "affected",
              "version": "d96d3f30c0f2f564f6922bf4ccdf4464992e31fb",
              "versionType": "git"
            },
            {
              "lessThan": "32af5c1fdb9bc274f52ee0472d3b060b18e4aab4",
              "status": "affected",
              "version": "d96d3f30c0f2f564f6922bf4ccdf4464992e31fb",
              "versionType": "git"
            },
            {
              "lessThan": "cf5f7bb4e0d786f4d9d50ae6b5963935eab71d75",
              "status": "affected",
              "version": "d96d3f30c0f2f564f6922bf4ccdf4464992e31fb",
              "versionType": "git"
            },
            {
              "lessThan": "40084302f639b3fe954398c5ba5ee556b7242b54",
              "status": "affected",
              "version": "d96d3f30c0f2f564f6922bf4ccdf4464992e31fb",
              "versionType": "git"
            },
            {
              "lessThan": "679424f8b31446f90080befd0300ea915485b096",
              "status": "affected",
              "version": "d96d3f30c0f2f564f6922bf4ccdf4464992e31fb",
              "versionType": "git"
            },
            {
              "lessThan": "edb89d69b1438681daaf5ca90aed3242df94cc96",
              "status": "affected",
              "version": "d96d3f30c0f2f564f6922bf4ccdf4464992e31fb",
              "versionType": "git"
            },
            {
              "lessThan": "101a86619aab42bb61f2253bbf720121022eab86",
              "status": "affected",
              "version": "d96d3f30c0f2f564f6922bf4ccdf4464992e31fb",
              "versionType": "git"
            },
            {
              "lessThan": "69baf245b23e20efda0079238b27fc63ecf13de1",
              "status": "affected",
              "version": "d96d3f30c0f2f564f6922bf4ccdf4464992e31fb",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/media/platform/qcom/venus/hfi_venus.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "4.13"
            },
            {
              "lessThan": "4.13",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.4.*",
              "status": "unaffected",
              "version": "5.4.293",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.10.*",
              "status": "unaffected",
              "version": "5.10.237",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.15.*",
              "status": "unaffected",
              "version": "5.15.181",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.1.*",
              "status": "unaffected",
              "version": "6.1.135",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.88",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.24",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.13.*",
              "status": "unaffected",
              "version": "6.13.12",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.14.*",
              "status": "unaffected",
              "version": "6.14.3",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.15",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.4.293",
                  "versionStartIncluding": "4.13",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.10.237",
                  "versionStartIncluding": "4.13",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "5.15.181",
                  "versionStartIncluding": "4.13",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1.135",
                  "versionStartIncluding": "4.13",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6.88",
                  "versionStartIncluding": "4.13",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.24",
                  "versionStartIncluding": "4.13",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.13.12",
                  "versionStartIncluding": "4.13",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.14.3",
                  "versionStartIncluding": "4.13",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.15",
                  "versionStartIncluding": "4.13",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nmedia: venus: hfi: add check to handle incorrect queue size\n\nqsize represents size of shared queued between driver and video\nfirmware. Firmware can modify this value to an invalid large value. In\nsuch situation, empty_space will be bigger than the space actually\navailable. Since new_wr_idx is not checked, so the following code will\nresult in an OOB write.\n...\nqsize = qhdr-\u003eq_size\n\nif (wr_idx \u003e= rd_idx)\n empty_space = qsize - (wr_idx - rd_idx)\n....\nif (new_wr_idx \u003c qsize) {\n memcpy(wr_ptr, packet, dwords \u003c\u003c 2) --\u003e OOB write\n\nAdd check to ensure qsize is within the allocated size while\nreading and writing packets into the queue."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2025-05-26T05:19:41.987Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/1b86c1917e16bafbbb08ab90baaff533aa36c62d"
        },
        {
          "url": "https://git.kernel.org/stable/c/a45957bcde529169188929816775a575de77d84f"
        },
        {
          "url": "https://git.kernel.org/stable/c/32af5c1fdb9bc274f52ee0472d3b060b18e4aab4"
        },
        {
          "url": "https://git.kernel.org/stable/c/cf5f7bb4e0d786f4d9d50ae6b5963935eab71d75"
        },
        {
          "url": "https://git.kernel.org/stable/c/40084302f639b3fe954398c5ba5ee556b7242b54"
        },
        {
          "url": "https://git.kernel.org/stable/c/679424f8b31446f90080befd0300ea915485b096"
        },
        {
          "url": "https://git.kernel.org/stable/c/edb89d69b1438681daaf5ca90aed3242df94cc96"
        },
        {
          "url": "https://git.kernel.org/stable/c/101a86619aab42bb61f2253bbf720121022eab86"
        },
        {
          "url": "https://git.kernel.org/stable/c/69baf245b23e20efda0079238b27fc63ecf13de1"
        }
      ],
      "title": "media: venus: hfi: add check to handle incorrect queue size",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2025-23158",
    "datePublished": "2025-05-01T12:55:43.804Z",
    "dateReserved": "2025-01-11T14:28:41.515Z",
    "dateUpdated": "2025-05-26T05:19:41.987Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.1",
  "vulnerability-lookup:meta": {
    "nvd": "{\"cve\":{\"id\":\"CVE-2025-23158\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2025-05-01T13:15:51.733\",\"lastModified\":\"2025-05-02T13:53:20.943\",\"vulnStatus\":\"Awaiting Analysis\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nmedia: venus: hfi: add check to handle incorrect queue size\\n\\nqsize represents size of shared queued between driver and video\\nfirmware. Firmware can modify this value to an invalid large value. In\\nsuch situation, empty_space will be bigger than the space actually\\navailable. Since new_wr_idx is not checked, so the following code will\\nresult in an OOB write.\\n...\\nqsize = qhdr-\u003eq_size\\n\\nif (wr_idx \u003e= rd_idx)\\n empty_space = qsize - (wr_idx - rd_idx)\\n....\\nif (new_wr_idx \u003c qsize) {\\n memcpy(wr_ptr, packet, dwords \u003c\u003c 2) --\u003e OOB write\\n\\nAdd check to ensure qsize is within the allocated size while\\nreading and writing packets into the queue.\"},{\"lang\":\"es\",\"value\":\"En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: media: venus: hfi: se ha a\u00f1adido una comprobaci\u00f3n para gestionar el tama\u00f1o incorrecto de queue size qsize representa el tama\u00f1o de la cola compartida entre el controlador y el firmware de v\u00eddeo. El firmware puede modificar este valor a un valor grande no v\u00e1lido. En tal situaci\u00f3n, el espacio vac\u00edo ser\u00e1 mayor que el espacio realmente disponible. Dado que new_wr_idx no se comprueba, el siguiente c\u00f3digo resultar\u00e1 en una escritura fuera de banda (OOB). ... qsize = qhdr-\u0026gt;q_size if (wr_idx \u0026gt;= rd_idx) empty_space = qsize - (wr_idx - rd_idx) .... if (new_wr_idx \u0026lt; qsize) { memcpy(wr_ptr, packet, dwords \u0026lt;\u0026lt; 2) --\u0026gt; Escritura fuera de banda (OOB). Se ha a\u00f1adido una comprobaci\u00f3n para garantizar que qsize se encuentre dentro del tama\u00f1o asignado al leer y escribir paquetes en la cola.\"}],\"metrics\":{},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/101a86619aab42bb61f2253bbf720121022eab86\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/1b86c1917e16bafbbb08ab90baaff533aa36c62d\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/32af5c1fdb9bc274f52ee0472d3b060b18e4aab4\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/40084302f639b3fe954398c5ba5ee556b7242b54\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/679424f8b31446f90080befd0300ea915485b096\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/69baf245b23e20efda0079238b27fc63ecf13de1\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/a45957bcde529169188929816775a575de77d84f\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/cf5f7bb4e0d786f4d9d50ae6b5963935eab71d75\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/edb89d69b1438681daaf5ca90aed3242df94cc96\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]}}"
  }
}


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.
  • 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…