Lançamento do módulo LKRG 0.9.0 para proteção contra exploração de vulnerabilidades no núcleo do Linux

O projeto Openwall publicou a versão 0.9.0 do módulo do núcleo LKRG (Linux Kernel Runtime Guard), destinado a detectar e bloquear ataques e violações da integridade das estruturas do núcleo. Por exemplo, o módulo pode proteger contra modificações não autorizadas em um núcleo em funcionamento e tentativas de alterar as permissões de processos de usuário (definição de uso de exploits). O módulo é adequado tanto para a proteção contra exploits de vulnerabilidades já conhecidas do núcleo Linux (por exemplo, em situações em que é problemático atualizar o núcleo no sistema), quanto para a resistência a exploits de vulnerabilidades ainda desconhecidas. O código do projeto é distribuído sob a licença GPLv2.

Entre as mudanças na nova versão:

  • Compatibilidade garantida com núcleos Linux de 5.8 a 5.12, bem como com núcleos estáveis 5.4.87 e superiores (incluindo inovações de núcleos 5.8 e superiores) e com núcleos das versões RHEL até 8.4, mantendo suporte a todas as versões anteriores de núcleos, como os núcleos de RHEL 7;
  • Adicionada a possibilidade de compilar o LKRG não apenas como um módulo externo, mas também como parte da árvore do núcleo Linux, incluindo sua inclusão na imagem do núcleo;
  • Suporte adicionado para muitas configurações adicionais do núcleo e do sistema;
  • Vários erros e falhas significativas no LKRG foram corrigidos;
  • A implementação de alguns componentes do LKRG foi significativamente simplificada;
  • Mudanças foram feitas para simplificar o suporte e a depuração futura do LKRG;
  • Para testar o LKRG, foi adicionada integração com out-of-tree e mkosi;
  • O repositório do projeto foi transferido do BitBucket para o GitHub e foi adicionada integração contínua usando GitHub Actions e mkosi, incluindo verificação de compilação e upload do LKRG para núcleos de versões do Ubuntu, bem como nas compilações diárias mais recentes de kernels mainline fornecidas pelo projeto Ubuntu.

Nesta versão do LKRG, a contribuição direta (através de pull requests no GitHub) foi feita por vários desenvolvedores que não haviam participado do projeto anteriormente. Em particular, Boris Lukashev adicionou a possibilidade de compilar como parte da árvore do núcleo Linux, e Vitaly Chikunov da ALT Linux realizou a integração com mkosi e GitHub Actions.

Em geral, apesar das adições significativas, o número de linhas de código do LKRG diminuiu ligeiramente pela segunda vez consecutiva (anteriormente, também houve uma redução entre as versões 0.8 e 0.8.1).

Atualmente, o pacote com LKRG no Arch Linux já foi atualizado para a versão 0.9.0, e uma série de outros pacotes estão utilizando versões git recentes do LKRG e provavelmente também serão atualizados em breve para a versão 0.9.0 e além.

Além disso, vale ressaltar a recente publicação dos desenvolvedores do sistema operacional Aurora (modificação russa do Sailfish OS) sobre a possível melhoria do LKRG com a ajuda do ARM TrustZone.

Para mais informações sobre o LKRG, consulte o anúncio da versão 0.8 e a discussão realizada na época.

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