2024-02-19 15:01:23 +00:00
{
2024-04-02 14:26:06 +00:00
"data_version" : "4.0" ,
2024-02-19 15:01:23 +00:00
"data_type" : "CVE" ,
"data_format" : "MITRE" ,
"CVE_data_meta" : {
"ID" : "CVE-2024-26654" ,
2024-04-02 14:26:06 +00:00
"ASSIGNER" : "cve@kernel.org" ,
"STATE" : "PUBLIC"
2024-02-19 15:01:23 +00:00
} ,
"description" : {
"description_data" : [
{
"lang" : "eng" ,
2024-04-02 14:26:06 +00:00
"value" : "In the Linux kernel, the following vulnerability has been resolved:\n\nALSA: sh: aica: reorder cleanup operations to avoid UAF bugs\n\nThe dreamcastcard->timer could schedule the spu_dma_work and the\nspu_dma_work could also arm the dreamcastcard->timer.\n\nWhen the snd_pcm_substream is closing, the aica_channel will be\ndeallocated. But it could still be dereferenced in the worker\nthread. The reason is that del_timer() will return directly\nregardless of whether the timer handler is running or not and\nthe worker could be rescheduled in the timer handler. As a result,\nthe UAF bug will happen. The racy situation is shown below:\n\n (Thread 1) | (Thread 2)\nsnd_aicapcm_pcm_close() |\n ... | run_spu_dma() //worker\n | mod_timer()\n flush_work() |\n del_timer() | aica_period_elapsed() //timer\n kfree(dreamcastcard->channel) | schedule_work()\n | run_spu_dma() //worker\n ... | dreamcastcard->channel-> //USE\n\nIn order to mitigate this bug and other possible corner cases,\ncall mod_timer() conditionally in run_spu_dma(), then implement\nPCM sync_stop op to cancel both the timer and worker. The sync_stop\nop will be called from PCM core appropriately when needed."
}
]
} ,
"problemtype" : {
"problemtype_data" : [
{
"description" : [
{
"lang" : "eng" ,
"value" : "n/a"
}
]
2024-02-19 15:01:23 +00:00
}
]
2024-04-02 14:26:06 +00:00
} ,
"affects" : {
"vendor" : {
"vendor_data" : [
{
"vendor_name" : "Linux" ,
"product" : {
"product_data" : [
{
"product_name" : "Linux" ,
"version" : {
"version_data" : [
{
"version_affected" : "<" ,
"version_name" : "198de43d758c" ,
2024-04-13 12:00:33 +00:00
"version_value" : "eeb2a2ca0b8d"
2024-04-02 14:26:06 +00:00
} ,
{
"version_value" : "not down converted" ,
"x_cve_json_5_version_data" : {
"versions" : [
{
"version" : "2.6.23" ,
"status" : "affected"
} ,
{
"version" : "0" ,
"lessThan" : "2.6.23" ,
"status" : "unaffected" ,
2024-11-05 10:03:40 +00:00
"versionType" : "semver"
2024-04-02 14:26:06 +00:00
} ,
2024-04-13 12:00:33 +00:00
{
"version" : "4.19.312" ,
"lessThanOrEqual" : "4.19.*" ,
"status" : "unaffected" ,
2024-11-05 10:03:40 +00:00
"versionType" : "semver"
2024-04-13 12:00:33 +00:00
} ,
{
"version" : "5.4.274" ,
"lessThanOrEqual" : "5.4.*" ,
"status" : "unaffected" ,
2024-11-05 10:03:40 +00:00
"versionType" : "semver"
2024-04-13 12:00:33 +00:00
} ,
{
"version" : "5.10.215" ,
"lessThanOrEqual" : "5.10.*" ,
"status" : "unaffected" ,
2024-11-05 10:03:40 +00:00
"versionType" : "semver"
2024-04-13 12:00:33 +00:00
} ,
2024-04-10 19:08:41 +00:00
{
"version" : "5.15.154" ,
"lessThanOrEqual" : "5.15.*" ,
"status" : "unaffected" ,
2024-11-05 10:03:40 +00:00
"versionType" : "semver"
2024-04-10 19:08:41 +00:00
} ,
2024-04-03 15:00:36 +00:00
{
"version" : "6.1.84" ,
"lessThanOrEqual" : "6.1.*" ,
"status" : "unaffected" ,
2024-11-05 10:03:40 +00:00
"versionType" : "semver"
2024-04-03 15:00:36 +00:00
} ,
{
"version" : "6.6.24" ,
"lessThanOrEqual" : "6.6.*" ,
"status" : "unaffected" ,
2024-11-05 10:03:40 +00:00
"versionType" : "semver"
2024-04-03 15:00:36 +00:00
} ,
{
"version" : "6.7.12" ,
"lessThanOrEqual" : "6.7.*" ,
"status" : "unaffected" ,
2024-11-05 10:03:40 +00:00
"versionType" : "semver"
2024-04-03 15:00:36 +00:00
} ,
{
"version" : "6.8.3" ,
"lessThanOrEqual" : "6.8.*" ,
"status" : "unaffected" ,
2024-11-05 10:03:40 +00:00
"versionType" : "semver"
2024-04-03 15:00:36 +00:00
} ,
2024-04-02 14:26:06 +00:00
{
2024-05-13 08:00:38 +00:00
"version" : "6.9" ,
2024-04-02 14:26:06 +00:00
"lessThanOrEqual" : "*" ,
"status" : "unaffected" ,
"versionType" : "original_commit_for_fix"
}
] ,
"defaultStatus" : "affected"
}
}
]
}
}
]
}
}
]
}
} ,
"references" : {
"reference_data" : [
2024-04-13 12:00:33 +00:00
{
"url" : "https://git.kernel.org/stable/c/eeb2a2ca0b8de7e1c66afaf719529154e7dc60b2" ,
"refsource" : "MISC" ,
"name" : "https://git.kernel.org/stable/c/eeb2a2ca0b8de7e1c66afaf719529154e7dc60b2"
} ,
{
"url" : "https://git.kernel.org/stable/c/4206ad65a0ee76920041a755bd3c17c6ba59bba2" ,
"refsource" : "MISC" ,
"name" : "https://git.kernel.org/stable/c/4206ad65a0ee76920041a755bd3c17c6ba59bba2"
} ,
{
"url" : "https://git.kernel.org/stable/c/aa39e6878f61f50892ee2dd9d2176f72020be845" ,
"refsource" : "MISC" ,
"name" : "https://git.kernel.org/stable/c/aa39e6878f61f50892ee2dd9d2176f72020be845"
} ,
2024-04-10 19:08:41 +00:00
{
"url" : "https://git.kernel.org/stable/c/8c990221681688da34295d6d76cc2f5b963e83f5" ,
"refsource" : "MISC" ,
"name" : "https://git.kernel.org/stable/c/8c990221681688da34295d6d76cc2f5b963e83f5"
} ,
2024-04-03 15:00:36 +00:00
{
"url" : "https://git.kernel.org/stable/c/9d66ae0e7bb78b54e1e0525456c6b54e1d132046" ,
"refsource" : "MISC" ,
"name" : "https://git.kernel.org/stable/c/9d66ae0e7bb78b54e1e0525456c6b54e1d132046"
} ,
{
"url" : "https://git.kernel.org/stable/c/61d4787692c1fccdc268ffa7a891f9c149f50901" ,
"refsource" : "MISC" ,
"name" : "https://git.kernel.org/stable/c/61d4787692c1fccdc268ffa7a891f9c149f50901"
} ,
{
"url" : "https://git.kernel.org/stable/c/e955e8a7f38a856fc6534ba4e6bffd4d5cc80ac3" ,
"refsource" : "MISC" ,
"name" : "https://git.kernel.org/stable/c/e955e8a7f38a856fc6534ba4e6bffd4d5cc80ac3"
} ,
{
"url" : "https://git.kernel.org/stable/c/3c907bf56905de7d27b329afaf59c2fb35d17b04" ,
"refsource" : "MISC" ,
"name" : "https://git.kernel.org/stable/c/3c907bf56905de7d27b329afaf59c2fb35d17b04"
} ,
2024-04-02 14:26:06 +00:00
{
"url" : "https://git.kernel.org/stable/c/051e0840ffa8ab25554d6b14b62c9ab9e4901457" ,
"refsource" : "MISC" ,
"name" : "https://git.kernel.org/stable/c/051e0840ffa8ab25554d6b14b62c9ab9e4901457"
}
]
} ,
"generator" : {
2024-11-05 10:03:40 +00:00
"engine" : "bippy-9e1c9544281a"
2024-02-19 15:01:23 +00:00
}
}