{"id":"CVE-2023-52491","title":"In the Linux kernel, the following vulnerability has been resolved:\n\nmedia: mtk-jpeg: Fix use after free bug due to error path handling in mtk_jpeg_dec_device_run\n\nIn mtk_jpeg_probe, &jpeg->job_timeout_work is bound with\nmtk_jpeg_job_tim…","summary":"In the Linux kernel, the following vulnerability has been resolved:\n\nmedia: mtk-jpeg: Fix use after free bug due to error path handling in mtk_jpeg_dec_device_run\n\nIn mtk_jpeg_probe, &jpeg->job_timeout_work is bound with\nmtk_jpeg_job_tim…","severity":"high","cvss":7.8,"cvssVector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","cwe":["CWE-416"],"vendor":"linux","product":"linux_kernel","affected":["linux_kernel >= 4.12, < 5.10.210","linux_kernel >= 5.11, < 5.15.149","linux_kernel >= 5.16, < 6.1.76","linux_kernel >= 6.2, < 6.6.15","linux_kernel >= 6.7, < 6.7.3"],"patched":["linux_kernel 6.7.3"],"published":"2024-03-11","updated":"2026-08-04","source":"NVD","sourceUrl":"https://nvd.nist.gov/vuln/detail/CVE-2023-52491","references":[{"url":"https://git.kernel.org/stable/c/1b1036c60a37a30caf6759a90fe5ecd06ec35590","label":"416baaa9-dc9f-4396-8d5f-8c081fb06d67"},{"url":"https://git.kernel.org/stable/c/206c857dd17d4d026de85866f1b5f0969f2a109e","label":"416baaa9-dc9f-4396-8d5f-8c081fb06d67"},{"url":"https://git.kernel.org/stable/c/43872f44eee6c6781fea1348b38885d8e78face9","label":"416baaa9-dc9f-4396-8d5f-8c081fb06d67"},{"url":"https://git.kernel.org/stable/c/6e2f37022f0fc0893da4d85a0500c9d547fffd4c","label":"416baaa9-dc9f-4396-8d5f-8c081fb06d67"},{"url":"https://git.kernel.org/stable/c/8254d54d00eb6cdb8367399c7f912eb8d354ecd7","label":"416baaa9-dc9f-4396-8d5f-8c081fb06d67"},{"url":"https://git.kernel.org/stable/c/9fec4db7fff54d9b0306a332bab31eac47eeb5f6","label":"416baaa9-dc9f-4396-8d5f-8c081fb06d67"},{"url":"https://git.kernel.org/stable/c/1b1036c60a37a30caf6759a90fe5ecd06ec35590","label":"af854a3a-2127-422b-91ae-364da2661108"},{"url":"https://git.kernel.org/stable/c/206c857dd17d4d026de85866f1b5f0969f2a109e","label":"af854a3a-2127-422b-91ae-364da2661108"},{"url":"https://git.kernel.org/stable/c/43872f44eee6c6781fea1348b38885d8e78face9","label":"af854a3a-2127-422b-91ae-364da2661108"},{"url":"https://git.kernel.org/stable/c/6e2f37022f0fc0893da4d85a0500c9d547fffd4c","label":"af854a3a-2127-422b-91ae-364da2661108"},{"url":"https://git.kernel.org/stable/c/8254d54d00eb6cdb8367399c7f912eb8d354ecd7","label":"af854a3a-2127-422b-91ae-364da2661108"},{"url":"https://git.kernel.org/stable/c/9fec4db7fff54d9b0306a332bab31eac47eeb5f6","label":"af854a3a-2127-422b-91ae-364da2661108"},{"url":"https://lists.debian.org/debian-lts-announce/2024/06/msg00017.html","label":"af854a3a-2127-422b-91ae-364da2661108"},{"url":"https://security.access.redhat.com/data/csaf/v2/vex/2023/cve-2023-52491.json"},{"url":"https://access.redhat.com/security/cve/CVE-2023-52491"},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2269185"},{"url":"https://www.cve.org/CVERecord?id=CVE-2023-52491"},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2023-52491"},{"url":"https://lore.kernel.org/linux-cve-announce/20240229155245.1571576-32-lee@kernel.org/T"}],"tags":["nvd","csaf","vex","red-hat","score-dispute"],"epss":0.00278,"epssPercentile":0.20116,"ingestedAt":"2026-08-05T05:58:03.085Z","scores":{"nvd":7.8,"vendor":4.1},"slug":"CVE-2023-52491","body":"## Overview\n\nIn the Linux kernel, the following vulnerability has been resolved:\n\nmedia: mtk-jpeg: Fix use after free bug due to error path handling in mtk_jpeg_dec_device_run\n\nIn mtk_jpeg_probe, &jpeg->job_timeout_work is bound with\nmtk_jpeg_job_timeout_work.\n\nIn mtk_jpeg_dec_device_run, if error happens in\nmtk_jpeg_set_dec_dst, it will finally start the worker while\nmark the job as finished by invoking v4l2_m2m_job_finish.\n\nThere are two methods to trigger the bug. If we remove the\nmodule, it which will call mtk_jpeg_remove to make cleanup.\nThe possible sequence is as follows, which will cause a\nuse-after-free bug.\n\nCPU0                  CPU1\nmtk_jpeg_dec_...    |\n  start worker\t    |\n                    |mtk_jpeg_job_timeout_work\nmtk_jpeg_remove     |\n  v4l2_m2m_release  |\n    kfree(m2m_dev); |\n                    |\n                    | v4l2_m2m_get_curr_priv\n                    |   m2m_dev->curr_ctx //use\n\nIf we close the file descriptor, which will call mtk_jpeg_release,\nit will have a similar sequence.\n\nFix this bug by starting timeout worker only if started jpegdec worker\nsuccessfully. Then v4l2_m2m_job_finish will only be called in\neither mtk_jpeg_job_timeout_work or mtk_jpeg_dec_device_run.\n\n## Affected\n\n- `linux_kernel >= 4.12, < 5.10.210`\n- `linux_kernel >= 5.11, < 5.15.149`\n- `linux_kernel >= 5.16, < 6.1.76`\n- `linux_kernel >= 6.2, < 6.6.15`\n- `linux_kernel >= 6.7, < 6.7.3`\n\n## Remediation\n\nUpgrade past the affected range:\n\n- `linux_kernel 6.7.3`\n\n## Vendor advisories\n\n- **Red Hat VEX** · Low · updated 2026-09-27 · [vex](https://security.access.redhat.com/data/csaf/v2/vex/2023/cve-2023-52491.json)","depth":"twilight","depthScore":43,"depthScoreParts":{"impact":42.9,"likelihood":0.1,"exploitation":0,"ransomware":0},"changes":[]}