No kernel Linux, a seguinte vulnerabilidade foi resolvida. l 2 tp: use refcount_inc_not_zero em l 2 tp_session_get_by_ifname Um leitor em l 2 tp_session_get_by_ifname() pode retornar um ponteiro para uma sessão cujo refcount alcançou zero. O getter toma sua referência com refcount_inc(), mas a cada outra sessão getter no mesmo arquivo (l 2 tp_v 2 _sessões_get, l 2 tp_v 3 _session_get, e as _get_next variantes correspondentes) usa refcount_inc_not_zero() porque a busca IDR/RCU pode correr com refcount_dec_and_test() -> l 2 tp_session_free() -> kfree_rcu(). O ifname getter é o único outlier; a inconsistência foi levantada na lista após 979 c 017803 c 4 (" l) 2 tp: use list_del_rcu em l 2 tp_session_unhash").
Um leitor dentro do rcu_read_lock_bh() que corresponde à sessão->ifname pode ser antecipado entre o strcmp() e o refcount_inc(). Se a última referência cair em outra CPU nessa janela, o refcount_inc() do leitor corre em um contador que alcança zero. refcount_t capta a adição-em-zero, imprime "refcount_t: adição no 0; use- after- free", satura o contador e retorna o ponteiro saturado para o que chama. A memória da sessão é mantida ao vivo pela seção de leitura da RCU em voo, mas a chamada de volta do kfree_rcu() está na fila de l 2 tp_session_free() irá libertá- lo uma vez que o período de graça se fechar; um chamador que desreferirá a sessão devolvida depois do ponto atinge uma laje- uso- depois- livre. Na PREEMPT_RT local_bh_disable() é um bloqueio de dormir por CPU e a janela de pré- emissão é real; na estoque kernels PREEMPT local_bh_disable() é um incremento de preemp_count que fecha a corrida cruzada de CPU na prática (veja abaixo). Use refcount_inc_not_zero() e continue a caminhada da lista no fracasso, combinando com os outros getters de sessão no arquivo. O getter ifname é o único getter de sessão na rede/ l 2 tp/ que ainda usa o padrão refcount_ inc() nu; esta mudança restaura a consistência interna do arquivo. O caminho de sucesso não está modificado.
Registro de aconselhamento: GHSA- 9 qwr- gw 6 x- fmgj. Identificadores relacionados: CVE- 2026 - 63918. Tempo: GitHub Advisory Database publicou este registro em 2026 - 07 - 19 T 18: 31: 46.000 Z e lista a sua última modificação como 2026 - 07 - 20 T 15: 31: 51.000 Z.
Severidade: ALTAMENTE. Dados de pontuação publicados: CVSS_V 3: CVSS: 3.1 /AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H. 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 5 suporte de referências nestes tipos: AVISO, WEB.