CVE-2023-54232
Unknown Unknown - Not Provided
Bus Error Handling Flaw in Linux m68k Kernel Causes Panic

Publication date: 2025-12-30

Last updated on: 2025-12-30

Assigner: kernel.org

Description
In the Linux kernel, the following vulnerability has been resolved: m68k: Only force 030 bus error if PC not in exception table __get_kernel_nofault() does copy data in supervisor mode when forcing a task backtrace log through /proc/sysrq_trigger. This is expected cause a bus error exception on e.g. NULL pointer dereferencing when logging a kernel task has no workqueue associated. This bus error ought to be ignored. Our 030 bus error handler is ill equipped to deal with this: Whenever ssw indicates a kernel mode access on a data fault, we don't even attempt to handle the fault and instead always send a SEGV signal (or panic). As a result, the check for exception handling at the fault PC (buried in send_sig_fault() which gets called from do_page_fault() eventually) is never used. In contrast, both 040 and 060 access error handlers do not care whether a fault happened on supervisor mode access, and will call do_page_fault() on those, ultimately honoring the exception table. Add a check in bus_error030 to call do_page_fault() in case we do have an entry for the fault PC in our exception table. I had attempted a fix for this earlier in 2019 that did rely on testing pagefault_disabled() (see link below) to achieve the same thing, but this patch should be more generic. Tested on 030 Atari Falcon.
CVSS Scores
EPSS Scores
Probability:
Percentile:
Meta Information
Published
2025-12-30
Last Modified
2025-12-30
Generated
2026-05-07
AI Q&A
2025-12-30
EPSS Evaluated
2026-05-05
NVD
EUVD
Affected Vendors & Products
Showing 1 associated CPE
Vendor Product Version / Range
linux linux_kernel *
Helpful Resources
Exploitability
CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-UNKNOWN
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?

This vulnerability involves the Linux kernel's handling of bus errors on the m68k architecture, specifically the 030 bus error handler. When forcing a task backtrace log through /proc/sysrq_trigger, the kernel may cause a bus error exception (e.g., due to NULL pointer dereferencing) that should be ignored. However, the 030 bus error handler does not properly handle kernel mode data faults and always sends a SEGV signal or panics instead of checking the exception table. This leads to improper fault handling. The fix adds a check in the 030 bus error handler to call the page fault handler if the faulting program counter is in the exception table, aligning its behavior with other architectures.


How can this vulnerability impact me? :

This vulnerability can cause the Linux kernel to improperly handle certain bus errors during kernel task backtrace logging, potentially leading to unexpected SEGV signals or kernel panics. This may result in system instability or crashes when the kernel encounters specific fault conditions that should be safely ignored, affecting system reliability.


Ask Our AI Assistant
Need more information? Ask your question to get an AI reply (Powered by our expertise)
0/70
EPSS Chart