CVE-2025-40097
Full vulnerability record from the local CVENow database.
Description
In the Linux kernel, the following vulnerability has been resolved: ALSA: hda: Fix missing pointer check in hda_component_manager_init function The __component_match_add function may assign the 'matchptr' pointer the value ERR_PTR(-ENOMEM), which will subsequently be dereferenced. The call stack leading to the error looks like this: hda_component_manager_init |-> component_match_add |-> component_match_add_release |-> __component_match_add ( ... ,**matchptr, ... ) |-> *matchptr = ERR_PTR(-ENOMEM); // assign |-> component_master_add_with_match( ... match) |-> component_match_realloc(match, match->num); // dereference Add IS_ERR() check to prevent the crash. Found by Linux Verification Center (linuxtesting.org) with SVACE.
View original CVE JSON
{
"id": "CVE-2025-40097",
"sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"published": "2025-10-30T10:15:34.173",
"lastModified": "2026-10-19T21:10:00.160",
"vulnStatus": "Deferred",
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nALSA: hda: Fix missing pointer check in hda_component_manager_init function\n\nThe __component_match_add function may assign the 'matchptr' pointer\nthe value ERR_PTR(-ENOMEM), which will subsequently be dereferenced.\n\nThe call stack leading to the error looks like this:\n\nhda_component_manager_init\n|-> component_match_add\n |-> component_match_add_release\n |-> __component_match_add ( ... ,**matchptr, ... )\n |-> *matchptr = ERR_PTR(-ENOMEM); // assign\n|-> component_master_add_with_match( ... match)\n |-> component_match_realloc(match, match->num); // dereference\n\nAdd IS_ERR() check to prevent the crash.\n\nFound by Linux Verification Center (linuxtesting.org) with SVACE."
},
{
"lang": "es",
"value": "En el kernel de Linux, la siguiente vulnerabilidad ha sido resuelta:\n\nALSA: hda: Corrección de la comprobación de puntero faltante en la función hda_component_manager_init\n\nLa función __component_match_add puede asignar al puntero 'matchptr' el valor ERR_PTR(-ENOMEM), el cual será desreferenciado posteriormente.\n\nLa pila de llamadas que conduce al error es la siguiente:\n\nhda_component_manager_init\n|-> component_match_add\n |-> component_match_add_release\n |-> __component_match_add ( ... ,**matchptr, ... )\n |-> *matchptr = ERR_PTR(-ENOMEM); // asignación\n|-> component_master_add_with_match( ... match)\n |-> component_match_realloc(match, match->num); // desreferenciación\n\nAñadir la comprobación IS_ERR() para prevenir el bloqueo.\n\nEncontrado por Linux Verification Center (linuxtesting.org) con SVACE."
}
],
"affected": [
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"affectedData": [
{
"vendor": "Linux",
"product": "Linux",
"defaultStatus": "unaffected",
"programFiles": [
"sound/hda/codecs/side-codecs/hda_component.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"versions": [
{
"version": "ae7abe36e352eddf8e30d3b1ea3fb402514ba13b",
"lessThan": "b044aa6ae63391ba40c93ca5d476d276cb17db1b",
"versionType": "git",
"status": "affected"
},
{
"version": "ae7abe36e352eddf8e30d3b1ea3fb402514ba13b",
"lessThan": "1c3f4b15eb1850558d7d4da74b98cffbb8121721",
"versionType": "git",
"status": "affected"
},
{
"version": "ae7abe36e352eddf8e30d3b1ea3fb402514ba13b",
"lessThan": "218a8504e62fc2c8a1fd12523346b7a2b9bd2474",
"versionType": "git",
"status": "affected"
},
{
"version": "ae7abe36e352eddf8e30d3b1ea3fb402514ba13b",
"lessThan": "47d1b9ca923b55c3f407788f1f15b04957e0e027",
"versionType": "git",
"status": "affected"
},
{
"version": "ae7abe36e352eddf8e30d3b1ea3fb402514ba13b",
"lessThan": "1cf11d80db5df805b538c942269e05a65bcaf5bc",
"versionType": "git",
"status": "affected"
}
]
},
{
"vendor": "Linux",
"product": "Linux",
"defaultStatus": "affected",
"programFiles": [
"sound/hda/codecs/side-codecs/hda_component.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"versions": [
{
"version": "5.17",
"status": "affected"
},
{
"version": "0",
"lessThan": "5.17",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.1.189",
"lessThanOrEqual": "6.1.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.6.158",
"lessThanOrEqual": "6.6.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.12.59",
"lessThanOrEqual": "6.12.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.17.5",
"lessThanOrEqual": "6.17.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.18",
"lessThanOrEqual": "*",
"versionType": "original_commit_for_fix",
"status": "unaffected"
}
]
}
]
}
],
"metrics": {},
"references": [
{
"url": "https://git.kernel.org/stable/c/1c3f4b15eb1850558d7d4da74b98cffbb8121721",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/1cf11d80db5df805b538c942269e05a65bcaf5bc",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/218a8504e62fc2c8a1fd12523346b7a2b9bd2474",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/47d1b9ca923b55c3f407788f1f15b04957e0e027",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/b044aa6ae63391ba40c93ca5d476d276cb17db1b",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}
]
}