Rootsh - Auditando/monitorando o root e demais usuários do GNU/Linux

Neste artigo, mostro como registrar tudo o que um usuário do GNU/Linux (inclusive o root) vê, digita e faz em seu terminal. Em outras palavras, quase uma funcionalidade de Keylogger, porém feito com o objetivo de ter uma auditoria, monitoramento e registro seguro do que cada usuário está realizando no terminal.

[ Hits: 15.081 ]

Por: Esli Silva em 16/07/2014 | Blog: https://esli.blog.br


Introdução



Olá, a todos. ;-)

Rootsh é um Shell (pseudo Shell) que registra tudo o que um usuário do GNU/Linux, inclusive o root, vê, digita e faz em seu terminal.

Em outras palavras, o Rootsh possui quase a funcionalidade de um Keylogger, porém, feito com o objetivo de ter uma auditoria, monitoramento e registro seguro do que cada usuário está realizando no terminal (pode-se configurar para todos os usuários, somente alguns ou somente o root).

Segundo o desenvolvedor:
"Isto é útil se você tiver mais de um administrador do sistema para um servidor e você quer um registro exato do que qualquer usuário faz."

Se você quer saber se o Rootsh "pega" o que digitaram e quer descobrir as senhas usadas, já pode parar por aqui. A resposta é NÃO.

O Rootsh não foi feito para o conceito real do que é um Keylogger (aquilo que pega as senhas dos Win-users). Novamente, seu propósito é ter uma auditoria, monitoramento e registro seguro do que estão fazendo ao logar como root (ou também, o que determinado usuário está fazendo, ou até mesmo todos).

E SIM, isto é permitido num ambiente de trabalho ou desenvolvimento, desde que cada integrante da equipe esteja ciente que está sendo monitorado e/ou conste na política de segurança (que deve estar acessível a todos). Não é só de logs de Squid, que se vive um monitoramento efetivo.

O ambiente ideal para o uso, é onde todos os que possuem acesso sabem de sua existência (do rootsh), e usam-no não só para auditoria/monitoramento, mas para uma ferramenta de log extremamente usual e também uma prevenção (ou modo para rastreio), caso seus servidores venham a ser atacados/invadidos.

O objetivo principal do Rootsh é permitir que você dê ao usuário o acesso ao root, mas mantendo o monitoramento e logs sobre suas ações. O usuário não terá a senha de root, usará o comando sudo, mas terá no final das contas, o terminal logado como root.

O Rootsh trabalha entre o usuário e o Shell (bash) real. Ele passa as informações de um lado para o outro e direciona isto também para um arquivo de log.

    Próxima página

Páginas do artigo
   1. Introdução
   2. Compilação / Configuração
   3. Logs / Otras opções / Fontes
Outros artigos deste autor

Certificados e OpenSSL - A Sopa de Letras

DHCP no GNU/Linux - Guia para ISC-DHCP Server

Guia SSD no Linux: tudo que você precisa saber e o que precisa esquecer!

Leitura recomendada

Implementação de WAF mod_security e integração com Graylog utilizando Filebeat e Logstash

Tor e Hidden Service Protocol - Explicando tecnicamente a "Deep Web"

Site seguro com Apache-SSL em 15 minutos

Integrando ModSecurity ao NGINX e Apache

Gerenciar e configurar inetd e serviços relacionados

  
Comentários
[1] Comentário enviado por lcavalheiro em 16/07/2014 - 12:43h

Interessantíssimo! Favoritado, chapa!

[2] Comentário enviado por Tacioandrade em 17/07/2014 - 20:29h

Engraçado que passei um bom tempo pesquisando uma solução para fazer exatamente isso a mais de 6 meses atrás, porem por correrias tive que parar e essa semana, na terça feira um colega me indicou um artigo sobre a ferramenta e apareceu essa sua postagem.

