domingo, 10 de fevereiro de 2013

Algumas Dicas de Hardening


Galera hoje iremos abordar algumas dicas de Hardening, Hardening é um processo de mapeamento das ameaças, mitigação dos riscos e execução das atividades corretivas, com foco na infraestrutura e objetivo principal de torná-la preparada para enfrentar tentativas de ataque. O Linux sem sobra de duvidas é um dos sistemas mais seguros que existem, mas não adianta nada se ele não for bem configurado, muitos administradores simplesmente instalam o sistema, colocam alguns serviços pra funcionar e pronto, acham que ele é impenetrável, na verdade sabemos que não é bem assim, em qualquer casso não existe sistema 100% seguro, isso é fato, mas o que podemos fazer é aumentar o nível da segurança em nossos servidores para que ele possa suportar os “vagabundos das noites”.

Aqui mesmo no blog já disponibilizamos vários tutoriais que podem ser seguidos para aumentar a proteção em nossos servidores, neste artigo o iremos fazer é unificar essas dicas já disponibilizadas e mostrar mais algumas.

Bem primeiramente podemos começar com a remoção das permissões Suid Bit do sistema, veja como fazer no link abaixo:


Outra dica também é remover alguns serviços desnecessários como, nfs, portmap, cups, entre outros, esse são alguns serviços que geralmente não são usados.

Execute os comandos abaixo para remover os serviços.

# aptitude remove nfs-common
# aptitude remove portmap
# aptitude remove exim4 exim4-base exim4-config exim4-daemon-light mailx mutt
# aptitude remove cups

OBS: Lembrando que isso é uma dica genérica, lógico que isso não se aplica a todos os tipos de servidores, se você usa um servidor de impressão por exemplo jamais vai remover o cups.

Outros pacote que não devemos manter no sistema são o gcc e o make por exemplo, caso o atacante consiga acesso ao servidor ele não vai ter como compilar algum malware, ele terá que ter acesso root para instalar um compilador.

# aptitude remove gcc
# aptitude remove make
# aptitude remove build-essential

Mais uma dica é remover a opção de reinicializar a máquina com o CTRL+ALT+DEL, para isso entre no arquivo inittab e mude a opção como é mostrado abaixo.

# pico /etc/inittab

De:
ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now

Para:
ca:12345:ctrlaltdel:/bin/echo “Esta Opção Foi Removida”

Depois execute o comando abaixo para ativar a mudança.

# init q

Agora precisamos habilitar uma opção chamada TMOUT, ela limita o tempo que um usuário pode ficar ocioso no sistema, a mudança mostrada limita um tempo de 10 minutos, se o usuário ficar mais de 10 minutos ocioso sua sessão será encerrada.

Entre no arquivo profile e insira as opções abaixo no final do arquivo.

# pico /etc/profile

TMOUT=600
export PATH TMOUT

Depois ative a configuração com o comando.

# source /etc/profile

Nessa parte iremos desabilitar o login como root, para isso entre no arquivo securetty e comente as linhas como é mostrado abaixo.

# pico /etc/securetty

# Standard consoles
#tty1
#tty2
#tty3
#tty4
#tty5
#tty6

Outra opção muito importante é remover as shells dos usuários que não terão acesso ao servidor, para isso crie um script com o conteúdo abaixo para remover as shells, observe que o script ira remover a sheel de todos os usuários exceto dos descritos no script, são eles, root, guiadoti e João, edite de acordo com seu cenário.

# pico shell_invalida.sh


#!/bin/bash
for USER in $(cat /etc/passwd | cut -f 1 -d ":" | grep -v root | grep -v guiadoti | grep -v joao)

do

usermod -s /bin/false $USER

done

De permissão de execução ao script.

# chmod +x shell_invalida.sh

Agora execute o script.

# ./shell_invalida.sh

Depois confira o arquivo /etc/passwd

Uma coisa bem importante a fazer é ter o portnocking no servidor, para saber como instalar e configurar confira no link abaixo:


Mais outra dica é ter o Fail2Ban instalado e configurado no sistema, para mais informações acesse:


Outra dica é determinar quem pode usar o comando su, entre no arquivo su.

# pico /etc/pam.d/su

Descomente a linha
auth      required              pam_wheel.so

 E edite para deixar do seguinte modo.
auth      required              pam_wheel.so group=admins

Assim só usuários que estejam no admins vão poder usar o su, mas agora precisamos criar o grupo admins e adicionar os usuários nele.

# groupadd admins
# adduser root admins
# adduser user admins

Mais um detalhe é ativar o log do su, para isso entre no arquivo login.defs.

# pico /etc/login.defs

Descomente a linha
SULOG_FILE      /var/log/sulog

Outro detalhe extremamente importante, se não, o mais importante é fazer o hardening no SSH, para isso acesse o link abaixo:


Uma opção bem útil também é instalar pacotes que auxiliem na auditoria, para isso acesse os links abaixo:




Também é extremamente importante ter um HIDS no sistema e um dos melhores na minha opinião é o OSSEC, veja no link abaixo:


Com o tempo o nosso sistema vai ficando com um bocado de dependências e bibliotecas desnecessárias, também é importante remove-las, para isso existe uma ferramenta que nos auxilia nesse trabalho, veja no link:


Uma coisa bem importante dentro de uma rede é ter uma estrutura de logs, ela nos auxilia em acidentes de segurança quando um atacante invade um servidor e apaga os rastros, veja o link para mais informações.


E sempre bom ficar ligado nas conexões que estão em andamento, para isso rode o comando abaixo.

# netstat -tupan

Também é sempre bom ter as regras de iptables bem configuradas em todos os servidores, para saber um pouco mais sobre o iptables acesso o link:


Mais uma dica é ter uma proteção contra ataques de sniffing, o link abaixo mostra o passo-a-passo:


Ter um HIDS na rede também é um ponto crucial para a segurança, para saber mais acesso o link:



Pessoal alem de todas as dicas listadas acima é ter em mente usar uma política de senhas seguras e passar essa visão para os usuários também, pois como sempre, eles são o ponto mais vulnerável da rede, usar um numero mínimo de caracteres nas senhas, usar caracteres especiais, letras e números, assim aumentamos um pouco a segurança da senha.

Pessoal é isso ai, espero ter passado um pouco a visão de hardening pra vocês, seguir os passos aqui listados ira aumentar consideravelmente a segurança da rede, espero que tenham curtido, ate a próxima.

Nenhum comentário:

Postar um comentário