No kernel Linux, a seguinte vulnerabilidade foi resolvida. traçamento: corrigir a dereferência do ponteiro NULL no func_set_flag() func_set_flag() desrefere tr->current_trace_flags antes de verificar que o rastreador atual é realmente o rastreador de funções. Quando o rastreador ativo foi desviado da "função" (por exemplo, para "wakeup_rt"), o tr->current_trace_flags pode ser NULL, levando a uma desreferência de ponteiro NULL e falha no kernel. A cadeia de chamadas que aciona isto é. trace_options_write() -> __set_tracer_option() -> trace->set_flag() /* func_set_flag */ No func_set_flag(), a primeira operação é. se (!!set ==! (tr->current_trace_flags->val & bit)).

Isto desrefere o tr->current_trace_flags incondicionalmente. A verificação de segurança que protege contra um rastreador não- funcional: se (tr->current_trace!= &function_trace) devolver 0. é colocado *após* a deferência, que é muito tarde. Isto foi observado com o seguinte dump de choque. BUG: não é possível lidar com a falha da página no 0000000000000000 RIP: func_set_flag+ 0 xd Chame o rastreamento: __set_tracer_option+ 0 x 27 trace_opções_write+ 0 x 75 vfs_write+ 0 x 12 um ksys_write+ 0 x 66 do_syscall_ 64 + 0 x 5 b.

RIP: ffffffffff 914 c 973 d RSP: ff 67 ec 88 b 01 dfdf 0 RFLAGS: 00010202 RAX: 0000000000000000 RBX: ff 3 a 826 e 80354580 RCX: 0000000000000001 RDX: 0000000000000001 RSI: 0000000000000000 RDI: ffffffff 93918080 O desmontagem confirma a falha. func_set_flag+ 0: mov 0 x 1 f 08 (%rdi),%rax; RAX = tr->current_trace_flags = NULL func_set_flag+ 13: mov (%rax),%eax; falha na página: dereferência NULL No momento do crash: tr->current_trace_flags = 0 x 0 (NULL) tr->current_tracce = wakeup_rt_tracer (não function_tracce) O cenário é que um processo abre um arquivo de opção de rastreador de funções (como "func_stack_trace"), então o rastreador atual é mudado para outro rastreador (por exemplo, "wakeup_rt"), que define current_trace_flags para NULL. Quando o processo subsequentemente escreve para o arquivo de opção, o func_set_flag() é invocado e falha na deferência NULL.

Corrija isso movendo a verificação current_trace antes da desreferência current_trace_flags, de modo que o func_set_flag() retorne cedo quando o rastreador da função não estiver ativo. Registro de aconselhamento: GHSA-xvp 7 - xr 44 - 89 MJ. Identificadores relacionados: CVE- 2026 - 64451. Tempo: GitHub Advisory Database publicou este registro em 2026 - 07 - 25 T 12: 31: 36.000 Z e lista a sua última modificação como 2026 - 07 - 25 T 12: 31: 36.000 Z.

Severidade: não classificado. Nenhum vetor de pontuação está listado no registro. Software afetado: o registro de aconselhamento não fornece um pacote normalizado ou faixa de versões. Classificação e evidência: nenhum identificador CWE está listado. O registro contém 3 suporte de referências nestes tipos: AVISO, WEB.