
Escrita · 10 mar 2018
Cibersegurança: 5 dicas fáceis para proteger o teu servidor contra hackers
Boas práticas de reforço da segurança de servidores para Windows e Linux
Esta semana um dos meus clientes foi vítima de um ataque informático e pediu-me ajuda de emergência para proteger a infraestrutura dos seus servidores. Era um servidor web com sites WordPress em Apache (com PHP/MySQL), incluindo algumas lojas online com dados de clientes. Este ataque podia ter sido facilmente evitado com as boas práticas seguintes. O //teu// servidor está seguro?

1) Instala menos software
A cibersegurança já é difícil que chegue, por isso facilita a tua vida ao instalar menos software. Menos programas, serviços e plugins significam menos coisas com que te preocupar. Na terminologia da cibersegurança, isto chama-se reduzir o vetor de ataque.
Reduz o teu vetor de ataque:
- começando com um sistema base mínimo: não comeces com um sistema operativo completo e inchado, começa com o mínimo possível e vai registando o que acrescentas
- instala só o que for mesmo indispensável: instala as ferramentas, os plugins, as extensões e os programas de que realmente - mesmo - precisas. Sê firme e determinado: menos é mais!
- verifica as dependências do que instalas: se instalares seja o que for, confirma as dependências; o software muitas vezes exige outro software (que não queres necessariamente)
2) Fecha todas as portas de rede e filtra as que não podes bloquear
As firewalls servem para filtrar o tráfego de rede e vêm de série na maioria dos sistemas operativos. Limita as aberturas que os hackers têm para o teu servidor.
A configuração da firewall deve:
- adotar uma política de bloqueio por defeito: a maioria dos sistemas operativos permite tudo por defeito. Inverte isto e bloqueia tudo, exceto o tráfego que esperas e de que precisas.
- verificar a entrada e a saída: filtra o tráfego de rede que entra e que sai. Assim fica muito mais difícil para os hackers entrarem (e saírem, no caso infeliz de um ataque bem-sucedido).
- filtrar as portas abertas: protege as portas de rede abertas filtrando o tráfego pela origem (endereço IP) e/ou pelo estado, e só permite tráfego vindo de onde esperas que venha.
3) Esconde toda a informação de versão
O software que o teu servidor executa tem versões, muitas vezes um número que indica a data exata em que foi compilado. Os hackers podem usar esta informação de versão para procurar problemas de segurança, vulnerabilidades e fraquezas conhecidos.
Deixa de ajudar os hackers e remove a informação de versão de:
- servidores web: Apache, NGINX, Microsoft Internet Information Services, etc. Verifica o teu servidor analisando os cabeçalhos HTTP.
- servidores de e-mail: Postfix, Exim, Dovecot, Sendmail, etc. Estes servidores comunicam muitas vezes a versão num “banner de boas-vindas”, mostrado logo após estabelecer a ligação por SMTP, IMAP ou POP3.
- linguagens web: PHP, .NET, Java, etc. Por vezes estas frameworks e linguagens de scripting acrescentam o seu próprio cabeçalho HTTP (“x-powered-by”) com a informação de versão.
- WordPress: plugins, temas, formulários, galerias, lojas online, etc. A informação de versão aparece muitas vezes no HTML gerado ou nos nomes de ficheiros de CSS, JavaScript e imagens.
- servidores de ficheiros: FTP, SFTP, WebDAV, etc. Estes servidores comunicam a informação de versão na saudação, mostrada logo ao ligar, muitas vezes antes da autenticação
- SSH: sabias que o OpenSSH comunica por defeito a informação da versão do sistema operativo?
4) Usa autenticação por certificado/chave em vez de palavras-passe
Se os inícios de sessão com palavra-passe forem permitidos, os hackers podem tentar aceder ao servidor repetidamente. Com a capacidade de cálculo moderna é fácil automatizar esta adivinhação, experimentando combinação atrás de combinação até acertar na palavra-passe (força bruta).
Protege a autenticação:
- usa autenticação por chave SSH: uma chave SSH é muito mais longa do que uma palavra-passe normal e contém caracteres diferentes das letras e dos números legíveis comuns. Isto dá mais combinações possíveis, tornando exponencialmente mais difícil para os hackers encontrarem a chave certa.
- limita a taxa de autenticação: torna artificialmente mais lenta a verificação da palavra-passe / chave, reduzindo a velocidade da adivinhação automática
- bloqueia a adivinhação automática: exclui os endereços IP que falharam o início de sessão.
5) Verifica e atualiza com regularidade
Hoje em dia a maioria dos ataques é automatizada, os bots andam constantemente a analisar todos os servidores e sites à procura de oportunidades de exploração. A questão não é SE te vão encontrar, mas QUANDO.
Cuida do teu servidor:
- consultando os registos: os problemas potenciais tornam-se muitas vezes visíveis antes de acontecer algo realmente grave. Verifica nos registos do servidor se há erros e anomalias; muitas vezes são sinais precoces de problemas.
- procurando atualizações: quer pelo próprio software do servidor, quer no site do fabricante / do software.
- atualizando com regularidade: não esperes até ser tarde demais, instala as atualizações o mais depressa possível (mas depois de as testares!)

Conclusão
Se puseres estas medidas em prática, podes melhorar muito a cibersegurança do teu servidor. Proteger o servidor significa mais segurança para o teu negócio, para a tua organização e para os dados dos teus clientes.
Nenhum consultor de segurança (com juízo) te vai oferecer garantias: com recursos e determinação suficientes, os ataques serão sempre possíveis. Prepara-te: faz cópias de segurança e cifra os teus dados.
Espero que estas dicas te ajudem. Se precisares de mais ajuda, podes encontrar aqui os meus contactos ou conhecer os meus serviços de cibersegurança.