CVE-2025-38451 (GCVE-0-2025-38451)
Vulnerability from cvelistv5
Published
2025-07-25 15:27
Modified
2025-07-28 04:22
Severity ?
VLAI Severity ?
EPSS score ?
Summary
In the Linux kernel, the following vulnerability has been resolved:
md/md-bitmap: fix GPF in bitmap_get_stats()
The commit message of commit 6ec1f0239485 ("md/md-bitmap: fix stats
collection for external bitmaps") states:
Remove the external bitmap check as the statistics should be
available regardless of bitmap storage location.
Return -EINVAL only for invalid bitmap with no storage (neither in
superblock nor in external file).
But, the code does not adhere to the above, as it does only check for
a valid super-block for "internal" bitmaps. Hence, we observe:
Oops: GPF, probably for non-canonical address 0x1cd66f1f40000028
RIP: 0010:bitmap_get_stats+0x45/0xd0
Call Trace:
seq_read_iter+0x2b9/0x46a
seq_read+0x12f/0x180
proc_reg_read+0x57/0xb0
vfs_read+0xf6/0x380
ksys_read+0x6d/0xf0
do_syscall_64+0x8c/0x1b0
entry_SYSCALL_64_after_hwframe+0x76/0x7e
We fix this by checking the existence of a super-block for both the
internal and external case.
References
Impacted products
Vendor | Product | Version | ||
---|---|---|---|---|
► | Linux | Linux |
Version: 065f4b1cd41d03702426af44193894b925607073 Version: 0b5390aeaa85eb2f15e0e2ea0731c0995285db5e Version: eeeba7f43ae27835718a5f5ad6552a8983e75201 Version: 6ec1f0239485028445d213d91cfee5242f3211ba Version: 6ec1f0239485028445d213d91cfee5242f3211ba Version: 896a6fbefc9050cf940ed57947eda6dc23aa58b0 |
|
{ "containers": { "cna": { "affected": [ { "defaultStatus": "unaffected", "product": "Linux", "programFiles": [ "drivers/md/md-bitmap.c" ], "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git", "vendor": "Linux", "versions": [ { "lessThan": "a23b16ba3274961494f5ad236345d238364349ff", "status": "affected", "version": "065f4b1cd41d03702426af44193894b925607073", "versionType": "git" }, { "lessThan": "3d82a729530bd2110ba66e4a1f73461c776edec2", "status": "affected", "version": "0b5390aeaa85eb2f15e0e2ea0731c0995285db5e", "versionType": "git" }, { "lessThan": "3e0542701b37aa25b025d8531583458e4f014c2e", "status": "affected", "version": "eeeba7f43ae27835718a5f5ad6552a8983e75201", "versionType": "git" }, { "lessThan": "a18f9b08c70e10ea3a897058fee8a4f3b4c146ec", "status": "affected", "version": "6ec1f0239485028445d213d91cfee5242f3211ba", "versionType": "git" }, { "lessThan": "c17fb542dbd1db745c9feac15617056506dd7195", "status": "affected", "version": "6ec1f0239485028445d213d91cfee5242f3211ba", "versionType": "git" }, { "status": "affected", "version": "896a6fbefc9050cf940ed57947eda6dc23aa58b0", "versionType": "git" } ] }, { "defaultStatus": "affected", "product": "Linux", "programFiles": [ "drivers/md/md-bitmap.c" ], "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git", "vendor": "Linux", "versions": [ { "status": "affected", "version": "6.15" }, { "lessThan": "6.15", "status": "unaffected", "version": "0", "versionType": "semver" }, { "lessThanOrEqual": "6.1.*", "status": "unaffected", "version": "6.1.146", "versionType": "semver" }, { "lessThanOrEqual": "6.6.*", "status": "unaffected", "version": "6.6.99", "versionType": "semver" }, { "lessThanOrEqual": "6.12.*", "status": "unaffected", "version": "6.12.39", "versionType": "semver" }, { "lessThanOrEqual": "6.15.*", "status": "unaffected", "version": "6.15.7", "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.146", "versionStartIncluding": "6.1.135", "vulnerable": true }, { "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionEndExcluding": "6.6.99", "versionStartIncluding": "6.6.88", "vulnerable": true }, { "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionEndExcluding": "6.12.39", "versionStartIncluding": "6.12.25", "vulnerable": true }, { "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionEndExcluding": "6.15.7", "versionStartIncluding": "6.15", "vulnerable": true }, { "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionEndExcluding": "6.16", "versionStartIncluding": "6.15", "vulnerable": true }, { "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "6.14.4", "vulnerable": true } ], "negate": false, "operator": "OR" } ] } ], "descriptions": [ { "lang": "en", "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nmd/md-bitmap: fix GPF in bitmap_get_stats()\n\nThe commit message of commit 6ec1f0239485 (\"md/md-bitmap: fix stats\ncollection for external bitmaps\") states:\n\n Remove the external bitmap check as the statistics should be\n available regardless of bitmap storage location.\n\n Return -EINVAL only for invalid bitmap with no storage (neither in\n superblock nor in external file).\n\nBut, the code does not adhere to the above, as it does only check for\na valid super-block for \"internal\" bitmaps. Hence, we observe:\n\nOops: GPF, probably for non-canonical address 0x1cd66f1f40000028\nRIP: 0010:bitmap_get_stats+0x45/0xd0\nCall Trace:\n\n seq_read_iter+0x2b9/0x46a\n seq_read+0x12f/0x180\n proc_reg_read+0x57/0xb0\n vfs_read+0xf6/0x380\n ksys_read+0x6d/0xf0\n do_syscall_64+0x8c/0x1b0\n entry_SYSCALL_64_after_hwframe+0x76/0x7e\n\nWe fix this by checking the existence of a super-block for both the\ninternal and external case." } ], "providerMetadata": { "dateUpdated": "2025-07-28T04:22:42.774Z", "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67", "shortName": "Linux" }, "references": [ { "url": "https://git.kernel.org/stable/c/a23b16ba3274961494f5ad236345d238364349ff" }, { "url": "https://git.kernel.org/stable/c/3d82a729530bd2110ba66e4a1f73461c776edec2" }, { "url": "https://git.kernel.org/stable/c/3e0542701b37aa25b025d8531583458e4f014c2e" }, { "url": "https://git.kernel.org/stable/c/a18f9b08c70e10ea3a897058fee8a4f3b4c146ec" }, { "url": "https://git.kernel.org/stable/c/c17fb542dbd1db745c9feac15617056506dd7195" } ], "title": "md/md-bitmap: fix GPF in bitmap_get_stats()", "x_generator": { "engine": "bippy-1.2.0" } } }, "cveMetadata": { "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67", "assignerShortName": "Linux", "cveId": "CVE-2025-38451", "datePublished": "2025-07-25T15:27:32.045Z", "dateReserved": "2025-04-16T04:51:24.018Z", "dateUpdated": "2025-07-28T04:22:42.774Z", "state": "PUBLISHED" }, "dataType": "CVE_RECORD", "dataVersion": "5.1", "vulnerability-lookup:meta": { "nvd": "{\"cve\":{\"id\":\"CVE-2025-38451\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2025-07-25T16:15:30.680\",\"lastModified\":\"2025-07-29T14:14:55.157\",\"vulnStatus\":\"Awaiting Analysis\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nmd/md-bitmap: fix GPF in bitmap_get_stats()\\n\\nThe commit message of commit 6ec1f0239485 (\\\"md/md-bitmap: fix stats\\ncollection for external bitmaps\\\") states:\\n\\n Remove the external bitmap check as the statistics should be\\n available regardless of bitmap storage location.\\n\\n Return -EINVAL only for invalid bitmap with no storage (neither in\\n superblock nor in external file).\\n\\nBut, the code does not adhere to the above, as it does only check for\\na valid super-block for \\\"internal\\\" bitmaps. Hence, we observe:\\n\\nOops: GPF, probably for non-canonical address 0x1cd66f1f40000028\\nRIP: 0010:bitmap_get_stats+0x45/0xd0\\nCall Trace:\\n\\n seq_read_iter+0x2b9/0x46a\\n seq_read+0x12f/0x180\\n proc_reg_read+0x57/0xb0\\n vfs_read+0xf6/0x380\\n ksys_read+0x6d/0xf0\\n do_syscall_64+0x8c/0x1b0\\n entry_SYSCALL_64_after_hwframe+0x76/0x7e\\n\\nWe fix this by checking the existence of a super-block for both the\\ninternal and external case.\"},{\"lang\":\"es\",\"value\":\"En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: md/md-bitmap: correcci\u00f3n de GPF en bitmap_get_stats(). El mensaje del commit 6ec1f0239485 (\\\"md/md-bitmap: correcci\u00f3n de la recopilaci\u00f3n de estad\u00edsticas para mapas de bits externos\\\") indica: Se elimina la comprobaci\u00f3n de mapas de bits externos, ya que las estad\u00edsticas deben estar disponibles independientemente de su ubicaci\u00f3n de almacenamiento. Se devuelve -EINVAL solo para mapas de bits no v\u00e1lidos sin almacenamiento (ni en superbloque ni en archivo externo). Sin embargo, el c\u00f3digo no cumple con lo anterior, ya que solo comprueba si hay un superbloque v\u00e1lido para mapas de bits \\\"internos\\\". Por lo tanto, observamos: Oops: GPF, probablemente para la direcci\u00f3n no can\u00f3nica 0x1cd66f1f40000028 RIP: 0010:bitmap_get_stats+0x45/0xd0 Rastreo de llamadas: seq_read_iter+0x2b9/0x46a seq_read+0x12f/0x180 proc_reg_read+0x57/0xb0 vfs_read+0xf6/0x380 ksys_read+0x6d/0xf0 do_syscall_64+0x8c/0x1b0 entry_SYSCALL_64_after_hwframe+0x76/0x7e Solucionamos esto verificando la existencia de un superbloque tanto para el caso interno como para el externo.\"}],\"metrics\":{},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/3d82a729530bd2110ba66e4a1f73461c776edec2\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/3e0542701b37aa25b025d8531583458e4f014c2e\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/a18f9b08c70e10ea3a897058fee8a4f3b4c146ec\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/a23b16ba3274961494f5ad236345d238364349ff\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/c17fb542dbd1db745c9feac15617056506dd7195\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]}}" } }
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…