GCVE Workshop - 22 September 2026 (14:00-18:00), Luxembourg Before The Vulnopticon Conference - Registration

CVE-2025-38275 (GCVE-0-2025-38275)

Vulnerability from cvelistv5 – Published: 2025-07-10 07:41 – Updated: 2026-05-23 15:59
VLAI
Title
phy: qcom-qmp-usb: Fix an NULL vs IS_ERR() bug
Summary
In the Linux kernel, the following vulnerability has been resolved: phy: qcom-qmp-usb: Fix an NULL vs IS_ERR() bug The qmp_usb_iomap() helper function currently returns the raw result of devm_ioremap() for non-exclusive mappings. Since devm_ioremap() may return a NULL pointer and the caller only checks error pointers with IS_ERR(), NULL could bypass the check and lead to an invalid dereference. Fix the issue by checking if devm_ioremap() returns NULL. When it does, qmp_usb_iomap() now returns an error pointer via IOMEM_ERR_PTR(-ENOMEM), ensuring safe and consistent error handling.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: a5d6b1ac56cbd6b5850a3a54e35f1cb71e8e8cdd , < 0b979a409e40457ca1b5cb48755d1f34eee58805 (git)
Affected: a5d6b1ac56cbd6b5850a3a54e35f1cb71e8e8cdd , < 127dfb4f1c5a2b622039c5d203f321380ea36665 (git)
Affected: a5d6b1ac56cbd6b5850a3a54e35f1cb71e8e8cdd , < 5072c1749197fc28b27d7efc0d80320d7cac9572 (git)
Affected: a5d6b1ac56cbd6b5850a3a54e35f1cb71e8e8cdd , < 0c33117f00c8c5363c22676931b22ae5041f7603 (git)
Affected: a5d6b1ac56cbd6b5850a3a54e35f1cb71e8e8cdd , < d14402a38c2d868cacb1facaf9be908ca6558e59 (git)
Affected: 368ea32e0ad0335bdf3180067875a928e35387c6 (git)
Affected: 5.15.93 , < 5.16 (semver)
guessed Create a notification for this product.
Linux Linux Affected: 6.1
Unaffected: 0 , < 6.1 (semver)
Unaffected: 6.1.142 , ≤ 6.1.* (semver)
Unaffected: 6.6.94 , ≤ 6.6.* (semver)
Unaffected: 6.12.34 , ≤ 6.12.* (semver)
Unaffected: 6.15.3 , ≤ 6.15.* (semver)
Unaffected: 6.16 , ≤ * (original_commit_for_fix)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "adp": [
      {
        "providerMetadata": {
          "dateUpdated": "2025-11-03T17:36:09.044Z",
          "orgId": "af854a3a-2127-422b-91ae-364da2661108",
          "shortName": "CVE"
        },
        "references": [
          {
            "url": "https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html"
          }
        ],
        "title": "CVE Program Container"
      }
    ],
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/phy/qualcomm/phy-qcom-qmp-usb.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "0b979a409e40457ca1b5cb48755d1f34eee58805",
              "status": "affected",
              "version": "a5d6b1ac56cbd6b5850a3a54e35f1cb71e8e8cdd",
              "versionType": "git"
            },
            {
              "lessThan": "127dfb4f1c5a2b622039c5d203f321380ea36665",
              "status": "affected",
              "version": "a5d6b1ac56cbd6b5850a3a54e35f1cb71e8e8cdd",
              "versionType": "git"
            },
            {
              "lessThan": "5072c1749197fc28b27d7efc0d80320d7cac9572",
              "status": "affected",
              "version": "a5d6b1ac56cbd6b5850a3a54e35f1cb71e8e8cdd",
              "versionType": "git"
            },
            {
              "lessThan": "0c33117f00c8c5363c22676931b22ae5041f7603",
              "status": "affected",
              "version": "a5d6b1ac56cbd6b5850a3a54e35f1cb71e8e8cdd",
              "versionType": "git"
            },
            {
              "lessThan": "d14402a38c2d868cacb1facaf9be908ca6558e59",
              "status": "affected",
              "version": "a5d6b1ac56cbd6b5850a3a54e35f1cb71e8e8cdd",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "368ea32e0ad0335bdf3180067875a928e35387c6",
              "versionType": "git"
            },
            {
              "lessThan": "5.16",
              "status": "affected",
              "version": "5.15.93",
              "versionType": "semver"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/phy/qualcomm/phy-qcom-qmp-usb.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.1"
            },
            {
              "lessThan": "6.1",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.1.*",
              "status": "unaffected",
              "version": "6.1.142",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.94",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.34",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.15.*",
              "status": "unaffected",
              "version": "6.15.3",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.16",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1.142",
                  "versionStartIncluding": "6.1",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6.94",
                  "versionStartIncluding": "6.1",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.34",
                  "versionStartIncluding": "6.1",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.15.3",
                  "versionStartIncluding": "6.1",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.16",
                  "versionStartIncluding": "6.1",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionStartIncluding": "5.15.93",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nphy: qcom-qmp-usb: Fix an NULL vs IS_ERR() bug\n\nThe qmp_usb_iomap() helper function currently returns the raw result of\ndevm_ioremap() for non-exclusive mappings. Since devm_ioremap() may return\na NULL pointer and the caller only checks error pointers with IS_ERR(),\nNULL could bypass the check and lead to an invalid dereference.\n\nFix the issue by checking if devm_ioremap() returns NULL. When it does,\nqmp_usb_iomap() now returns an error pointer via IOMEM_ERR_PTR(-ENOMEM),\nensuring safe and consistent error handling."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-05-23T15:59:19.082Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/0b979a409e40457ca1b5cb48755d1f34eee58805"
        },
        {
          "url": "https://git.kernel.org/stable/c/127dfb4f1c5a2b622039c5d203f321380ea36665"
        },
        {
          "url": "https://git.kernel.org/stable/c/5072c1749197fc28b27d7efc0d80320d7cac9572"
        },
        {
          "url": "https://git.kernel.org/stable/c/0c33117f00c8c5363c22676931b22ae5041f7603"
        },
        {
          "url": "https://git.kernel.org/stable/c/d14402a38c2d868cacb1facaf9be908ca6558e59"
        }
      ],
      "title": "phy: qcom-qmp-usb: Fix an NULL vs IS_ERR() bug",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2025-38275",
    "datePublished": "2025-07-10T07:41:55.658Z",
    "dateReserved": "2025-04-16T04:51:23.998Z",
    "dateUpdated": "2026-05-23T15:59:19.082Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2025-38275",
      "date": "2026-09-19",
      "epss": "0.00182",
      "percentile": "0.08056"
    },
    "microsoft_vex": {
      "current_release_date": "2026-02-18T15:07:57.000Z",
      "cve": "CVE-2025-38275",
      "id": "msrc_CVE-2025-38275",
      "initial_release_date": "2025-07-02T00:00:00.000Z",
      "product_status:fixed": "1",
      "product_status:known_affected": "1",
      "product_status:known_not_affected": "1",
      "source": "Microsoft CSAF VEX",
      "status": "final",
      "title": "phy: qcom-qmp-usb: Fix an NULL vs IS_ERR() bug",
      "url": "https://msrc.microsoft.com/csaf/vex/2025/msrc_cve-2025-38275.json",
      "version": "4"
    },
    "nvd": {
      "cve": {
        "affected": [
          {
            "affectedData": [
              {
                "defaultStatus": "unaffected",
                "product": "Linux",
                "programFiles": [
                  "drivers/phy/qualcomm/phy-qcom-qmp-usb.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "lessThan": "0b979a409e40457ca1b5cb48755d1f34eee58805",
                    "status": "affected",
                    "version": "a5d6b1ac56cbd6b5850a3a54e35f1cb71e8e8cdd",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "127dfb4f1c5a2b622039c5d203f321380ea36665",
                    "status": "affected",
                    "version": "a5d6b1ac56cbd6b5850a3a54e35f1cb71e8e8cdd",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "5072c1749197fc28b27d7efc0d80320d7cac9572",
                    "status": "affected",
                    "version": "a5d6b1ac56cbd6b5850a3a54e35f1cb71e8e8cdd",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "0c33117f00c8c5363c22676931b22ae5041f7603",
                    "status": "affected",
                    "version": "a5d6b1ac56cbd6b5850a3a54e35f1cb71e8e8cdd",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "d14402a38c2d868cacb1facaf9be908ca6558e59",
                    "status": "affected",
                    "version": "a5d6b1ac56cbd6b5850a3a54e35f1cb71e8e8cdd",
                    "versionType": "git"
                  },
                  {
                    "status": "affected",
                    "version": "368ea32e0ad0335bdf3180067875a928e35387c6",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "5.16",
                    "status": "affected",
                    "version": "5.15.93",
                    "versionType": "semver"
                  }
                ]
              },
              {
                "defaultStatus": "affected",
                "product": "Linux",
                "programFiles": [
                  "drivers/phy/qualcomm/phy-qcom-qmp-usb.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "status": "affected",
                    "version": "6.1"
                  },
                  {
                    "lessThan": "6.1",
                    "status": "unaffected",
                    "version": "0",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.1.*",
                    "status": "unaffected",
                    "version": "6.1.142",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.6.*",
                    "status": "unaffected",
                    "version": "6.6.94",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.12.*",
                    "status": "unaffected",
                    "version": "6.12.34",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.15.*",
                    "status": "unaffected",
                    "version": "6.15.3",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "*",
                    "status": "unaffected",
                    "version": "6.16",
                    "versionType": "original_commit_for_fix"
                  }
                ]
              }
            ],
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
          }
        ],
        "configurations": [
          {
            "nodes": [
              {
                "cpeMatch": [
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                    "matchCriteriaId": "46C6B846-C614-4731-81B1-49AB1C2842F6",
                    "versionEndExcluding": "5.16",
                    "versionStartIncluding": "5.15.93",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                    "matchCriteriaId": "7A6092F0-062E-4207-B5C9-7BE098FBC646",
                    "versionEndExcluding": "6.1.142",
                    "versionStartIncluding": "6.1",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                    "matchCriteriaId": "304E3F01-7D7A-4908-994E-7F95C5C00B06",
                    "versionEndExcluding": "6.6.94",
                    "versionStartIncluding": "6.2",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                    "matchCriteriaId": "4FFA54AA-CDFE-4591-BD07-72813D0948F4",
                    "versionEndExcluding": "6.12.34",
                    "versionStartIncluding": "6.7",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                    "matchCriteriaId": "0541C761-BD5E-4C1A-8432-83B375D7EB92",
                    "versionEndExcluding": "6.15.3",
                    "versionStartIncluding": "6.13",
                    "vulnerable": true
                  }
                ],
                "negate": false,
                "operator": "OR"
              }
            ]
          },
          {
            "nodes": [
              {
                "cpeMatch": [
                  {
                    "criteria": "cpe:2.3:o:debian:debian_linux:11.0:*:*:*:*:*:*:*",
                    "matchCriteriaId": "FA6FEEC2-9F11-4643-8827-749718254FED",
                    "vulnerable": true
                  }
                ],
                "negate": false,
                "operator": "OR"
              }
            ]
          }
        ],
        "cveTags": [],
        "descriptions": [
          {
            "lang": "en",
            "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nphy: qcom-qmp-usb: Fix an NULL vs IS_ERR() bug\n\nThe qmp_usb_iomap() helper function currently returns the raw result of\ndevm_ioremap() for non-exclusive mappings. Since devm_ioremap() may return\na NULL pointer and the caller only checks error pointers with IS_ERR(),\nNULL could bypass the check and lead to an invalid dereference.\n\nFix the issue by checking if devm_ioremap() returns NULL. When it does,\nqmp_usb_iomap() now returns an error pointer via IOMEM_ERR_PTR(-ENOMEM),\nensuring safe and consistent error handling."
          },
          {
            "lang": "es",
            "value": "En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: phy: qcom-qmp-usb: Se corrige un error de NULL frente a IS_ERR(). La funci\u00f3n auxiliar qmp_usb_iomap() actualmente devuelve el resultado sin procesar de devm_ioremap() para asignaciones no exclusivas. Dado que devm_ioremap() puede devolver un puntero NULL y el llamador solo comprueba los punteros de error con IS_ERR(), NULL podr\u00eda omitir la comprobaci\u00f3n y provocar una desreferencia no v\u00e1lida. Corrija el problema comprobando si devm_ioremap() devuelve NULL. Cuando lo hace, qmp_usb_iomap() ahora devuelve un puntero de error mediante IOMEM_ERR_PTR(-ENOMEM), lo que garantiza un manejo de errores seguro y consistente."
          }
        ],
        "id": "CVE-2025-38275",
        "lastModified": "2026-06-17T09:16:31.833",
        "metrics": {
          "cvssMetricV31": [
            {
              "cvssData": {
                "attackComplexity": "LOW",
                "attackVector": "LOCAL",
                "availabilityImpact": "HIGH",
                "baseScore": 5.5,
                "baseSeverity": "MEDIUM",
                "confidentialityImpact": "NONE",
                "integrityImpact": "NONE",
                "privilegesRequired": "LOW",
                "scope": "UNCHANGED",
                "userInteraction": "NONE",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H",
                "version": "3.1"
              },
              "exploitabilityScore": 1.8,
              "impactScore": 3.6,
              "source": "nvd@nist.gov",
              "type": "Primary"
            }
          ]
        },
        "published": "2025-07-10T08:15:25.770",
        "references": [
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/0b979a409e40457ca1b5cb48755d1f34eee58805"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/0c33117f00c8c5363c22676931b22ae5041f7603"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/127dfb4f1c5a2b622039c5d203f321380ea36665"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/5072c1749197fc28b27d7efc0d80320d7cac9572"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/d14402a38c2d868cacb1facaf9be908ca6558e59"
          },
          {
            "source": "af854a3a-2127-422b-91ae-364da2661108",
            "tags": [
              "Mailing List",
              "Third Party Advisory"
            ],
            "url": "https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html"
          }
        ],
        "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "vulnStatus": "Analyzed",
        "weaknesses": [
          {
            "description": [
              {
                "lang": "en",
                "value": "CWE-476"
              }
            ],
            "source": "nvd@nist.gov",
            "type": "Primary"
          }
        ]
      }
    },
    "redhat_vex": {
      "aggregate_severity": "Moderate",
      "current_release_date": "2026-06-30T01:00:08+00:00",
      "cve": "CVE-2025-38275",
      "id": "CVE-2025-38275",
      "initial_release_date": "2025-07-10T00:00:00+00:00",
      "product_status:fixed": "309",
      "product_status:known_not_affected": "198",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: phy: qcom-qmp-usb: Fix an NULL vs IS_ERR() bug",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2025/cve-2025-38275.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "moderate",
      "current_release_date": "2026-09-11T02:01:25Z",
      "cve": "CVE-2025-38275",
      "id": "CVE-2025-38275",
      "initial_release_date": "2025-07-10T23:23:36Z",
      "product_status:first_fixed": "2",
      "product_status:known_affected": "394",
      "product_status:known_not_affected": "442",
      "product_status:recommended": "472",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2025-38275",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2025-38275.json",
      "version": "46"
    }
  }
}



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…

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…