Linux Kernel NULL Pointer Dereference Vulnerability in x86/i8259 Legacy PIC Interrupt Handling

Vulnerability

A vulnerability in the Linux kernel's handling of legacy Programmable Interrupt Controller (PIC) interrupts can lead to a NULL pointer dereference, causing a crash. This issue occurs in the periodic tick code after a crash is triggered, with the crash-kernel failing to boot about half the time. The problem arises because the legacy timer interrupt (IRQ0) is incorrectly resent in software during a spurious APIC interrupt, while the interrupt is in soft interrupt (tasklet) context. This context causes the get_irq_regs() function to return NULL, leading to the dereference error. The root cause is that legacy PIC interrupts are level-triggered and should not be resent in software, but the IRQ_LEVEL flag is not set, leaving the core code unaware of their trigger type.

Impact

Exploitation of this vulnerability causes a system crash due to a NULL pointer dereference, disrupting normal operations and potentially leading to a denial of service.

Added: Jun 9, 2025, 7:46 PM
Updated: Jun 9, 2025, 7:46 PM

Vulnerability Rating

Custom Algorithm
spread
9.0
impact
2.5
exploitability
4.0
remediation
0.0
relevance
0.0
threat
3.2
urgency
2.9
incentive
1.7

Our algorithm analyzes dozens of metrics to generate these 8 key vulnerability categories, which are then combined to calculate the overall risk score.