Segurança Linux Layer 8 – Usuário

Usuários Linux e administradores de sistema frequentemente não possuem um foco geral em alterações do SO, logs e rastreamento do que foi feito em uma invasão.

osi_8

Não tem como começar a falar sobre segurança a nível de “Layers” (camada OSI) sem entrar no assunto IDS, no caso a ferramenta mais conhecida: Snort.

http://www.fogonacaixadagua.com.br/2y7 [Configurando e instalando Snort, em inglês]

Nem sempre o Snort vê todos os possíveis exploits de segurança. Enquanto ele testa tráfego de pacotes em camadas superiores da OSI, ele não detectará Backdoors e rootkits. Também não detectará acesso shell ou SSH de usuários descontentes, usuários não autorizados nem outros administradores ou usuários comuns.

Keyloggers

A recomendação do CERT é que qualquer servidor suspeito seja refeito, mas geralmente os administratores não conseguem obter provas de tal fato.

http://www.cert.org/tech_tips/win-UNIX-system_compromise.html

Os keyloggers mais utilizados no Linux incluem:

a) nível do PAM

Enquanto modificações no PAM é um assunto muito abrangente e merece um tópico só sobre ele, vários keyloggers podem ser utilizados usando o PAM. O utilitário “rootsh” é uma solução  bastante interessante.

rootsh [http://freshmeat.net/projects/rootsh/]

Rootsh is a wrapper for shells that logs all echoed keystrokes and terminal output to a file and/or to syslog. Its main purpose is the auditing of users who need a shell with root privileges. They start rootsh through the sudo mechanism.

Quais os benefícios de se usar o rootsh ao invés de script(1)?

Porque script(1):

  • não envia entrada/saída para um servidor syslog
  • não pode ser usado como login shell
  • não detecta interferências no arquivo de log
  • não pode ser restrito a apenas alguns comandos

Permite que você habilite um logger a nível de sistema que mostrará tudo o que for digitado no terminal independente se o usuário use o comando `sudo` ou logue-se normalmente.

“rootsh” é extremamente útil, especialmente se você possui mais de um sysadmin ou usuário root  (a recomendação é que você sempre desabilite completamente o acesso do usuário root e utilizar o ‘sudo’)

Por padrão, o programa “rootsh” grava os logs em /var/log/rootsh (pode ser alterado durante a configuração). Claro que os logs podem ser editados, como qualquer arquivo log, ao menos que você utilize uma opção de logs centralizado com syslogd ou syslog-ng.

b) Keylogger a nível do kernel

Sebek is kernel module installed on high-interaction honeypots for the purpose of extensive data collection. It allows administrators to collect activities such as keystrokes on the system, even in encrypted environments. Designed primarily for Win32 and Linux systems.

https://projects.honeynet.org/sebek/

Sebek é um módulo para o kernel que tembém está disponível para Windows.

http://www.honeynet.org.pt/index.php/HoneyMole

c) Hardware keyloggers

Keylogger USBKeylogger PS2 Estes mascaram USB-to-PCI e são geralmente colocados juntos a KVMs.

http://www.keelog.com/download.html

Ficam entre o teclado e a interface onde o teclado está conectado, sendo praticamente impossível detectar via software. Armazenam os dados digitados pelo teclado que podem ser baixados outra hora para verificação.

Share this post

Join the conversation