Um bug identificado no kernel Linux 6.13, que está prestes a ser lançado, foi causado por um código de um funcionário da Microsoft.

Linus Torvalds tinha a intenção de publicar a versão do núcleo Linux 6.13 neste domingo, mas provavelmente os testes da versão 6.13 serão prolongados por uma semana devido a problemas de estabilidade nas mudanças preparadas por um funcionário da Microsoft e aceitas na versão 6.13 em novembro. Ademais, observa-se que o patch que causou a falha foi submetido de maneira não convencional — mas foi aceito, embora não tenha recebido nenhuma confirmação (ACK) dos mantenedores da arquitetura x86, o que é uma violação das práticas padrão.

O patch adicionava a possibilidade de usar grandes páginas de memória em modo ROX (Read Only Execute) ao alocar memória destinada a armazenar código executável. O ROX permite utilizar memória com código executável em modo somente leitura, o que dificulta a exploração de algumas vulnerabilidades. No núcleo 6.13, o uso do cache de grandes páginas de memória executável, refletidas como ROX, foi ativado por padrão para o código executável de módulos em sistemas x86_64. A alteração resolvia o problema de mapeamento em modo ROX de páginas para códigos executáveis ainda não totalmente formados, permitindo evitar o re-mapeamento temporário de páginas ROX em modo de escrita até que a preparação dos módulos do núcleo para operação estivesse concluída.

Na etapa final de testes do núcleo 6.13, um engenheiro da Intel identificou uma falha que impedia o núcleo de sair corretamente do modo de suspensão em alguns laptops com processadores Intel (por exemplo, com CPU baseada na microarquitetura Alderlake). A falha se manifestava ao compilar o núcleo com o compilador Clang com o modo de proteção CFI (Control Flow Integrity) ativado, que bloqueia violações da ordem normal de execução (control flow) devido à aplicação de exploits que alteram os ponteiros das funções armazenados na memória. Como solução temporária, os mantenedores das empresas Intel e AMD, responsáveis pela arquitetura x86, sugeriram desativar o uso de EXECMEM_ROX no núcleo 6.13, até que um patch completo para resolver o problema seja preparado e testado (a primeira opção de correção não resolveu o problema).

Fonte: opennet.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster