Como consultar logs de auditoria usando a ferramenta 'ausearch' no CentOS/RHEL
Em nosso último artigo, explicamos como auditar o sistema RHEL ou CentOS usando o utilitário auditd. O sistema de auditoria (auditd) é um sistema de registro abrangente e não usa syslog para esse fim. Ele também vem com um conjunto de ferramentas para gerenciar o sistema de auditoria do kernel, bem como pesquisar e produzir relatórios a partir de informações nos arquivos de log.
Neste tutorial, explicaremos como usar a ferramenta ausearch para recuperar dados de arquivos de log auditd em distribuições Linux baseadas em RHEL e CentOS.
Leia também: 4 boas ferramentas de gerenciamento e monitoramento de log de código aberto para Linux
Como mencionamos anteriormente, o sistema de auditoria possui um daemon de auditoria user-space (auditd) que reúne informações relacionadas à segurança com base em regras pré-configuradas, do kernel e gera entradas em um arquivo de log.
O que é ausearch?
ausearch é uma ferramenta simples de linha de comando usada para pesquisar os arquivos de log do daemon de auditoria com base em eventos e diferentes critérios de pesquisa, como identificador de evento, identificador de chave, arquitetura de CPU, nome de comando, nome de host, nome de grupo ou ID de grupo , syscall, mensagens e muito mais. Ele também aceita dados brutos do stdin.
Por padrão, ausearch consulta o arquivo /var/log/audit/audit.log, que você pode visualizar como qualquer outro arquivo de texto.
cat /var/log/audit/audit.log
OR
cat /var/log/audit/audit.log | less
Na captura de tela acima, você pode ver muitos dados do arquivo de log, dificultando a obtenção de informações específicas de interesse.
Portanto você precisa do ausearch, que permite a busca de informações de uma forma mais poderosa e eficiente usando a seguinte sintaxe.
ausearch [options]
Verifique os logs do processo em execução no arquivo de log Auditd
O sinalizador -p
é usado para passar um ID de processo.
ausearch -p 2317
Verifique tentativas de login com falha no arquivo de log Auditd
Aqui, você precisa usar a opção -m
para identificar mensagens específicas e -sv
para definir o valor de sucesso.
ausearch -m USER_LOGIN -sv no
Encontre a atividade do usuário no arquivo de log Auditd
O -ua é usado para passar um nome de usuário.
ausearch -ua tecmint
OR
ausearch -ua tecmint -i # enable interpreting of numeric entities into text.
Para consultar ações executadas por um determinado usuário em um determinado período de tempo, use -ts
para data/hora de início e -te
para especificar data/hora de término como segue ( observe que você pode usar palavras como agora, recente, hoje, ontem, esta semana, semana atrás, este mês, este ano, bem como ponto de verificação em vez de formatos de hora real).
ausearch -ua tecmint -ts yesterday -te now -i
Mais exemplos de busca de ações de um determinado usuário no sistema.
ausearch -ua 1000 -ts this-week -i
ausearch -ua tecmint -m USER_LOGIN -sv no -i
Encontre modificações em contas de usuário, grupos e funções em registros de auditoria
Se você deseja revisar todas as alterações do sistema relacionadas a contas de usuários, grupos e funções; especifique vários tipos de mensagens separadas por vírgula como no comando abaixo (cuide da lista separada por vírgula, não deixe espaço entre uma vírgula e o próximo item):
ausearch -m ADD_USER,DEL_USER,USER_CHAUTHTOK,ADD_GROUP,DEL_GROUP,CHGRP_ID,ROLE_ASSIGN,ROLE_REMOVE -i
Pesquisar arquivo de log de auditoria usando valor-chave
Considere a regra de auditoria abaixo, que registrará qualquer tentativa de acessar ou modificar o banco de dados de contas de usuário /etc/passwd.
auditctl -w /etc/passwd -p rwa -k passwd_changes
Agora tente abrir o arquivo acima para edição e fechá-lo da seguinte maneira.
vi /etc/passwd
Só porque você sabe que uma entrada de log foi registrada sobre isso, você possivelmente visualizaria as últimas partes do arquivo de log com o comando tail da seguinte forma:
tail /var/log/audit/audit.log
E se vários outros eventos foram registrados recentemente, encontrar as informações específicas seria muito difícil, mas usando ausearch, você pode passar o sinalizador -k
com o valor-chave que você especificou na regra de auditoria para visualizar todas as mensagens de log relativas a eventos relacionados ao acesso ou modificação do arquivo /etc/passwd.
Isso também exibirá as alterações de configuração feitas, definindo as regras de auditoria.
ausearch -k passwd_changes | less
Para obter mais informações e opções de uso, leia a página de manual do ausearch:
man ausearch
Para saber mais sobre auditoria de sistema Linux e gerenciamento de logs, leia estes artigos relacionados a seguir.
- Petiti – Uma ferramenta de análise de log de código aberto para SysAdmins Linux
- Monitore os logs do servidor em tempo real com a ferramenta “Log.io” no RHEL/CentOS 7/6
- Como configurar e gerenciar a rotação de log usando Logrotate no Linux
- lnav – Observe e analise logs do Apache em um terminal Linux
Neste tutorial, descrevemos como usar ausearch para recuperar dados de um arquivo de log auditd no RHEL e CentOS. Se você tiver alguma dúvida ou opinião para compartilhar, use a seção de comentários para entrar em contato conosco.
Em nosso próximo artigo, explicaremos como criar relatórios a partir de arquivos de log de auditoria usando aureport no RHEL/CentOS/Fedora.