Muitos rootkits no nível do kernel podem ser efetivamente eliminados no momento do ataque, ativando a linha de comando do kernel module.sig_enforce
.
link
module.sig_enforce
[KNL] When CONFIG_MODULE_SIG is set, this means that
modules without (valid) signatures will fail to load.
Note that if CONFIG_MODULE_SIG_FORCE is set, that
is always true, so this option does nothing.
Para aproveitar isso corretamente, você deseja idealmente um kernel 'vanilla' que use apenas módulos que vêm do repositório principal do sistema. O resultado disso é que você só permite carregar módulos do kernel que são assinados pelo seu repositório confiável do qual você originalmente obteve seu kernel.
No que diz respeito à detecção e / ou prevenção de rootkits userspace - rpm -V
pode ajudar a fornecer algumas anomalias fora da caixa, mas se as bibliotecas ssl
foram adulteradas isso ainda é possível superar.
Em última análise, esses tipos de verificações de segurança são infrutíferas. Se você estiver interessado em manter algum grau de resistência à adulteração para seus sistemas, precisará alterar sua mentalidade de como a segurança funciona.
Você precisa definir o que o sistema deve fazer e não o que o sistema não deve fazer.
Muitas vezes, isso é difícil de enumerar em termos de tempo ou desconhecido para o administrador do sistema, que é o ponto crucial do problema.
No entanto, uma vez que você sabe o que o sistema deve você pode definir políticas de segurança em coisas como o SELinux (um assunto enorme por si só, mas ligá-lo é um ótimo começo). O SELinux hoje em dia tem políticas muito boas que foram longe para tentar definir o que um Linux típico deveria fazer .
Um passo futuro (se você realmente está seriamente paranóico) é comprar hardware que contenha chips TPM e servidores de configuração para ser totalmente inviolável por meio das instalações do IMA que estão sendo mescladas no kernel.
Isso se baseia em um chip fisicamente inviolável que fornece serviços de criptografia ao kernel, por meio do qual você pode assinar criptograficamente arquivos e binários específicos para torná-lo verdadeiramente inviolável (o kernel pode se recusar a executar códigos que não sejam t assinado desta forma).
A maior parte disto é tão nova e fresca que não está realmente pronta para a distribuição, mas é bom saber da sua existência para quando ela estiver pronta.
link