Que arquivos de log de auditoria são criados no linux para rastrear as atividades de um usuário?

7

Uma das máquinas em nossas redes estava consumindo uma grande quantidade de largura de banda da Internet. No entanto, nenhum usuário estava usando o sistema.

Quando me conectei ao servidor usando SSH e executei who , mostrei que um usuário fez login de um IP que eu não reconheci. Eu não criei este usuário no sistema. E em /etc/sudoers , o usuário tinha acesso root ilimitado:

test11   ALL = NOPASSWD: ALL

Eu terminei a sessão e mudei a senha do root. Eu também deletei o usuário.

Agora, provavelmente estou seguro, mas preciso analisar por que isso aconteceu e também quais atividades foram realizadas pelo usuário.

Como descubro mais informações sobre o que foi feito por esse usuário? Quais arquivos de log do sistema podem me ajudar a obter mais informações sobre IP, duração, comandos executados, sites acessados, etc?

Nota: esta é uma instalação padrão de um sistema CentOS 6. Eu não instalei nenhum software de segurança ou auditoria. Também não alterei nenhuma configuração do sistema. Eu preciso saber o que posso extrair de uma instalação padrão.

    
por Kshitiz Sharma 26.05.2014 / 08:12

1 resposta

19

Como seu sistema foi comprometido, nenhuma informação obtida desse sistema pode ser confiável. Somente logs que são enviados imediatamente para um sistema externo podem ser confiáveis (como syslog remoto em tempo real). Ou seja, se você tiver alguma rotação noturna de log para um compartilhamento NFS, não poderá confiar nela.

No entanto, é possível que o usuário não tenha se incomodado em cobrir suas faixas, e você pode ter as informações ainda disponíveis no sistema.

Infelizmente, em uma instalação padrão do Centos / RHEL, há um registro mínimo. Você está basicamente restrito a bisbilhotar em /var/log . Qual log você deve pesquisar depende de quais serviços estão sendo executados nessa caixa. No entanto, eu começaria com o log ssh. Depois disso, examine os logs de todos os serviços que são executados como root ou tenha sudo access.

Se você tiver sorte, esse usuário test11 poderá ter um diretório inicial, com um arquivo .bash_history contendo um histórico do que foi feito.

Além disso, como o sistema foi comprometido até o ponto em que um usuário desconhecido conseguiu obter acesso root, o sistema deve ser reconstruído a partir do zero. Você não pode reutilizar nada do sistema. Considere cada arquivo como comprometido. Eu também recomendaria contra o uso de backups, como você não sabe há quanto tempo o sistema foi comprometido.

Quando um usuário obtém acesso root, há um número ilimitado de backdoors que podem ser instalados. Se eu fosse o único que tinha obtido acesso ao seu sistema, simplesmente remover esse usuário test11 e alterar a senha root não me atrapalharia.

No futuro, há algumas coisas que você pode fazer.

Registro remoto

Como mencionado, somente o registro remoto em tempo real pode ser confiável para não ser adulterado. Certifique-se de ter isso.

Auditoria

Existem 2 utilitários que você deve instalar e usar para monitorar e auditar os componentes críticos do sistema. Estes são auditd e ossec .

Esses dois utilitários operam de maneira diferente, mas têm o mesmo objetivo de monitorar a atividade anormal.

Log de terminal

Existe outra ferramenta de auditoria chamada pam_tty_audit que funciona em conjunto com o utilitário auditd mencionado anteriormente . pam_tty_audit é um utilitário que você adiciona à sua pilha de pam que registra todas as entradas & saída através do TTY. Ou seja, se o usuário está acessando a caixa via ssh interativo, sua atividade seria registrada.
Note, no entanto, que é da maior importância que este registo seja protegido a todo o custo. Isto é principalmente por causa de senhas. Quando você digita sua senha em um prompt, mesmo que você não veja a senha sendo digitada, o módulo pam_tty_audit irá vê-la e registrá-la. Também é possível que você cat (ou visualize de outra forma) arquivos contendo informações confidenciais, que também serão registradas. Portanto, esse log deve ser enviado imediatamente do sistema local para que não possa ser obtido por intrusos ou deve ser criptografado (e a chave de descriptografia não deve estar no sistema local). De preferência, ambos devem ser realizados, enviados remotamente e criptografados.

    
por 26.05.2014 / 09:16