CVE-2025-40113 (GCVE-0-2025-40113)

Vulnerability from cvelistv5 – Published: 2025-11-12 10:23 – Updated: 2025-12-01 06:18
VLAI?
Summary
In the Linux kernel, the following vulnerability has been resolved: remoteproc: qcom: pas: Shutdown lite ADSP DTB on X1E The ADSP firmware on X1E has separate firmware binaries for the main firmware and the DTB. The same applies for the "lite" firmware loaded by the boot firmware. When preparing to load the new ADSP firmware we shutdown the lite_pas_id for the main firmware, but we don't shutdown the corresponding lite pas_id for the DTB. The fact that we're leaving it "running" forever becomes obvious if you try to reuse (or just access) the memory region used by the "lite" firmware: The &adsp_boot_mem is accessible, but accessing the &adsp_boot_dtb_mem results in a crash. We don't support reusing the memory regions currently, but nevertheless we should not keep part of the lite firmware running. Fix this by adding the lite_dtb_pas_id and shutting it down as well. We don't have a way to detect if the lite firmware is actually running yet, so ignore the return status of qcom_scm_pas_shutdown() for now. This was already the case before, the assignment to "ret" is not used anywhere.
Severity ?
No CVSS data available.
Assigner
Impacted products
Vendor Product Version
Linux Linux Affected: 62210f7509e13a2caa7b080722a45229b8f17a0a , < ee150acd273aded01a726ce39b1f6128200799e6 (git)
Affected: 62210f7509e13a2caa7b080722a45229b8f17a0a , < 142964960c7c35de5c5f7bdd61c32699de693630 (git)
Create a notification for this product.
    Linux Linux Affected: 6.9
Unaffected: 0 , < 6.9 (semver)
Unaffected: 6.17.3 , ≤ 6.17.* (semver)
Unaffected: 6.18 , ≤ * (original_commit_for_fix)
Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/remoteproc/qcom_q6v5_pas.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "ee150acd273aded01a726ce39b1f6128200799e6",
              "status": "affected",
              "version": "62210f7509e13a2caa7b080722a45229b8f17a0a",
              "versionType": "git"
            },
            {
              "lessThan": "142964960c7c35de5c5f7bdd61c32699de693630",
              "status": "affected",
              "version": "62210f7509e13a2caa7b080722a45229b8f17a0a",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/remoteproc/qcom_q6v5_pas.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.9"
            },
            {
              "lessThan": "6.9",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.17.*",
              "status": "unaffected",
              "version": "6.17.3",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.18",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.17.3",
                  "versionStartIncluding": "6.9",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18",
                  "versionStartIncluding": "6.9",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nremoteproc: qcom: pas: Shutdown lite ADSP DTB on X1E\n\nThe ADSP firmware on X1E has separate firmware binaries for the main\nfirmware and the DTB. The same applies for the \"lite\" firmware loaded by\nthe boot firmware.\n\nWhen preparing to load the new ADSP firmware we shutdown the lite_pas_id\nfor the main firmware, but we don\u0027t shutdown the corresponding lite pas_id\nfor the DTB. The fact that we\u0027re leaving it \"running\" forever becomes\nobvious if you try to reuse (or just access) the memory region used by the\n\"lite\" firmware: The \u0026adsp_boot_mem is accessible, but accessing the\n\u0026adsp_boot_dtb_mem results in a crash.\n\nWe don\u0027t support reusing the memory regions currently, but nevertheless we\nshould not keep part of the lite firmware running. Fix this by adding the\nlite_dtb_pas_id and shutting it down as well.\n\nWe don\u0027t have a way to detect if the lite firmware is actually running yet,\nso ignore the return status of qcom_scm_pas_shutdown() for now. This was\nalready the case before, the assignment to \"ret\" is not used anywhere."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2025-12-01T06:18:17.157Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/ee150acd273aded01a726ce39b1f6128200799e6"
        },
        {
          "url": "https://git.kernel.org/stable/c/142964960c7c35de5c5f7bdd61c32699de693630"
        }
      ],
      "title": "remoteproc: qcom: pas: Shutdown lite ADSP DTB on X1E",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2025-40113",
    "datePublished": "2025-11-12T10:23:16.992Z",
    "dateReserved": "2025-04-16T07:20:57.168Z",
    "dateUpdated": "2025-12-01T06:18:17.157Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "nvd": "{\"cve\":{\"id\":\"CVE-2025-40113\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2025-11-12T11:15:40.637\",\"lastModified\":\"2025-11-12T16:19:12.850\",\"vulnStatus\":\"Awaiting Analysis\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nremoteproc: qcom: pas: Shutdown lite ADSP DTB on X1E\\n\\nThe ADSP firmware on X1E has separate firmware binaries for the main\\nfirmware and the DTB. The same applies for the \\\"lite\\\" firmware loaded by\\nthe boot firmware.\\n\\nWhen preparing to load the new ADSP firmware we shutdown the lite_pas_id\\nfor the main firmware, but we don\u0027t shutdown the corresponding lite pas_id\\nfor the DTB. The fact that we\u0027re leaving it \\\"running\\\" forever becomes\\nobvious if you try to reuse (or just access) the memory region used by the\\n\\\"lite\\\" firmware: The \u0026adsp_boot_mem is accessible, but accessing the\\n\u0026adsp_boot_dtb_mem results in a crash.\\n\\nWe don\u0027t support reusing the memory regions currently, but nevertheless we\\nshould not keep part of the lite firmware running. Fix this by adding the\\nlite_dtb_pas_id and shutting it down as well.\\n\\nWe don\u0027t have a way to detect if the lite firmware is actually running yet,\\nso ignore the return status of qcom_scm_pas_shutdown() for now. This was\\nalready the case before, the assignment to \\\"ret\\\" is not used anywhere.\"}],\"metrics\":{},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/142964960c7c35de5c5f7bdd61c32699de693630\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/ee150acd273aded01a726ce39b1f6128200799e6\",\"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 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…