Existem duas estratégias para defender seu sistema de rootkits LKM, a defesa pró-ativa e a reativa. O trabalho de detecção pode ser simples e fácil, ou difícil e cansativo, dependendo da estratégia escolhida.
10.4.2.1. Defesa pró-ativa
A vantagem para este tipo defesa é que ela previne qualquer dano ao sistema logo de início. Uma estratégia para esse tipo de defesa é conhecida como pegar eles primeiro, que é carregar na memória um módulo LKM designado para proteger o sistema de outros LKMs maliciosos. A segunda estratégia é remover algumas funcionalidades do próprio kernel. Por exemplo, você pode desabilitar a opção de carrergar módulos no kernel. Entretanto, note que existem rootkits que podem funcionar até mesmo neste caso. Alguns deles podem mexer com o /dev/kmem
(memória do kernel) diretamente para torná-los indetectáveis.
O Debian GNU/Linux tem poucos pacotes que podem ser usados para montar uma defesa pró-ativa:
lcap - A user friendly interface to remove
capabilities (kernel-based access control) in the kernel, making the system more secure. For example, executing
lcap CAP_SYS_MODULE
will remove module loading capabilities (even for the root user).
There is some (old) information on capabilities at Jon Corbet's
http://lwn.net/1999/1202/kernel.php3 section on LWN (dated December 1999).
Se você realmente não precisa de muitos recursos do kernel no seu sistema GNU/Linux, você pode desabilitar o suporte aos módulos carregáveis durante a configuração do kernel. Para desabilitar este suporte, somente altere o CONFIG_MODULES=n durante o estágio de configuração da construção do seu kernel, ou no arquivo .config
. Isto irá prevenir os rootkits LKM, mas você irá perder esta funcionalidade poderosa no kernel do Linux. Desabilitar a opção para carregar módulos no kernel pode muitas vezes sobrecarregar o kernel. Neste caso, é melhor deixar o kernel com o suporte.
A vantagem da defesa reativa é que ela não consome os recursos do sistema. Ela trabalha comparando a tabela de chamadas ao sistema com uma cópia autêntica conhecida, o arquivo em disco System.map
. Claro que a defesa reativa somente notificará ao administrador do sistema depois que o sistema já estiver sido comprometido.
Detection of some root-kits in Debian can be accomplished with the
chkrootkit package. The
http://www.chkrootkit.org program checks for signs of several known root-kits on the target system, but is not a definitive test.