No kernel Linux, a seguinte vulnerabilidade foi resolvida. rede: af_key: inicialize alg_key_len para estados IPComp Pfkey_ msg 2 xfrm_state() lida com o caso IPComp (SADB_X_SATYPE_IPCOMP) ao alocar x->calg e copiar apenas o nome do algoritmo: x->calg = kmalloc_ obj(*x->calg); se (!x->calg) { err = - ENOMEM; goto out; } strcpy(x->calg->alg_ name, a-> name); x->props.calgo = África do Sul-> sadb_ sa_ encrypt;.

Ao contrário dos ramos de autenticação (x->aalg) e criptografia (x->ealg) da mesma função, o ramo de compressão nunca inicializa calg->alg_key_len. O IPComp não possui nenhuma chave e a alocação só reserva o tamanho do(struct xfrm_algo) (isto é, não há espaço para uma chave), por isso o campo é deixado contendo dados de lajes não-NICIALIZED. calg->alg_key_len é usado posteriormente como um comprimento por xfrm_algo_clone() quando um estado IPComp é clonado durante XFRM_ MSG_ MIGGRATE:.

xfrm_state_migrate() xfrm_state_clone_and_setup() x->calg = xfrm_algo_clone(orig->calg); kmemdup(orig, xfrm_alg_len(orig)). onde xfrm_alg_len() retorna tamanho de(*alg) + (alg_key_len + 7 ) / 8. Com um lixo não zero gg_key_len, kmemdup() lê depois do fim do 68 -objeto de calg byte. Adicionando um IPComp África do Sul via PF_KEY e migrando-o ativa (net-next, KASAN, init_on_alloc= 0 ): BUG: KASAN: laje- fora-de-conjuntos em kmemdup_noprof+ 0 x 44 / 0 x 60 Leia o tamanho 4164 no addr ff 11000025 a 74980 por diag tarefa 2 / 9287 CPU: 3 UID: 0 PID: 9287 Comunicação: diag 2 7.1.0 -rc 6 - g 903 db 046 d 557 # 1 Chame o rastreamento: dump_stack_lvl+ 0 x 10 e/ 0 x 1 f 0 print_report+ 0 xf 7 / 0 x 600 kasan_report+ 0 xe 4 / 0 x 120 kasan_check_range+ 0 x 105 / 0 x 1 b 0 _asan_mencpy+ 0 x 23 / 0 x 60 kmemdup_noprof+ 0 x 44 / 0 x 60 xfrm_state_migrate+ 0 x 70 a/ 0 x 1 da 0 xfrm_migrar+ 0 x 753 / 0 x 18 a 0 xfrm_do_migrate+ 0 xb 47 / 0 xf 10 xfrm_user_rcv_msg+ 0 x 411 / 0 xb 50 netlink_rcv_skb+ 0 x 158 / 0 x 420 xfrm_netlink_rcv+ 0 x 71 / 0 x 90 netlink_unicast+ 0 x 584 / 0 x 850 netlink_sendmsg+ 0 x 8 b 0 / 0 xdc 0 ____sys_sendmsg+ 0 x 9 f 7 / 0 xb 90 ___sys_sendmsg+ 0 x 134 / 0 x 1 d 0 __sys_sendmsg+ 0 x 16 d/ 0 x 220 do_syscall_ 64 + 0 x 116 / 0 x 7 d 0 digitação_SISCO_ 64 _após_hwframe+ 0 x 77 / 0 x 7 f.

Alocado por tarefa 9287: kasan_save_stack+ 0 x 33 / 0 x 60 kasan_save_track+ 0 x 14 / 0 x 30 __kasan_kmalloc+ 0 xaa/ 0 xb 0 pfkey_add+ 0 x 2652 / 0 x 2 x 0 pfkey_process+ 0 x 6 d 0 / 0 x 830 pfkey_sendmsg+ 0 x 42 c/ 0 x 850 __sys_sendto+ 0 x 461 / 0 x 4 b 0 __x 64 _Sys_sendto+ 0 xe 0 / 0 x 1 c 0 do_syscall_ 64 + 0 x 116 / 0 x 7 d 0 digitação_SISCO_ 64 _após_hwframe+ 0 x 77 / 0 x 7 f O endereço de buggy pertence ao objeto no ff 11000025 a 74980 que pertence ao cache kmalloc- 96 de tamanho 96 O endereço de buggy está localizado 0 bytes dentro da alocação 68 -byte região [ff 11000025 a 74980, ff 11000025 a 749 c 4 ).

Dependendo do valor unicializado, o mesmo campo pode solicitar uma alocação de kmemdup() sobredimensionada e fazer com que o clone de migração falhe. O caminho do link de rede do XFRM não é afetado: verifique_one_alg() rejeita um atributo XFRMA_ALG_COMP menor que o xfrm_alg_len(), por isso, uma calg adicionada via XFRM_ MSG_ NEWSA é sempre auto- consistente.

Inicializar calg->alg_key_len para 0, combinando com os ramos aalg/ ealg. Registro de aconselhamento: GHSA-rcfx-m 5 g 2 - 2 - O que é isso? Identificadores relacionados: CVE- 2026 - 64436.

Tempo: GitHub Advisory Database publicou este registro em 2026 - 07 - 25 T 12: 31: 35.000 Z e lista a sua última modificação como 2026 - 07 - 27 T 06: 30: 37.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:N/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 9 suporte de referências nestes tipos: AVISO, WEB.