Como instalar e usar o AIDE (Ambiente Avançado de Detecção de Intrusões) no CentOS 8

Na véspera do início do curso Administrador Linux preparamos a tradução de um material interessante.

Como instalar e usar o AIDE (Ambiente Avançado de Detecção de Intrusões) no CentOS 8

AIDE significa "Advanced Intrusion Detection Environment" (Ambiente Avançado de Detecção de Intrusões) — é um dos sistemas mais populares para monitoramento de alterações em sistemas operacionais baseados em Linux. O AIDE é utilizado para proteção contra malware, vírus e para detectar ações não autorizadas. Para verificar a integridade dos arquivos e detectar intrusões, o AIDE cria um banco de dados com informações sobre os arquivos e compara o estado atual do sistema com este banco de dados. O AIDE ajuda a reduzir o tempo de investigação de incidentes, concentrando-se em arquivos que foram alterados.

Funcionalidades do AIDE:

  • Suporte a vários atributos de arquivos, incluindo: tipo de arquivo, inode, uid, gid, permissões, número de links, mtime, ctime e atime.
  • Suporte a compressão Gzip, SELinux, XAttrs, ACL Posix e atributos do sistema de arquivos.
  • Suporte a vários algoritmos, incluindo md5, sha1, sha256, sha512, rmd160, crc32, etc.
  • Envio de notificações por e-mail.

Neste artigo, veremos como instalar e usar o AIDE para detectar intrusões no CentOS 8.

Requisitos preliminares

  • Servidor rodando CentOS 8, com pelo menos 2 GB de RAM.
  • acesso root

Começar

Primeiro, é recomendável atualizar o sistema. Para isso, execute o seguinte comando.

dnf update -y

Após a atualização, reinicie o sistema para que as alterações entrem em vigor.

Instalação do AIDE

O AIDE está disponível no repositório padrão do CentOS 8. Você pode instalá-lo facilmente, executando o seguinte comando:

dnf install aide -y

Após a conclusão da instalação, você pode verificar a versão do AIDE usando o seguinte comando:

aide --version

Você deve ver o seguinte:

Aide 0.16

Compilado com as seguintes opções:

WITH_MMAP
WITH_PCRE
WITH_POSIX_ACL
WITH_SELINUX
WITH_XATTR
WITH_E2FSATTRS
WITH_LSTAT64
WITH_READDIR64
WITH_ZLIB
WITH_CURL
WITH_GCRYPT
WITH_AUDIT
CONFIG_FILE = "/etc/aide.conf"

Parâmetros disponíveis aide pode ser visualizado da seguinte forma:

aide --help

Como instalar e usar o AIDE (Ambiente Avançado de Detecção de Intrusões) no CentOS 8

Criação e inicialização do banco de dados

A primeira coisa que você precisa fazer após instalar o AIDE é inicializá-lo. A inicialização consiste na criação de um banco de dados (imagem) de todos os arquivos e diretórios do servidor.

Para inicializar o banco de dados, execute o seguinte comando:

aide --init

Você deve ver o seguinte:

Timestamp de início: 2020-01-16 03:03:19 -0500 (AIDE 0.16)
AIDE inicializou o banco de dados em /var/lib/aide/aide.db.new.gz

Número de entradas:	49472

---------------------------------------------------
Os atributos do(s) banco(s) de dados (descompactado):
---------------------------------------------------

/var/lib/aide/aide.db.new.gz
  MD5      : 4N79P7hPE2uxJJ1o7na9sA==
  SHA1     : Ic2XBj50MKiPd1UGrtcUk4LGs0M=
  RMD160   : rHMMy5WwHVb9TGUc+TBHFHsPCrk=
  TIGER    : vkb2bvB1r7DbT3n6d1qYVfDzrNCzTkI0
  SHA256   : tW3KmjcDef2gNXYqnOPT1l0gDFd0tBh9
             xWXT2iaEHgQ=
  SHA512   : VPMRQnz72+JRgNQhL16dxQC9c+GiYB8g
             uZp6uZNqTvTdxw+w/IYDSanTtt/fEkiI
             nDw6lgDNI/ls2esijukliQ==


Timestamp de fim: 2020-01-16 03:03:44 -0500 (tempo de execução: 0m 25s)

O comando acima criará um novo banco de dados aide.db.new.gz no diretório /var/lib/aide. Ele pode ser visualizado usando o seguinte comando:

ls -l /var/lib/aide

Resultado:

total 2800
-rw------- 1 root root 2863809 Jan 16 03:03 aide.db.new.gz

O AIDE não usará este novo arquivo de banco de dados até que ele seja renomeado para aide.db.gz. Isso pode ser feito da seguinte forma:

mv /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz

