No kernel Linux, a seguinte vulnerabilidade foi resolvida. gcov: use atualizações do contador atômico para corrigir falhas de acesso concorrentes A instrumentação GCOV do GCC pode combinar contadores globais de ramos com variáveis de indução de loop como uma otimização. Em gonfe_fast(), os loops de cópia interna são transformados de modo que o valor do contador GCOV é carregado várias vezes para calcular o endereço base do loop, iniciar o índice e terminar. Como os contadores GCOV são globais (não por- CPU), a execução concomitante em diferentes CPUs faz com que o contador mude entre cargas, produzindo valores inconsistentes e escreve memória fora de limites. O crash se manifesta durante o processamento do IPComp (IP Payload Compression) quando inflate_fast() é executado simultaneamente em várias CPUs:.

BUG: não é possível lidar com a falha da página para o endereço: ffffd 0 a 3 c 0902 ffa RIP: infla_faste+ 1431 Chame o rastreamento: zlib_inflate __deflate_decompress crypto_comp_decompress ipcomp_decompress [xfrm_ipcomp] ipcomp_input [xfrm_ipcomp] xfrm_input No ponto de falha, o compilador gerou três cargas a partir do mesmo contador global do GCOV (_gcov 0. inflare_fast+ 216 ) para calcular a base, iniciar e terminar para um loop indexado. Outra CPU modificou o contador entre cargas, tornando os valores inconsistentes - a gravação foi 3.4 MB passado por um 65 Tampão KB. Adicionar -fprofile- update=prefere- atomic para CFLAGS_GCOV no nível global no Makefile de nível superior, guardado por um teste de compilação de tentativas. O teste compila um programa mínimo com e sem - fprofile- update=prefer- atomic usando o KBUILD_ CFLAGS completo, e então compara símbolos não definidos nos arquivos de objetos resultantes. Se prefira-atômico introduz novas referências indefinidas (como __atomic_fetch_add_ 8 no i 386 ou __ aarch 64 _ldaddizer 8 _relaxar no braço 64 com o schema- atomics), a bandeira não é adicionada -- o kernel não liga contra a libatômica.

Em arquiteturas onde GCC inlines 64 - bit Atômico Contador Atômico Atualizações (x 86 _ 64, s 390,...) o teste passa e a bandeira está habilitada, impedindo que o compilador funda contadores com variáveis de indução do loop e corrigindo o crash de acesso concorrente observado. Em arquiteturas onde a bandeira introduziria dependências libatômicas, ela é omitida silenciosamente e o comportamento não é pior do que antes deste patch.

Mova o bloco CFLAGS_GCOV da sua posição original (antes do arquivo Makefile include) para depois das atribuições do núcleo KBUILD_ CFLAGS, mas antes dos scripts/Makefile.gcc- plugins incluem. Esta colocação garante que o teste de tentativa-run veja bandeiras específicas do arco (- m 32, -march=, -mno-outline- atomics) ao mesmo tempo que evitam bandeiras de plugins GCC (- fplugin=) que quebrariam o teste de builds limpos quando os objetos compartilhados ainda não existissem. Registro de aconselhamento: GHSA-xc 4 c- 7263 - hq 9 r. Identificadores relacionados: CVE- 2026 - 63825.

Tempo: GitHub Advisory Database publicou este registro em 2026 - 07 - 19 T 12: 30: 24.000 Z e lista a sua última modificação como 2026 - 07 - 20 T 15: 31: 47.000 Z. Gravidade: Crítico. Dados de pontuação publicados: CVSS_V 3: CVSS: 3.1 /AV:N/AC:L/PR:N/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 4 suporte de referências nestes tipos: AVISO, WEB.