In the Linux kernel, the following vulnerability has been resolved:
misc: miscminoralloc to use ida for all dynamic/misc dynamic minors
miscminoralloc was allocating id using ida for minor only in case of MISCDYNAMICMINOR but miscminorfree was always freeing ids using ida_free causing a mismatch and following warn:
WARNING: CPU: 0 PID: 159 at lib/idr.c:525 idafree+0x3e0/0x41f idafree called for id=127 which is not allocated. <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< ... [<60941eb4>] idafree+0x3e0/0x41f [<605ac993>] miscminorfree+0x3e/0xbc [<605acb82>] miscderegister+0x171/0x1b3
miscminoralloc is changed to allocate id from ida for all minors falling in the range of dynamic/ misc dynamic minors
[
{
"deprecated": false,
"id": "CVE-2024-58078-0428017d",
"signature_version": "v1",
"digest": {
"length": 284.0,
"function_hash": "108636501989916745870036432946444010392"
},
"target": {
"function": "misc_minor_alloc",
"file": "drivers/char/misc.c"
},
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@8b4120b3e060e137eaa8dc76a1c40401088336e5"
},
{
"deprecated": false,
"id": "CVE-2024-58078-11e41154",
"signature_version": "v1",
"digest": {
"length": 876.0,
"function_hash": "311634504670627175228033961235067600480"
},
"target": {
"function": "misc_register",
"file": "drivers/char/misc.c"
},
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@6635332d246d7db89b90e145f2bf937406cecaf0"
},
{
"deprecated": false,
"id": "CVE-2024-58078-2841d255",
"signature_version": "v1",
"digest": {
"length": 284.0,
"function_hash": "108636501989916745870036432946444010392"
},
"target": {
"function": "misc_minor_alloc",
"file": "drivers/char/misc.c"
},
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@6d04d2b554b14ae6c428a9c60b6c85f1e5c89f68"
},
{
"deprecated": false,
"id": "CVE-2024-58078-34ea053c",
"signature_version": "v1",
"digest": {
"length": 876.0,
"function_hash": "311634504670627175228033961235067600480"
},
"target": {
"function": "misc_register",
"file": "drivers/char/misc.c"
},
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@6d04d2b554b14ae6c428a9c60b6c85f1e5c89f68"
},
{
"deprecated": false,
"id": "CVE-2024-58078-4d212a09",
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"296978826749767890322602469918397308675",
"313137187862320916826836540357912576848",
"93435737956473617670247513848384170471",
"263583553064763264586453774501668336137",
"170446137967078472963670958143154033899",
"110110130637123716709962439582015302786",
"128437309797474465799810475572422196943",
"213145927292397412145528250117419764852",
"278816635588017986742412159469212077682",
"19004813528588814873363527641090216003",
"212649504060448589767937163525375326913",
"34770262391197059308980079222703115433",
"289461699311792617864355238198789693206",
"336766508223567283415158206157861032747",
"148230225733784988641970340522669193519",
"134071995556919772329639975360009120832",
"58613352648546286170416425275903762373",
"318767418506861761629193978411043562249",
"267964059275348509610090830929394544581",
"249333125945872791348221048200261357223",
"214499871444232527081113934948433991263",
"70553298829730235196764526836137880392",
"248294312455338563935648905488391537683",
"288925809436217254340873469096775120138"
]
},
"target": {
"file": "drivers/char/misc.c"
},
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@8b4120b3e060e137eaa8dc76a1c40401088336e5"
},
{
"deprecated": false,
"id": "CVE-2024-58078-6858f7bf",
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"296978826749767890322602469918397308675",
"313137187862320916826836540357912576848",
"93435737956473617670247513848384170471",
"263583553064763264586453774501668336137",
"170446137967078472963670958143154033899",
"110110130637123716709962439582015302786",
"128437309797474465799810475572422196943",
"213145927292397412145528250117419764852",
"278816635588017986742412159469212077682",
"19004813528588814873363527641090216003",
"212649504060448589767937163525375326913",
"34770262391197059308980079222703115433",
"289461699311792617864355238198789693206",
"336766508223567283415158206157861032747",
"148230225733784988641970340522669193519",
"134071995556919772329639975360009120832",
"58613352648546286170416425275903762373",
"318767418506861761629193978411043562249",
"267964059275348509610090830929394544581",
"249333125945872791348221048200261357223",
"214499871444232527081113934948433991263",
"70553298829730235196764526836137880392",
"248294312455338563935648905488391537683",
"288925809436217254340873469096775120138"
]
},
"target": {
"file": "drivers/char/misc.c"
},
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@6635332d246d7db89b90e145f2bf937406cecaf0"
},
{
"deprecated": false,
"id": "CVE-2024-58078-919969cb",
"signature_version": "v1",
"digest": {
"length": 284.0,
"function_hash": "108636501989916745870036432946444010392"
},
"target": {
"function": "misc_minor_alloc",
"file": "drivers/char/misc.c"
},
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@6635332d246d7db89b90e145f2bf937406cecaf0"
},
{
"deprecated": false,
"id": "CVE-2024-58078-92df1fde",
"signature_version": "v1",
"digest": {
"length": 876.0,
"function_hash": "311634504670627175228033961235067600480"
},
"target": {
"function": "misc_register",
"file": "drivers/char/misc.c"
},
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@3df72111c39f7e4c5029c9ff720b56ec2e05b764"
},
{
"deprecated": false,
"id": "CVE-2024-58078-abe1bd31",
"signature_version": "v1",
"digest": {
"length": 876.0,
"function_hash": "311634504670627175228033961235067600480"
},
"target": {
"function": "misc_register",
"file": "drivers/char/misc.c"
},
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@8b4120b3e060e137eaa8dc76a1c40401088336e5"
},
{
"deprecated": false,
"id": "CVE-2024-58078-ce42bc9e",
"signature_version": "v1",
"digest": {
"length": 284.0,
"function_hash": "108636501989916745870036432946444010392"
},
"target": {
"function": "misc_minor_alloc",
"file": "drivers/char/misc.c"
},
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@3df72111c39f7e4c5029c9ff720b56ec2e05b764"
},
{
"deprecated": false,
"id": "CVE-2024-58078-d49cffd5",
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"296978826749767890322602469918397308675",
"313137187862320916826836540357912576848",
"93435737956473617670247513848384170471",
"263583553064763264586453774501668336137",
"170446137967078472963670958143154033899",
"110110130637123716709962439582015302786",
"128437309797474465799810475572422196943",
"213145927292397412145528250117419764852",
"278816635588017986742412159469212077682",
"19004813528588814873363527641090216003",
"212649504060448589767937163525375326913",
"34770262391197059308980079222703115433",
"289461699311792617864355238198789693206",
"336766508223567283415158206157861032747",
"148230225733784988641970340522669193519",
"134071995556919772329639975360009120832",
"58613352648546286170416425275903762373",
"318767418506861761629193978411043562249",
"267964059275348509610090830929394544581",
"249333125945872791348221048200261357223",
"214499871444232527081113934948433991263",
"70553298829730235196764526836137880392",
"248294312455338563935648905488391537683",
"288925809436217254340873469096775120138"
]
},
"target": {
"file": "drivers/char/misc.c"
},
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@3df72111c39f7e4c5029c9ff720b56ec2e05b764"
},
{
"deprecated": false,
"id": "CVE-2024-58078-e60bdf08",
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"296978826749767890322602469918397308675",
"313137187862320916826836540357912576848",
"93435737956473617670247513848384170471",
"263583553064763264586453774501668336137",
"170446137967078472963670958143154033899",
"110110130637123716709962439582015302786",
"128437309797474465799810475572422196943",
"213145927292397412145528250117419764852",
"278816635588017986742412159469212077682",
"19004813528588814873363527641090216003",
"212649504060448589767937163525375326913",
"34770262391197059308980079222703115433",
"289461699311792617864355238198789693206",
"336766508223567283415158206157861032747",
"148230225733784988641970340522669193519",
"134071995556919772329639975360009120832",
"58613352648546286170416425275903762373",
"318767418506861761629193978411043562249",
"267964059275348509610090830929394544581",
"249333125945872791348221048200261357223",
"214499871444232527081113934948433991263",
"70553298829730235196764526836137880392",
"248294312455338563935648905488391537683",
"288925809436217254340873469096775120138"
]
},
"target": {
"file": "drivers/char/misc.c"
},
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@6d04d2b554b14ae6c428a9c60b6c85f1e5c89f68"
}
]