PT-2026-121858

CVE-2026-98888

·

Publicado

2026-10-23

·

Atualizado

2026-10-23

Descrição por

Pontuação
N/A
Não disponível

Não há classificações de severidade ou métricas disponíveis. Quando houver, atualizaremos as informações correspondentes na página.

In the Linux kernel, the following vulnerability has been resolved:
arm64: kprobes: Allow reentering kprobes while single-stepping
A kprobe can be hit while another kprobe is in KPROBE HIT SS state. This can happen when tracing or perf code runs from the debug exception path while the first kprobe is preparing or executing its out-of-line single-step instruction.
Currently arm64 treats a kprobe hit in KPROBE HIT SS as unrecoverable, the same as a hit in KPROBE REENTER. This is too strict. A hit in KPROBE HIT SS is still a one-level reentry and can be handled by saving the current kprobe state and setting up single-step for the new probe, just like reentry from KPROBE HIT ACTIVE or KPROBE HIT SSDONE.
The truly unrecoverable case is hitting another kprobe while already in KPROBE REENTER, because the reentry save area has already been consumed.
Move KPROBE HIT SS to the recoverable reentry cases and leave KPROBE REENTER as the unrecoverable nested reentry case.
This change also requires saving saved irqflag in struct prev kprobe. When a nested kprobe calls kprobes save local irqflag(), it overwrites kcb->saved irqflag with the currently masked DAIF value, losing the outer kprobe's original DAIF state. Without this fix, when the outer kprobe's single-step finishes, kprobes restore local irqflag() applies the wrong DAIF mask and leaves interrupts permanently disabled.
Extend struct prev kprobe with a saved irqflag field and save/restore it alongside kp and status. This ensures the outer kprobe's original interrupt state is preserved across reentry.
This mirrors the x86 fix in commit 6a5022a56ac3 ("kprobes/x86: Allow to handle reentered kprobe on single-stepping").
Fornecedores
Produtos afetados
Identificadores relacionados
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