{"id":"CVE-2023-53314","state":"PUBLISHED","title":"fbdev/ep93xx-fb: Do not assign to struct fb_info.dev","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nfbdev/ep93xx-fb: Do not assign to struct fb_info.dev\n\nDo not assing the Linux device to struct fb_info.dev. The call to\nregister_framebuffer() initializes the field to the fbdev device.\nDrivers should not override its value.\n\nFixes a bug where the driver incorrectly decreases the hardware\ndevice's reference counter and leaks the fbdev device.\n\nv2:\n\t* add Fixes tag (Dan)","publishedAt":"2025-09-16T16:11:51.435Z","updatedAt":"2026-08-05T09:13:27.940Z","severity":{"score":7.8,"label":"High","version":"3.1","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","source":"Linux"},"assigner":"Linux","products":["Linux Linux"],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"88017bda96a5fd568a982b01546c8fb1782dda62","status":"affected","lessThan":"ffdf2b020db717853167391a3a8d912e13428fa6","versionType":"git"},{"version":"88017bda96a5fd568a982b01546c8fb1782dda62","status":"affected","lessThan":"1c6ff2a7c593db851f23e31ace2baf557ea9d0ff","versionType":"git"},{"version":"88017bda96a5fd568a982b01546c8fb1782dda62","status":"affected","lessThan":"8ffa40ff64aa43a9a28fcf209b48d86a3e0f4972","versionType":"git"},{"version":"88017bda96a5fd568a982b01546c8fb1782dda62","status":"affected","lessThan":"4aade6c9100a3537788b6a9c7ac481037d19efdf","versionType":"git"},{"version":"88017bda96a5fd568a982b01546c8fb1782dda62","status":"affected","lessThan":"309c27162afea79b3c7f8747bb650faf6923b639","versionType":"git"},{"version":"88017bda96a5fd568a982b01546c8fb1782dda62","status":"affected","lessThan":"f83c1b13f8154e0284448912756d0a351a1a602a","versionType":"git"},{"version":"88017bda96a5fd568a982b01546c8fb1782dda62","status":"affected","lessThan":"0517fc5a71333b315164736bbd32608894fbb872","versionType":"git"},{"version":"88017bda96a5fd568a982b01546c8fb1782dda62","status":"affected","lessThan":"f90a0e5265b60cdd3c77990e8105f79aa2fac994","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/video/fbdev/ep93xx-fb.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"2.6.32","status":"affected"},{"version":"0","status":"unaffected","lessThan":"2.6.32","versionType":"semver"},{"version":"4.14.326","status":"unaffected","lessThanOrEqual":"4.14.*","versionType":"semver"},{"version":"4.19.295","status":"unaffected","lessThanOrEqual":"4.19.*","versionType":"semver"},{"version":"5.4.257","status":"unaffected","lessThanOrEqual":"5.4.*","versionType":"semver"},{"version":"5.10.195","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.15.132","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.1.54","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.5.4","status":"unaffected","lessThanOrEqual":"6.5.*","versionType":"semver"},{"version":"6.6","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/video/fbdev/ep93xx-fb.c"]}],"references":["https://git.kernel.org/stable/c/ffdf2b020db717853167391a3a8d912e13428fa6","https://git.kernel.org/stable/c/1c6ff2a7c593db851f23e31ace2baf557ea9d0ff","https://git.kernel.org/stable/c/8ffa40ff64aa43a9a28fcf209b48d86a3e0f4972","https://git.kernel.org/stable/c/4aade6c9100a3537788b6a9c7ac481037d19efdf","https://git.kernel.org/stable/c/309c27162afea79b3c7f8747bb650faf6923b639","https://git.kernel.org/stable/c/f83c1b13f8154e0284448912756d0a351a1a602a","https://git.kernel.org/stable/c/0517fc5a71333b315164736bbd32608894fbb872","https://git.kernel.org/stable/c/f90a0e5265b60cdd3c77990e8105f79aa2fac994"],"weaknesses":[],"ingestedAt":"2026-10-29T20:06:33.064Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2023/53xxx/CVE-2023-53314.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2023-53314","state":"PUBLISHED","datePublished":"2025-09-16T16:11:51.435Z","dateUpdated":"2026-08-05T09:13:27.940Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2025-09-16T16:08:59.562Z"},"containers":{"cna":{"title":"fbdev/ep93xx-fb: Do not assign to struct fb_info.dev","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nfbdev/ep93xx-fb: Do not assign to struct fb_info.dev\n\nDo not assing the Linux device to struct fb_info.dev. The call to\nregister_framebuffer() initializes the field to the fbdev device.\nDrivers should not override its value.\n\nFixes a bug where the driver incorrectly decreases the hardware\ndevice's reference counter and leaks the fbdev device.\n\nv2:\n\t* add Fixes tag (Dan)"}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"88017bda96a5fd568a982b01546c8fb1782dda62","status":"affected","lessThan":"ffdf2b020db717853167391a3a8d912e13428fa6","versionType":"git"},{"version":"88017bda96a5fd568a982b01546c8fb1782dda62","status":"affected","lessThan":"1c6ff2a7c593db851f23e31ace2baf557ea9d0ff","versionType":"git"},{"version":"88017bda96a5fd568a982b01546c8fb1782dda62","status":"affected","lessThan":"8ffa40ff64aa43a9a28fcf209b48d86a3e0f4972","versionType":"git"},{"version":"88017bda96a5fd568a982b01546c8fb1782dda62","status":"affected","lessThan":"4aade6c9100a3537788b6a9c7ac481037d19efdf","versionType":"git"},{"version":"88017bda96a5fd568a982b01546c8fb1782dda62","status":"affected","lessThan":"309c27162afea79b3c7f8747bb650faf6923b639","versionType":"git"},{"version":"88017bda96a5fd568a982b01546c8fb1782dda62","status":"affected","lessThan":"f83c1b13f8154e0284448912756d0a351a1a602a","versionType":"git"},{"version":"88017bda96a5fd568a982b01546c8fb1782dda62","status":"affected","lessThan":"0517fc5a71333b315164736bbd32608894fbb872","versionType":"git"},{"version":"88017bda96a5fd568a982b01546c8fb1782dda62","status":"affected","lessThan":"f90a0e5265b60cdd3c77990e8105f79aa2fac994","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/video/fbdev/ep93xx-fb.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"2.6.32","status":"affected"},{"version":"0","status":"unaffected","lessThan":"2.6.32","versionType":"semver"},{"version":"4.14.326","status":"unaffected","lessThanOrEqual":"4.14.*","versionType":"semver"},{"version":"4.19.295","status":"unaffected","lessThanOrEqual":"4.19.*","versionType":"semver"},{"version":"5.4.257","status":"unaffected","lessThanOrEqual":"5.4.*","versionType":"semver"},{"version":"5.10.195","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.15.132","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.1.54","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.5.4","status":"unaffected","lessThanOrEqual":"6.5.*","versionType":"semver"},{"version":"6.6","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["drivers/video/fbdev/ep93xx-fb.c"]}],"references":[{"url":"https://git.kernel.org/stable/c/ffdf2b020db717853167391a3a8d912e13428fa6"},{"url":"https://git.kernel.org/stable/c/1c6ff2a7c593db851f23e31ace2baf557ea9d0ff"},{"url":"https://git.kernel.org/stable/c/8ffa40ff64aa43a9a28fcf209b48d86a3e0f4972"},{"url":"https://git.kernel.org/stable/c/4aade6c9100a3537788b6a9c7ac481037d19efdf"},{"url":"https://git.kernel.org/stable/c/309c27162afea79b3c7f8747bb650faf6923b639"},{"url":"https://git.kernel.org/stable/c/f83c1b13f8154e0284448912756d0a351a1a602a"},{"url":"https://git.kernel.org/stable/c/0517fc5a71333b315164736bbd32608894fbb872"},{"url":"https://git.kernel.org/stable/c/f90a0e5265b60cdd3c77990e8105f79aa2fac994"}],"metrics":[{"cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","baseScore":7.8,"baseSeverity":"HIGH"},"scenarios":[{"lang":"en","value":"AV:L - The bug is in the ep93xx-fb platform driver probe/remove path for the on-SoC Cirrus EP93xx LCD controller; it is reached only locally via boot probe, module load, or sysfs bind/unbind, with no network or hot-plug physical entry point.\nAC:L - The incorrect info->dev assignment and resulting device refcount imbalance are deterministic on probe/unregister; the attacker does not depend on a race or an uncontrolled memory layout.\nPR:L - Although sysfs bind/unbind is root-owned 0200, the highest reasonable actor is a low-privileged local user on an EP93xx system where the framebuffer is already bound and /dev/fbN is usable, so PR:L is chosen over PR:H.\nUI:N - Exploitation does not require a separate victim action such as mounting a filesystem or manually opening a device beyond the attacker’s own local access.\nS:U - Impact stays within the host kernel’s device/refcount authority; this is not a VM escape, IOMMU bypass, or other cross-boundary break.\nC:H - Incorrectly dropping the hardware device’s reference count can free the live platform device while fbdev code still uses it, yielding a use-after-free that can be leveraged for arbitrary kernel memory disclosure.\nI:H - The same device UAF is exploitable for heap reuse and arbitrary write/control-flow hijack primitives against kernel memory, not merely a benign bookkeeping error.\nA:H - A device UAF or bad put on the platform device can oops/panic the kernel on unregister or later fbdev use, and the companion fbdev device leak is secondary to that crash impact."}]}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-08-05T09:13:27.940Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.32","versionEndExcluding":"4.14.326"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.32","versionEndExcluding":"4.19.295"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.32","versionEndExcluding":"5.4.257"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.32","versionEndExcluding":"5.10.195"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.32","versionEndExcluding":"5.15.132"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.32","versionEndExcluding":"6.1.54"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.32","versionEndExcluding":"6.5.4"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.32","versionEndExcluding":"6.6"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"cvssV3_1":{"scope":"UNCHANGED","version":"3.1","baseScore":5.5,"attackVector":"LOCAL","baseSeverity":"MEDIUM","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","integrityImpact":"NONE","userInteraction":"NONE","attackComplexity":"LOW","availabilityImpact":"HIGH","privilegesRequired":"LOW","confidentialityImpact":"NONE"}},{"other":{"type":"ssvc","content":{"id":"CVE-2023-53314","role":"CISA Coordinator","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"version":"2.0.3","timestamp":"2026-01-14T18:25:34.219455Z"}}}],"problemTypes":[{"descriptions":[{"lang":"en","type":"CWE","description":"CWE-noinfo Not enough information"}]}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-01-14T18:32:57.524Z"}}]}}}