{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2022-49163","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","state":"PUBLISHED","assignerShortName":"Linux","dateReserved":"2025-02-26T01:49:39.277Z","datePublished":"2025-02-26T01:55:24.043Z","dateUpdated":"2026-08-05T08:54:10.174Z"},"containers":{"cna":{"providerMetadata":{"orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux","dateUpdated":"2026-08-05T08:54:10.174Z"},"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nmedia: imx-jpeg: fix a bug of accessing array out of bounds\n\nWhen error occurs in parsing jpeg, the slot isn't acquired yet, it may\nbe the default value MXC_MAX_SLOTS.\nIf the driver access the slot using the incorrect slot number, it will\naccess array out of bounds.\nThe result is the driver will change num_domains, which follows\nslot_data in struct mxc_jpeg_dev.\nThen the driver won't detach the pm domain at rmmod, which will lead to\nkernel panic when trying to insmod again."}],"metrics":[{"cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H","baseScore":7.1,"baseSeverity":"HIGH"},"scenarios":[{"lang":"en","value":"AV:L - The bug is in the i.MX8 V4L2 mem2mem JPEG codec (mxc_jpeg_device_run), reached only via local open/ioctl/streaming on /dev/video*. It is not reachable from network packets or physical bus traffic.\nAC:L - An attacker who can open the decoder can reliably set jpeg_parse_error (malformed JPEG in buf_queue, or capture/output plane mismatch) while ctx->slot is still MXC_MAX_SLOTS, causing a deterministic out-of-bounds write with no race or uncontrollable condition.\nPR:L - The driver has no capability checks; V4L2 nodes are group video with uaccess, and on typical i.MX/Android deployments unprivileged apps can use the JPEG codec. Real root is not required.\nUI:N - The attacker opens the device and queues buffers themselves; no separate victim action is needed to hit the parse-error path.\nS:U - The OOB write corrupts fields in the same kernel mxc_jpeg_dev object and does not cross a VM, IOMMU, or other security-authority boundary.\nC:N - The bug is a write-only store of a fixed false/0 into the byte overlapping num_domains; there is no out-of-bounds read or other disclosure primitive.\nI:H - Accessing slot_data[MXC_MAX_SLOTS].used is an out-of-bounds write into adjacent kernel memory (num_domains). Per kernel CVSS guidance, out-of-bounds writes are scored High.\nA:H - Corrupting num_domains skips PM-domain detach on rmmod and the fix commit documents a resulting kernel panic on re-insmod; kernel crash/panic is High availability impact."}]}],"affected":[{"product":"Linux","vendor":"Linux","defaultStatus":"unaffected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/media/platform/imx-jpeg/mxc-jpeg.c"],"versions":[{"version":"2db16c6ed72ce644d5639b3ed15e5817442db4ba","lessThan":"02f9f97d54ffc85b50ad77f5b1f3c8f69cd17747","status":"affected","versionType":"git"},{"version":"2db16c6ed72ce644d5639b3ed15e5817442db4ba","lessThan":"20c8b90430c5d6c4a3936eaa7c35aac670581487","status":"affected","versionType":"git"},{"version":"2db16c6ed72ce644d5639b3ed15e5817442db4ba","lessThan":"e209e6db2e527db6a93b14c2deedf969caca78fc","status":"affected","versionType":"git"},{"version":"2db16c6ed72ce644d5639b3ed15e5817442db4ba","lessThan":"97558d170a1236280407e8d29a7d095d2c2ed554","status":"affected","versionType":"git"}]},{"product":"Linux","vendor":"Linux","defaultStatus":"affected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/media/platform/imx-jpeg/mxc-jpeg.c"],"versions":[{"version":"5.13","status":"affected"},{"version":"0","lessThan":"5.13","status":"unaffected","versionType":"semver"},{"version":"5.15.33","lessThanOrEqual":"5.15.*","status":"unaffected","versionType":"semver"},{"version":"5.16.19","lessThanOrEqual":"5.16.*","status":"unaffected","versionType":"semver"},{"version":"5.17.2","lessThanOrEqual":"5.17.*","status":"unaffected","versionType":"semver"},{"version":"5.18","lessThanOrEqual":"*","status":"unaffected","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.13","versionEndExcluding":"5.15.33"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.13","versionEndExcluding":"5.16.19"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.13","versionEndExcluding":"5.17.2"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.13","versionEndExcluding":"5.18"}]}]}],"references":[{"url":"https://git.kernel.org/stable/c/02f9f97d54ffc85b50ad77f5b1f3c8f69cd17747"},{"url":"https://git.kernel.org/stable/c/20c8b90430c5d6c4a3936eaa7c35aac670581487"},{"url":"https://git.kernel.org/stable/c/e209e6db2e527db6a93b14c2deedf969caca78fc"},{"url":"https://git.kernel.org/stable/c/97558d170a1236280407e8d29a7d095d2c2ed554"}],"title":"media: imx-jpeg: fix a bug of accessing array out of bounds","x_generator":{"engine":"bippy-1.2.0"}}}}