Atualmente, os únicos scanners rootkit que conheço precisam estar instalados na máquina antes do rootkit, para que possam comparar alterações de arquivos, etc. (por exemplo: chkrootkit
e rkhunter
), mas o que realmente preciso fazer é poder digitalizar minha máquina e outras máquinas de um LiveUSB porque se o rootkit for bom o suficiente, ele também assumirá os programas de detecção de rootkit.
Existe um scanner rootkit baseado em assinatura para Ubuntu / Linux que eu poderia instalar em um LiveUSB e usar para verificar com segurança máquinas que eu conecto sem que ele tenha que monitorar o comportamento ou comparar arquivos de datas anteriores?
rkhunter
provavelmente não fará muito bem. De fato, se um rootkit estiver instalado, eu esperariarkhunter
não fornecer mais resultados precisos, por isso é um pouco tolo que seja apenas uma ferramenta instalada na máquina real que seria comprometida.Respostas:
AIDE ( A dvanced eu ntruder D etection E nvionment) é uma substituição para
tripwire
mencionado em outra resposta aqui. Da wikipedia :Funcionalidade
O AIDE tira um "instantâneo" do estado do sistema, hashes de registro, tempos de modificação e outros dados referentes aos arquivos definidos pelo administrador. Esse "instantâneo" é usado para criar um banco de dados que é salvo e pode ser armazenado em um dispositivo externo por segurança.
Quando o administrador deseja executar um teste de integridade, o administrador coloca o banco de dados criado anteriormente em um local acessível e ordena ao AIDE para comparar o banco de dados com o status real do sistema. Caso tenha ocorrido uma alteração no computador entre a criação da captura instantânea e o teste, o AIDE detectará e reportará ao administrador. Como alternativa, o AIDE pode ser configurado para executar em um agendamento e relatar alterações diariamente usando tecnologias de agendamento como cron, que é o comportamento padrão do pacote Debian AIDE. 2
Isso é útil principalmente para fins de segurança, uma vez que qualquer alteração maliciosa que poderia ter ocorrido dentro do sistema seria relatada pelo AIDE.
Desde que o artigo da Wikipedia foi escrito, o atual mantenedor Richard van den Berg (2003-2010) foi substituído por um novo mantenedor Hannes von Haugwitz de 2010 até o presente.
A página inicial do AIDE indica que o Debian é suportado, o que significa que o aplicativo pode ser instalado no ubuntu com o predicável:
Quanto à portabilidade e ao pen drive USB, a página inicial diz:
Isso significa para mim que você pode ter o banco de dados de assinaturas no seu pen drive junto com o aplicativo no armazenamento persistente USB ao vivo. Não tenho certeza se o AIDE atende às suas necessidades, mas como é um substituto para o
tripwire
seu favorito atual, ele precisa ser analisado.fonte
cron
na maioria das instalações. Eu poderia me considerar não apenas para proteção de rootkit, mas também para proteger de minha própria programação ruim: p Pode ser educativo ver o que muda depois de umapt get install
também.Lembra-me do tripwire, que cria somas de verificação criptográficas dos arquivos que você especificar. Instale uma cópia do sistema que você está verificando da fonte válida (DVD, por exemplo), instale as mesmas atualizações do sistema de destino), faça com que o tripwire crie o arquivo de soma de verificação. Copie o arquivo de soma de verificação do tripwire para o sistema de destino, faça com que o arquivo de soma de verificação do tripwire compare com os arquivos do sistema de destino.
Os arquivos de configuração / atualizações fora de sincronia / atualizações / instalações / configurações específicas do sistema serão, obviamente, sinalizados / marcados como alterados.
Atualização 2018-05-06:
Devo acrescentar também que o sistema de destino deve ser verificado offline. Se o destino foi comprometido, o hardware, o firmware de inicialização, o kernel, os drivers do kernel, as bibliotecas do sistema e os binários já podem ter sido comprometidos e interferem ou retornam falsos positivos. Mesmo a execução de uma rede no sistema de destino pode não ser segura, pois o sistema de destino (comprometido) processaria os pacotes de rede, sistema de arquivos, dispositivo de bloco etc. localmente.
O menor cenário comparável que vem à mente são os cartões inteligentes (EMV usado em cartões de crédito, PIV usado pelo governo federal etc.). Desconsiderando as interfaces sem fio e todas as proteções hw / elétrica / rf, a interface de contato é essencialmente uma porta serial, três fios ou dois fios. A API é padronizada e com caixa branca, para que todos concordem que é impermeável. Eles protegeram os dados em trânsito, na memória de tempo de execução, em repouso na memória flash?
Mas a implementação é de código fechado. Um backdoor pode existir no hardware para copiar todo o tempo de execução e a memória flash. Outros podem manipular os dados em trânsito entre o hardware e as memórias internas, o Smart Card OS ou a E / S do / para o cartão. Mesmo que os compiladores hw / fw / sw / sejam de código aberto, você teria que auditar tudo a cada passo e ainda assim perder algo que você / todos os outros não pensaram. A paranóia pode enviar você para uma sala de borracha branca.
Desculpe por fugir em uma tangente de paranóia. Sério, leve as unidades de destino para testar. Você só precisa se preocupar com a unidade de destino hw / fw então. Melhor ainda, basta retirar os pratos HDD / chips flash SSD para testar (supondo que seu sistema de teste seja dourado). ;)
fonte