É recomendado atualizar periodicamente este banco de dados para garantir a monitorização necessária das mudanças.

Você pode alterar a localização do banco de dados modificando o parâmetro DBDIR no arquivo /etc/aide.conf.

Iniciar verificação

Agora o AIDE está pronto para usar o novo banco de dados. Execute a primeira verificação do AIDE sem fazer modificações:

aide --check

A execução deste comando levará algum tempo dependendo do tamanho do seu sistema de arquivos e da quantidade de memória RAM no seu servidor. Após a conclusão da verificação, você deve ver o seguinte:

Timestamp de início: 2020-01-16 03:05:07 -0500 (AIDE 0.16)
AIDE não encontrou diferenças entre o banco de dados e o sistema de arquivos. Parece tudo ok!!

A saída acima indica que todos os arquivos e diretórios correspondem ao banco de dados do AIDE.

Testando o AIDE

Por padrão, o AIDE não monitora o diretório raiz padrão do Apache /var/www/html. Vamos configurar o AIDE para monitorá-lo. Para isso, altere o arquivo /etc/aide.conf.

nano /etc/aide.conf

Adicione acima da linha "/root/CONTENT_EX" o seguinte:

/var/www/html/ CONTENT_EX

Em seguida, crie o arquivo aide.txt no diretório /var/www/html/, usando o seguinte comando:

echo "Test AIDE" > /var/www/html/aide.txt

Agora execute uma verificação do AIDE e certifique-se de que o arquivo criado será detectado.

aide --check

Você deve ver o seguinte:

Timestamp de início: 2020-01-16 03:09:40 -0500 (AIDE 0.16)
AIDE encontrou diferenças entre o banco de dados e o sistema de arquivos!!

Resumo:
  Número total de entradas:	49475
  Entradas adicionadas:		1
  Entradas removidas:		0
  Entradas alteradas:		0

---------------------------------------------------
Entradas adicionadas:
---------------------------------------------------

f++++++++++++++++: /var/www/html/aide.txt

Podemos ver que o arquivo criado foi detectado aide.txt.
Após analisar as mudanças detectadas, atualize o banco de dados do AIDE.

aide --update

Após a atualização, você verá o seguinte:

Hora de início: 2020-01-16 03:10:41 -0500 (AIDE 0.16)
AIDE encontrou diferenças entre o banco de dados e o sistema de arquivos!!
Novo banco de dados AIDE escrito em /var/lib/aide/aide.db.new.gz

Resumo:
  Número total de entradas:	49475
  Entradas adicionadas:		1
  Entradas removidas:		0
  Entradas alteradas:		0

---------------------------------------------------
Entradas adicionadas:
---------------------------------------------------

f++++++++++++++++: /var/www/html/aide.txt

O comando acima criará um novo banco de dados aide.db.new.gz no diretório

/var/lib/aide/

Você pode vê-la com o seguinte comando:

ls -l /var/lib/aide/

Resultado:

total 5600
-rw------- 1 root root 2864012 Jan 16 03:09 aide.db.gz
-rw------- 1 root root 2864100 Jan 16 03:11 aide.db.new.gz

Agora renomeie o novo banco de dados mais uma vez, para que AIDE utilize o novo banco para rastrear alterações futuras. Você pode renomear assim:

mv /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz

Execute a verificação novamente para ter certeza de que AIDE está usando o novo banco de dados:

aide --check

Você deve ver o seguinte:

Hora de início: 2020-01-16 03:12:29 -0500 (AIDE 0.16)
AIDE não encontrou NENHUMA diferença entre o banco de dados e o sistema de arquivos. Parece tudo certo!!

Automatizando a verificação

É uma boa ideia executar a verificação do AIDE todos os dias e enviar o relatório por e-mail. Esse processo pode ser automatizado com cron.

nano /etc/crontab

Para executar a verificação do AIDE todos os dias às 10:15, adicione a seguinte linha ao final do arquivo:

15 10 * * * root /usr/sbin/aide --check

Agora o AIDE irá notificá-lo por e-mail. Você pode verificar o e-mail com o seguinte comando:

tail -f /var/mail/root

O log do AIDE pode ser visualizado com o seguinte comando:

tail -f /var/log/aide/aide.log

Conclusão

Neste artigo, você aprendeu como usar o AIDE para detectar alterações em arquivos e identificar acesso não autorizado ao servidor. Para configurações adicionais, você pode modificar o arquivo de configuração /etc/aide.conf. Por questões de segurança, é recomendável armazenar o banco de dados e o arquivo de configuração em um dispositivo de somente leitura. Mais informações podem ser obtidas na documentação AIDE Doc.

Saiba mais sobre o curso.

Fonte: habr.com

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