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.
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