In the Linux kernel, the following vulnerability has been resolved:
eeprom: at24: fix memory corruption race condition
If the eeprom is not accessible, an nvmem device will be registered, the read will fail, and the device will be torn down. If another driver accesses the nvmem device after the teardown, it will reference invalid memory.
Move the failure point before registering the nvmem device.
[
{
"id": "CVE-2024-35848-10a6fb0e",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@c850f71fca09ea41800ed55905980063d17e01da",
"signature_version": "v1",
"target": {
"function": "at24_probe",
"file": "drivers/misc/eeprom/at24.c"
},
"deprecated": false,
"digest": {
"length": 4312.0,
"function_hash": "182283200607594790812100878250765661247"
},
"signature_type": "Function"
},
{
"id": "CVE-2024-35848-1224f114",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@c850f71fca09ea41800ed55905980063d17e01da",
"signature_version": "v1",
"target": {
"file": "drivers/misc/eeprom/at24.c"
},
"deprecated": false,
"digest": {
"line_hashes": [
"50227697316035907653067388273641088723",
"94340051357775505750968368571939480457",
"224883561830574287039314883267099037411",
"331626589543508315752730264036483455824",
"110474714845601891723685423929185170052",
"218740504507921742580179406632133401067",
"7285291054997134730273656215408158467",
"48642320063542407985276171677063656858",
"197584527458009532791004836868771680108",
"16545754963434441346179630175537429741",
"116317861657738432310288566778147135206",
"9877386716128023091016382310763344493",
"65146274742657311635828050893706155738",
"113354749192631796891509957675883273151"
],
"threshold": 0.9
},
"signature_type": "Line"
},
{
"id": "CVE-2024-35848-5e21b00e",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@2af84c46b9b8f2d6c0f88d09ee5c849ae1734676",
"signature_version": "v1",
"target": {
"file": "drivers/misc/eeprom/at24.c"
},
"deprecated": false,
"digest": {
"line_hashes": [
"167872057310421163213805257840696507000",
"198440929716710005349551450049450412335",
"224883561830574287039314883267099037411",
"331626589543508315752730264036483455824",
"110474714845601891723685423929185170052",
"218740504507921742580179406632133401067",
"7285291054997134730273656215408158467",
"48642320063542407985276171677063656858",
"80994854011553435044801518429237264583",
"155918773274793464445555767242790985734",
"4754034861336978137117890922266723597",
"81070372238394719759101797733505975324",
"164712704958720611890817064540446417715",
"113354749192631796891509957675883273151"
],
"threshold": 0.9
},
"signature_type": "Line"
},
{
"id": "CVE-2024-35848-69976960",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@6d8b56ec0c8f30d5657382f47344a32569f7a9bc",
"signature_version": "v1",
"target": {
"file": "drivers/misc/eeprom/at24.c"
},
"deprecated": false,
"digest": {
"line_hashes": [
"167872057310421163213805257840696507000",
"198440929716710005349551450049450412335",
"224883561830574287039314883267099037411",
"331626589543508315752730264036483455824",
"110474714845601891723685423929185170052",
"218740504507921742580179406632133401067",
"7285291054997134730273656215408158467",
"48642320063542407985276171677063656858",
"80994854011553435044801518429237264583",
"155918773274793464445555767242790985734",
"4754034861336978137117890922266723597",
"81070372238394719759101797733505975324",
"164712704958720611890817064540446417715",
"113354749192631796891509957675883273151"
],
"threshold": 0.9
},
"signature_type": "Line"
},
{
"id": "CVE-2024-35848-6e892f58",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@26d32bec4c6d255a03762f33c637bfa3718be15a",
"signature_version": "v1",
"target": {
"function": "at24_probe",
"file": "drivers/misc/eeprom/at24.c"
},
"deprecated": false,
"digest": {
"length": 4312.0,
"function_hash": "182283200607594790812100878250765661247"
},
"signature_type": "Function"
},
{
"id": "CVE-2024-35848-7456614c",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@2af84c46b9b8f2d6c0f88d09ee5c849ae1734676",
"signature_version": "v1",
"target": {
"function": "at24_probe",
"file": "drivers/misc/eeprom/at24.c"
},
"deprecated": false,
"digest": {
"length": 4423.0,
"function_hash": "187158029447628181474556065542580081591"
},
"signature_type": "Function"
},
{
"id": "CVE-2024-35848-849480d2",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@26d32bec4c6d255a03762f33c637bfa3718be15a",
"signature_version": "v1",
"target": {
"file": "drivers/misc/eeprom/at24.c"
},
"deprecated": false,
"digest": {
"line_hashes": [
"50227697316035907653067388273641088723",
"94340051357775505750968368571939480457",
"224883561830574287039314883267099037411",
"331626589543508315752730264036483455824",
"110474714845601891723685423929185170052",
"218740504507921742580179406632133401067",
"7285291054997134730273656215408158467",
"48642320063542407985276171677063656858",
"197584527458009532791004836868771680108",
"16545754963434441346179630175537429741",
"116317861657738432310288566778147135206",
"9877386716128023091016382310763344493",
"65146274742657311635828050893706155738",
"113354749192631796891509957675883273151"
],
"threshold": 0.9
},
"signature_type": "Line"
},
{
"id": "CVE-2024-35848-cb5e624b",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@6d8b56ec0c8f30d5657382f47344a32569f7a9bc",
"signature_version": "v1",
"target": {
"function": "at24_probe",
"file": "drivers/misc/eeprom/at24.c"
},
"deprecated": false,
"digest": {
"length": 4406.0,
"function_hash": "44091473043873306666987526235104165670"
},
"signature_type": "Function"
},
{
"id": "CVE-2024-35848-d48e3443",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f42c97027fb75776e2e9358d16bf4a99aeb04cf2",
"signature_version": "v1",
"target": {
"file": "drivers/misc/eeprom/at24.c"
},
"deprecated": false,
"digest": {
"line_hashes": [
"167872057310421163213805257840696507000",
"198440929716710005349551450049450412335",
"224883561830574287039314883267099037411",
"331626589543508315752730264036483455824",
"110474714845601891723685423929185170052",
"218740504507921742580179406632133401067",
"7285291054997134730273656215408158467",
"48642320063542407985276171677063656858",
"80994854011553435044801518429237264583",
"155918773274793464445555767242790985734",
"4754034861336978137117890922266723597",
"81070372238394719759101797733505975324",
"164712704958720611890817064540446417715",
"113354749192631796891509957675883273151"
],
"threshold": 0.9
},
"signature_type": "Line"
},
{
"id": "CVE-2024-35848-ff2eb8b6",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f42c97027fb75776e2e9358d16bf4a99aeb04cf2",
"signature_version": "v1",
"target": {
"function": "at24_probe",
"file": "drivers/misc/eeprom/at24.c"
},
"deprecated": false,
"digest": {
"length": 4406.0,
"function_hash": "44091473043873306666987526235104165670"
},
"signature_type": "Function"
}
]