In the Linux kernel, the following vulnerability has been resolved:
gve: guard XSK operations on the existence of queues
This patch predicates the enabling and disabling of XSK pools on the existence of queues. As it stands, if the interface is down, disabling or enabling XSK pools would result in a crash, as the RX queue pointer would be NULL. XSK pool registration will occur as part of the next interface up.
Similarly, xskwakeup needs be guarded against queues disappearing while the function is executing, so a check against the GVEPRIVFLAGSNAPIENABLED flag is added to synchronize with the disabling of the bit and the synchronizenet() in gve_turndown.
[
{
"id": "CVE-2024-57933-0748932f",
"digest": {
"length": 1079.0,
"function_hash": "276199687508572608144024418977312213709"
},
"signature_version": "v1",
"target": {
"file": "drivers/net/ethernet/google/gve/gve_main.c",
"function": "gve_xsk_pool_disable"
},
"deprecated": false,
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@40338d7987d810fcaa95c500b1068a52b08eec9b"
},
{
"id": "CVE-2024-57933-1f3eafed",
"digest": {
"length": 1203.0,
"function_hash": "69038466520686909057896875726299099909"
},
"signature_version": "v1",
"target": {
"file": "drivers/net/ethernet/google/gve/gve_main.c",
"function": "gve_xsk_pool_enable"
},
"deprecated": false,
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@771d66f2bd8c4dba1286a9163ab982cecd825718"
},
{
"id": "CVE-2024-57933-26f3bb5c",
"digest": {
"line_hashes": [
"134798398563564499506778059740806031013",
"101987445710176614364360843304513039677",
"126114425836099718939243162110516131268",
"16158035358842488649510346537191540115",
"57676089342431358286105008872104496270",
"168985530076285576445980687275533447902",
"320155326842558143955729961666466720053",
"180147058011508559271486761682176790785",
"43947138789876393804827645692795618440",
"188147286794665962100487750267300402138",
"324664074473379180344795790853450256915",
"211958230507509111001345489069488801856",
"113975472386557242209182029290837475339",
"331438433054207541080052338918152703023",
"37486103425205988622955627621104377474",
"211532443241160653573666728231387587152",
"151044116945615532211444439324842850342",
"251533727352139623406504384336455056500",
"16992009671767890862799499022512500547",
"149063382842828706254652227786890203362",
"312698273731351748382224901908272729775"
],
"threshold": 0.9
},
"signature_version": "v1",
"target": {
"file": "drivers/net/ethernet/google/gve/gve_main.c"
},
"deprecated": false,
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@771d66f2bd8c4dba1286a9163ab982cecd825718"
},
{
"id": "CVE-2024-57933-329711be",
"digest": {
"length": 1203.0,
"function_hash": "69038466520686909057896875726299099909"
},
"signature_version": "v1",
"target": {
"file": "drivers/net/ethernet/google/gve/gve_main.c",
"function": "gve_xsk_pool_enable"
},
"deprecated": false,
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@40338d7987d810fcaa95c500b1068a52b08eec9b"
},
{
"id": "CVE-2024-57933-49cbfb75",
"digest": {
"length": 476.0,
"function_hash": "187005767078987600815691330160662588778"
},
"signature_version": "v1",
"target": {
"file": "drivers/net/ethernet/google/gve/gve_main.c",
"function": "gve_xsk_wakeup"
},
"deprecated": false,
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@8e8d7037c89437af12725f454e2eaf40e8166c0f"
},
{
"id": "CVE-2024-57933-6ab766ed",
"digest": {
"length": 1079.0,
"function_hash": "276199687508572608144024418977312213709"
},
"signature_version": "v1",
"target": {
"file": "drivers/net/ethernet/google/gve/gve_main.c",
"function": "gve_xsk_pool_disable"
},
"deprecated": false,
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@771d66f2bd8c4dba1286a9163ab982cecd825718"
},
{
"id": "CVE-2024-57933-8f67f5d9",
"digest": {
"line_hashes": [
"134798398563564499506778059740806031013",
"101987445710176614364360843304513039677",
"126114425836099718939243162110516131268",
"16158035358842488649510346537191540115",
"57676089342431358286105008872104496270",
"168985530076285576445980687275533447902",
"320155326842558143955729961666466720053",
"180147058011508559271486761682176790785",
"43947138789876393804827645692795618440",
"188147286794665962100487750267300402138",
"324664074473379180344795790853450256915",
"211958230507509111001345489069488801856",
"113975472386557242209182029290837475339",
"331438433054207541080052338918152703023",
"37486103425205988622955627621104377474",
"211532443241160653573666728231387587152",
"151044116945615532211444439324842850342",
"251533727352139623406504384336455056500",
"16992009671767890862799499022512500547",
"149063382842828706254652227786890203362",
"312698273731351748382224901908272729775"
],
"threshold": 0.9
},
"signature_version": "v1",
"target": {
"file": "drivers/net/ethernet/google/gve/gve_main.c"
},
"deprecated": false,
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@40338d7987d810fcaa95c500b1068a52b08eec9b"
},
{
"id": "CVE-2024-57933-8fbe8045",
"digest": {
"line_hashes": [
"134798398563564499506778059740806031013",
"101987445710176614364360843304513039677",
"126114425836099718939243162110516131268",
"16158035358842488649510346537191540115",
"57676089342431358286105008872104496270",
"168985530076285576445980687275533447902",
"320155326842558143955729961666466720053",
"180147058011508559271486761682176790785",
"43947138789876393804827645692795618440",
"188147286794665962100487750267300402138",
"324664074473379180344795790853450256915",
"211958230507509111001345489069488801856",
"113975472386557242209182029290837475339",
"331438433054207541080052338918152703023",
"37486103425205988622955627621104377474",
"211532443241160653573666728231387587152",
"151044116945615532211444439324842850342",
"251533727352139623406504384336455056500",
"16992009671767890862799499022512500547",
"149063382842828706254652227786890203362",
"312698273731351748382224901908272729775"
],
"threshold": 0.9
},
"signature_version": "v1",
"target": {
"file": "drivers/net/ethernet/google/gve/gve_main.c"
},
"deprecated": false,
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@8e8d7037c89437af12725f454e2eaf40e8166c0f"
},
{
"id": "CVE-2024-57933-944f0891",
"digest": {
"length": 1203.0,
"function_hash": "69038466520686909057896875726299099909"
},
"signature_version": "v1",
"target": {
"file": "drivers/net/ethernet/google/gve/gve_main.c",
"function": "gve_xsk_pool_enable"
},
"deprecated": false,
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@8e8d7037c89437af12725f454e2eaf40e8166c0f"
},
{
"id": "CVE-2024-57933-b08c89a4",
"digest": {
"length": 476.0,
"function_hash": "187005767078987600815691330160662588778"
},
"signature_version": "v1",
"target": {
"file": "drivers/net/ethernet/google/gve/gve_main.c",
"function": "gve_xsk_wakeup"
},
"deprecated": false,
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@40338d7987d810fcaa95c500b1068a52b08eec9b"
},
{
"id": "CVE-2024-57933-c4925f37",
"digest": {
"length": 476.0,
"function_hash": "187005767078987600815691330160662588778"
},
"signature_version": "v1",
"target": {
"file": "drivers/net/ethernet/google/gve/gve_main.c",
"function": "gve_xsk_wakeup"
},
"deprecated": false,
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@771d66f2bd8c4dba1286a9163ab982cecd825718"
},
{
"id": "CVE-2024-57933-fb5b8b8d",
"digest": {
"length": 1079.0,
"function_hash": "276199687508572608144024418977312213709"
},
"signature_version": "v1",
"target": {
"file": "drivers/net/ethernet/google/gve/gve_main.c",
"function": "gve_xsk_pool_disable"
},
"deprecated": false,
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@8e8d7037c89437af12725f454e2eaf40e8166c0f"
}
]