Estava vendo esse programa e é uma pena ele estar abandonado a tanto tempo e não possuir pacotes .deb e .rpm, pois instalar em 1 ou 2 computadores manualmente é simples, porem instalar em 50 ou mais já se torna uma tarefa complexa. =(

[3] Comentário enviado por eslih em 18/07/2014 - 12:29h


[2] Comentário enviado por Tacioandrade em 17/07/2014 - 20:29h:
...
Estava vendo esse programa e é uma pena ele estar abandonado a tanto tempo e não possuir pacotes .deb e .rpm, pois instalar em 1 ou 2 computadores manualmente é simples, porem instalar em 50 ou mais já se torna uma tarefa complexa. =(


Olá @Tacioandrade, estou com alguns projetos em andamento, mas ao finaliza-los vou desenvolver os pacotes .deb e rpm e posto novamente. Ou melhor até, além do pacote padrão .deb, coloco o caminho das pedras para você criar o seu próprio porém já deixando dentro do .deb as configurações para enviar ao seu syslog, já que mesmo criando um .deb para melhorar o tempo de instalação, de toda forma teria que personalizar as configurações para o seu servidor de logs centralizado (mais que algumas maquinas seria absurdo deixar os logs em cada uma delas)....

Obrigado a você e o @lcavalheiro pelos comentários e a todos que visitaram este artigo.

[4] Comentário enviado por Tacioandrade em 18/07/2014 - 16:38h


[3] Comentário enviado por eslih em 18/07/2014 - 12:29h:
Olá @Tacioandrade, estou com alguns projetos em andamento, mas ao finaliza-los vou desenvolver os pacotes .deb e rpm e posto novamente. Ou melhor até, além do pacote padrão .deb, coloco o caminho das pedras para você criar o seu próprio porém já deixando dentro do .deb as configurações para enviar ao seu syslog, já que mesmo criando um .deb para melhorar o tempo de instalação, de toda forma teria que personalizar as configurações para o seu servidor de logs centralizado (mais que algumas maquinas seria absurdo deixar os logs em cada uma delas)....

Obrigado a você e o @lcavalheiro pelos comentários e a todos que visitaram este artigo.


Realmente não tinha pensado nisso de criar meu próprio .deb já com as configurações do syslog, ótima ideia mesmo caro amigo, uma vez a muito tempo criei meu pacote .deb, porem foi para uma aplicação que não tinha nenhum requisito, só desempacotava no diretório correto porem acho que da para criar meu próprio .deb mesmo. =D

Sobre o Syslog, você utiliza em algum local? Se sim, qual o sistema que você usa (syslog-ng ou rsyslg) e qual interface de gerenciamento, pois testei o logalizer, porem achei muito fraca. =(

Um forte abraço.

[5] Comentário enviado por Eslih em 19/07/2014 - 13:07h


[4] Comentário enviado por Tacioandrade em 18/07/2014 - 16:38h:

Realmente não tinha pensado nisso de criar meu próprio .deb já com as configurações do syslog, ótima ideia mesmo caro amigo, uma vez a muito tempo criei meu pacote .deb, porem foi para uma aplicação que não tinha nenhum requisito, só desempacotava no diretório correto porem acho que da para criar meu próprio .deb mesmo. =D

Sobre o Syslog, você utiliza em algum local? Se sim, qual o sistema que você usa (syslog-ng ou rsyslg) e qual interface de gerenciamento, pois testei o logalizer, porem achei muito fraca. =(

Um forte abraço.


Olá novamente @tacioandrade ;-)
Se no seu caso o hardware e o sistema for padronizado, pode-se facilitar tudo com o checkinstall (que na hora da compilação vai gerar o .deb, mas se instalar em outra maquina pode ter problemas)...
Tenho mais facilidade/afinidade com o syslog-ng (não que seja melhor ou pior que o rsyslog)... Agora sobre interface para logs (falando não só do rootsh, mas de qualquer log centralizado), creio que uma das melhores combinações seja usar o Logstash + Kibana + Elasticsearch, hoje trabalho uma multinacional que é um AS (Sistema autonomo de internet) e cuja infra há centenas de servidores e clusters GNU/linux e pra complicar um pouco, diversos routers e um range /24 de IP's válidos... Um projeto que em breve será feito é este trio (Logstach+Kibana e ElasticSearch), não conhecia muito sobre, mas quando fui estudar a fundo o que pode ser feito com isto, realmente é impressionante.

[6] Comentário enviado por marlonpso em 05/08/2014 - 22:00h

Ola .. antes de mais nada ...parabens pelo artigo .. muito bom mesmo ...
e agora sobre o rootsh ele parece ser mto bom mesmo .. mais e o sudosh2 alguem ja viu ?? ele é mesmo o que veio para substituir esse rootsh ??

desde ja muito obrigado ! =D


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts