Skip to main content

Buscando eventos e Criando Relatórios



Filtro de Buscas com ausearch​


O ausearch é uma ferramenta poderosa para pesquisar eventos específicos nos arquivos de log de auditoria, facilitando a análise de segurança e o rastreamento de atividades. Por padrão, o ausearch realiza buscas no arquivo /var/log/audit/audit.log, mas é possível especificar outro arquivo com a opção -if <nome_do_arquivo>.


Ao combinar diferentes opções em um único comando ausearch, ele aplica o operador AND entre tipos diferentes de campos e o operador OR entre múltiplas instâncias do mesmo campo, proporcionando maior flexibilidade na criação de filtros.



Exemplos de uso do ausearch para Consultas em Logs de Auditoria​


Para localizar tentativas de login que falharam:

$ ausearch --message USER_LOGIN --success no --interpret

Para buscar tentativas de login que deram certo:

$ ausearch --message USER_LOGIN --success yes --interpret
type=USER_LOGIN msg=audit(10/25/2024 00:29:58.896:121) : pid=836 uid=root auid=vagrant ses=2 subj=unconfined msg='op=login id=vagrant exe=/usr/sbin/sshd hostname=192.168.121.1 addr=192.168.121.1 terminal=/dev/pts/0 res=success'

Para listar eventos de criação, exclusão e modificação em contas de usuários e grupos:

$ ausearch -m ADD_USER -m DEL_USER -m ADD_GROUP -m USER_CHAUTHTOK -m DEL_GROUP -m CHGRP_ID -m ROLE_ASSIGN -m ROLE_REMOVE -i

Para localizar todas as ações realizadas por um usuário específico, utilizando seu ID de autenticação (AUID):

$ ausearch -ua 1000 -i

Para encontrar chamadas de sistema que falharam entre ontem e agora:

$ ausearch --start yesterday --end now -m SYSCALL -sv no -i


Explicação das Principais Opções​


Abaixo vejos algumas explicações dos parâmetros usamos nos exemplos acima.

  • --message ou -m: Filtra os eventos pelo tipo de mensagem (ex.: USER_LOGIN, ADD_USER).
  • --success ou -sv: Filtra eventos pelo sucesso (yes) ou falha (no) da operação.
  • --interpret ou -i: Exibe os dados em formato legível, substituindo IDs por nomes.
  • --start e --end: Especifica o intervalo de tempo da busca, como yesterday (ontem) e now (agora).
  • -ua: Filtra ações pelo ID de autenticação (auid) do usuário.

Esses comandos permitem consultas flexíveis e detalhadas nos logs de auditoria, sendo úteis para auditorias e investigações específicas.



Relatórios com aureport​


O aureport é uma ferramenta que gera relatórios estruturados dos eventos de auditoria. Por padrão, ele consulta todos os arquivos audit.log no diretório /var/log/audit/, mas você pode especificar um arquivo diferente com a opção -if <nome_do_arquivo>. O aureport é ideal para obter uma visão resumida e organizada dos eventos registrados, facilitando a análise e investigação.



Exemplos de Uso do aureport para Relatórios de Auditoria​


Para gerar um relatório dos eventos dos três dias anteriores (excluindo o dia atual):

$ aureport --start 04/08/2013 00:00:00 --end 04/11/2013 00:00:00

Para listar eventos relacionados a arquivos executáveis:

$ aureport -x

Para um resumo desses eventos:

$ aureport -x --summary
Executable Summary Report
=================================
total file
=================================
654 /usr/sbin/cron
638 /usr/lib/systemd/systemd

Para ver um resumo de eventos com falha para cada usuário:

$ aureport -u --failed --summary -i
Failed User Summary Report
===========================
total auid
===========================
1 vagrant

Para gerar um resumo de tentativas de login com falha agrupadas por usuário:

$ aureport --login --summary -i

Combinando ausearch e aureport, você pode listar os eventos de acesso a arquivos realizados por um usuário com UID 1000:

$ ausearch --start today --loginuid 1000 --raw | aureport -f --summary

Para listar todos os arquivos de auditoria e o intervalo de eventos contidos neles:

$ aureport -t


Explicação das Principais Opções​


Abaixo vejos algumas explicações dos parâmetros usamos nos exemplos acima.

  • --start e --end: Define o intervalo de tempo para consulta dos eventos.
  • -x: Foca em eventos que envolvem arquivos executáveis.
  • --summary: Gera um resumo dos eventos, listando apenas dados agregados.
  • --failed: Filtra para incluir somente os eventos de falha.
  • -u: Agrupa o relatório por usuário.
  • --login: Foca em eventos de login.
  • -i: Exibe os dados em um formato legível para humanos, substituindo IDs por nomes.

Essas opções tornam o aureport uma ferramenta flexível para gerar relatórios específicos e sumarizados, facilitando o monitoramento da segurança e conformidade do sistema.