No núcleo do Linux vulnerabilidade (), permitindo a exploração remota de negação de serviço através do envio de pacotes UDP formatados de forma especial (packet-of-death). O problema é causado por um erro no manipulador udp_gro_receive_segment (net/ipv4/udp_offload.c) na implementação da tecnologia GRO (Generic Receive Offload) e pode levar à corrupção do conteúdo das áreas de memória do núcleo ao processar pacotes UDP com preenchimento nulo (payload vazio).
O problema afeta apenas o núcleo , uma vez que o suporte GRO para sockets UDP foi em novembro do ano passado e pôde ser incluído apenas na última versão estável do núcleo. A tecnologia GRO permite acelerar o processamento de um grande número de pacotes recebidos, através da agregação de vários pacotes em blocos maiores, que não requerem o processamento separado de cada pacote.
Para TCP, o problema não se manifesta, pois para este protocolo não é suportada a agregação de pacotes sem payload.
A vulnerabilidade foi corrigida apenas na forma , uma atualização corretiva ainda não foi publicada (na atualização de ontem 5.0.11 a correção ). Do ponto de vista dos distribuições, o núcleo 5.0 conseguiu ser incluído em , , , e outras distribuições que estão sendo continuamente atualizadas. , , e o problema não os afeta.
O problema foi encontrado como resultado de do sistema automatizado de fuzzing criado pela empresa Google e do analisador (KernelAddressSanitizer), direcionado à detecção de erros no gerenciamento de memória e à identificação de acessos incorretos à memória, como acessos a áreas de memória liberadas e inserção de código em áreas de memória que não são destinadas a tais manipulações.
Fonte: opennet.ru
