Na noite de sexta-feira, foi integrada ao kernel Linux 6.10 a nova chamada de sistema mseal() para a selagem de memória.
Liderada por Jeff Xu da equipe do Chrome do Google, a mseal() tem como objetivo proteger o mapeamento de memória contra modificações.
A documentação do Linux explica que CPUs modernas suportam permissões de memória como os bits RW e NX. Essas permissões melhoram a segurança contra bugs de corrupção de memória. Com o mseal(), a proteção vai além, protegendo o próprio mapeamento de memória.
Essa proteção é essencial para mitigar os problemas de corrupção de memória onde um ponteiro corrompido é passado para o sistema de gerenciamento de memória. Um invasor pode quebrar a integridade do fluxo de controle se a memória de leitura apenas se tornar gravável. A selagem de memória pode ser aplicada automaticamente pelo carregador de tempo de execução para selar as páginas .text e .rodata, além de selar dados críticos de segurança em tempo de execução.
A chamada de sistema mseal() é projetada para ser usada por bibliotecas como a GNU C Library "glibc" ao carregar executáveis ELF. Navegadores como o Google Chrome também podem usar o mseal() para proteger estruturas de dados sensíveis à segurança. Há várias outras aplicações que podem se beneficiar dessa nova funcionalidade.
A mseal() foi apresentada originalmente em outubro do ano passado e passou por diversas revisões. Linus Torvalds, inicialmente, teve algumas reservas quanto à mseal(), mas todas as questões foram resolvidas, resultando na integração do código ao upstream.
A chamada de sistema mseal() aterrissou recentemente no Git do Kernel Linux 6.10. Esta é mais uma adição significativa para o Kernel Linux 6.10, com a janela de fusão se encerrando no domingo com a v6.10-rc1.
A chegada do mseal() marca um avanço importante na segurança do kernel Linux, oferecendo uma camada adicional de proteção contra os ataques de corrupção de memória.
Até a próxima !!
Nenhum comentário:
Postar um comentário