{"id":"CVE-2023-54198","revision":"c0417680c71340f8ae5b19e926eea4f1","records":[{"revision":"c0417680c71340f8ae5b19e926eea4f1","observedAt":"2026-10-23T15:48:27.903+00:00","statement":{"source":"cve-program","id":"CVE-2023-54198","aliases":[],"title":"tty: fix out-of-bounds access in tty_driver_lookup_tty()","description":"In the Linux kernel, the following vulnerability has been resolved:\n\ntty: fix out-of-bounds access in tty_driver_lookup_tty()\n\nWhen specifying an invalid console= device like console=tty3270,\ntty_driver_lookup_tty() returns the tty struct without checking\nwhether index is a valid number.\n\nTo reproduce:\n\nqemu-system-x86_64 -enable-kvm -nographic -serial mon:stdio \\\n-kernel ../linux-build-x86/arch/x86/boot/bzImage \\\n-append \"console=ttyS0 console=tty3270\"\n\nThis crashes with:\n\n[    0.770599] BUG: kernel NULL pointer dereference, address: 00000000000000ef\n[    0.771265] #PF: supervisor read access in kernel mode\n[    0.771773] #PF: error_code(0x0000) - not-present page\n[    0.772609] Oops: 0000 [#1] PREEMPT SMP PTI\n[    0.774878] RIP: 0010:tty_open+0x268/0x6f0\n[    0.784013]  chrdev_open+0xbd/0x230\n[    0.784444]  ? cdev_device_add+0x80/0x80\n[    0.784920]  do_dentry_open+0x1e0/0x410\n[    0.785389]  path_openat+0xca9/0x1050\n[    0.785813]  do_filp_open+0xaa/0x150\n[    0.786240]  file_open_name+0x133/0x1b0\n[    0.786746]  filp_open+0x27/0x50\n[    0.787244]  console_on_rootfs+0x14/0x4d\n[    0.787800]  kernel_init_freeable+0x1e4/0x20d\n[    0.788383]  ? rest_init+0xc0/0xc0\n[    0.788881]  kernel_init+0x11/0x120\n[    0.789356]  ret_from_fork+0x22/0x30","state":0,"publishedAt":"2025-12-30T12:09:04.229+00:00","modifiedAt":"2026-10-15T21:41:41.131+00:00","affected":[{"ecosystem":"Vendor product","name":"Linux","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"product\": \"Linux\",\n                    \"vendor\": \"Linux\",\n                    \"defaultStatus\": \"unaffected\",\n                    \"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\n                    \"programFiles\": [\n                        \"drivers/tty/tty_io.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"99f1fe189daf8e99a847e420567e49dd7ee2aae7\",\n                            \"lessThan\": \"3df6f492f500a16c231f07ccc6f6ed1302caddf9\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"99f1fe189daf8e99a847e420567e49dd7ee2aae7\",\n                            \"lessThan\": \"b79109d6470aaae7062998353e3a19449055829d\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"99f1fe189daf8e99a847e420567e49dd7ee2aae7\",\n                            \"lessThan\": \"953a4a352a0c185460ae1449e4c6e6658e55fdfc\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"99f1fe189daf8e99a847e420567e49dd7ee2aae7\",\n                            \"lessThan\": \"84ea44dc3e4ecb2632586238014bf6722aa5843b\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"99f1fe189daf8e99a847e420567e49dd7ee2aae7\",\n                            \"lessThan\": \"f9d9d25ad1f0d060eaf297a2f7f03b5855a45561\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"99f1fe189daf8e99a847e420567e49dd7ee2aae7\",\n                            \"lessThan\": \"765566110eb0da3cf60198b0165ecceeaafa6444\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"99f1fe189daf8e99a847e420567e49dd7ee2aae7\",\n                            \"lessThan\": \"fcfeaa570f7a5c2d5f4f14931909531ff18b7fde\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"99f1fe189daf8e99a847e420567e49dd7ee2aae7\",\n                            \"lessThan\": \"db4df8e9d79e7d37732c1a1b560958e8dadfefa1\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        }\n                    ]\n                }"},{"ecosystem":"Vendor product","name":"Linux","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"product\": \"Linux\",\n                    \"vendor\": \"Linux\",\n                    \"defaultStatus\": \"affected\",\n                    \"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\n                    \"programFiles\": [\n                        \"drivers/tty/tty_io.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"2.6.28\",\n                            \"status\": \"affected\"\n                        },\n                        {\n                            \"version\": \"0\",\n                            \"lessThan\": \"2.6.28\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"4.14.308\",\n                            \"lessThanOrEqual\": \"4.14.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"4.19.276\",\n                            \"lessThanOrEqual\": \"4.19.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"5.4.235\",\n                            \"lessThanOrEqual\": \"5.4.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"5.10.173\",\n                            \"lessThanOrEqual\": \"5.10.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"5.15.100\",\n                            \"lessThanOrEqual\": \"5.15.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.1.18\",\n                            \"lessThanOrEqual\": \"6.1.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.2.5\",\n                            \"lessThanOrEqual\": \"6.2.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.3\",\n                            \"lessThanOrEqual\": \"*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"original_commit_for_fix\"\n                        }\n                    ]\n                }"}],"metrics":[{"system":"CVSS 3.1","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","score":7.8,"severity":"HIGH"}],"references":["https://git.kernel.org/stable/c/3df6f492f500a16c231f07ccc6f6ed1302caddf9","https://git.kernel.org/stable/c/b79109d6470aaae7062998353e3a19449055829d","https://git.kernel.org/stable/c/953a4a352a0c185460ae1449e4c6e6658e55fdfc","https://git.kernel.org/stable/c/84ea44dc3e4ecb2632586238014bf6722aa5843b","https://git.kernel.org/stable/c/f9d9d25ad1f0d060eaf297a2f7f03b5855a45561","https://git.kernel.org/stable/c/765566110eb0da3cf60198b0165ecceeaafa6444","https://git.kernel.org/stable/c/fcfeaa570f7a5c2d5f4f14931909531ff18b7fde","https://git.kernel.org/stable/c/db4df8e9d79e7d37732c1a1b560958e8dadfefa1"],"sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2023-54198","license":"CVE Program Terms of Use","key":"cve-program:CVE-2023-54198","identifiers":["CVE-2023-54198"]},"retained":false,"historicalAffected":[]}],"coverage":[]}