Linux: media: meson: vdec: fix NULL pointer deref in vdec_try_fmt_common
What fixes it
- 276f28672bb6d5d5feca78db4219c7b5adf1be26LinuxCVE List
- 3839b6be2279fc4f558723f2c0fbfc9c42070958LinuxCVE List
- 680a89683197cdfe4e03e6fd7755454c647d39c1LinuxCVE List
- 96dafbae77f50bfe2228bcfedcd8652c5e5f08e8LinuxCVE List
- 20aa934ace6917262ff579a73ec018d06a7bad1cLinuxCVE List
A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.
Description
In the Linux kernel, the following vulnerability has been resolved:
media: meson: vdec: fix NULL pointer deref in vdec_try_fmt_common
When VIDIOC_TRY_FMT is called with an unsupported pixel format on the OUTPUT queue, vdec_try_fmt_common() falls back to V4L2_PIX_FMT_MPEG2. However, if a distro has locally patched MPEG2 support out (as it has been broken for some time) the platform format table does not contain MPEG2 so find_format() returns NULL and the subsequent dereference of fmt_out->max_width triggers a NULL pointer dereference.
Fix this by falling back to the first format in the platform's format array instead of hardcoding V4L2_PIX_FMT_MPEG2. This is always valid since every platform defines at least one format.
Text from CVE List
Affected versions 18
- Linuxaffected: 3e7f51bd96077acad6acd7b45668f65b44233c4e before 276f28672bb6d5d5feca78db4219c7b5adf1be26CVE List
- Linuxaffected: 3e7f51bd96077acad6acd7b45668f65b44233c4e before c620906fb1b2ad75d408ea9d06040d66952d4a31CVE List
- Linuxaffected: 3e7f51bd96077acad6acd7b45668f65b44233c4e before 3839b6be2279fc4f558723f2c0fbfc9c42070958CVE List
- Linuxaffected: 3e7f51bd96077acad6acd7b45668f65b44233c4e before 680a89683197cdfe4e03e6fd7755454c647d39c1CVE List
- Linuxaffected: 3e7f51bd96077acad6acd7b45668f65b44233c4e before f2375a308640e401c142c5426d52c3d10e016d25CVE List
- Linuxaffected: 3e7f51bd96077acad6acd7b45668f65b44233c4e before 96dafbae77f50bfe2228bcfedcd8652c5e5f08e8CVE List
- Linuxaffected: 3e7f51bd96077acad6acd7b45668f65b44233c4e before d61ba609c3226af3c84268ba606ea06ee63e511bCVE List
- Linuxaffected: 3e7f51bd96077acad6acd7b45668f65b44233c4e before 20aa934ace6917262ff579a73ec018d06a7bad1cCVE List
- Linuxaffected: 5.3CVE List
- Linuxunaffected: all versions before 5.3CVE List
- Linuxunaffected: 5.10.270 through 5.10.*CVE List
- Linuxunaffected: 5.15.221 through 5.15.*CVE List
- Linuxunaffected: 6.1.188 through 6.1.*CVE List
- Linuxunaffected: 6.6.157 through 6.6.*CVE List
- Linuxunaffected: 6.12.110 through 6.12.*CVE List
- Linuxunaffected: 6.18.51 through 6.18.*CVE List
- Linuxunaffected: 7.2.5 through 7.2.*CVE List
- Linuxunaffected: 7.3CVE List
References 8
- git.kernel.org/stable/c/276f28672bb6d5d5feca78db4219c7b5adf1be26Referencevia CVE List
- git.kernel.org/stable/c/c620906fb1b2ad75d408ea9d06040d66952d4a31Referencevia CVE List
- git.kernel.org/stable/c/3839b6be2279fc4f558723f2c0fbfc9c42070958Referencevia CVE List
- git.kernel.org/stable/c/680a89683197cdfe4e03e6fd7755454c647d39c1Referencevia CVE List
- git.kernel.org/stable/c/f2375a308640e401c142c5426d52c3d10e016d25Referencevia CVE List
- git.kernel.org/stable/c/96dafbae77f50bfe2228bcfedcd8652c5e5f08e8Referencevia CVE List
- git.kernel.org/stable/c/d61ba609c3226af3c84268ba606ea06ee63e511bReferencevia CVE List
- git.kernel.org/stable/c/20aa934ace6917262ff579a73ec018d06a7bad1cReferencevia CVE List