O Maltrail é uma ferramenta de deteção de tráfego malicioso, baseado na arquitetura Tráfego-Sensor-Servidor-Cliente, que utiliza blacklists públicas contendo endereços web com malware e/ou suspeitos, juntamente com endereços estáticos compilados a partir de vários relatórios de antivírus, permitindo ainda ao utilizador criar uma lista personalizada com URL’s ou endereços IP.
Além disso, esta ferramenta possui mecanismos heurísticos avançados para ajudar na descoberta de ameaças desconhecidas. Vamos então conhecer melhor o Maltrail e o que é capaz de fazer para o proteger.
O Maltrail é um componente autónomo, executado num nó de monitorização ou máquina por onde o tráfego passa. Na eventualidade de o resultado ser positivo, os detalhes do evento são enviados para o servidor, armazenados num diretório de registo apropriado.
Caso o Sensor esteja a ser executado na mesma máquina que o Servidor, os ficheiros de registo são armazenados no diretório de log local, caso contrário, são enviados via mensagens UDP para o Servidor remoto.
Em relação ao Servidor, ele é responsável por armazenar os detalhes do(s) evento(s) e fornecer suporte de back-end para a aplicação Web onde serão visualizados todos os relatórios. Por definição, o Servidor e o Sensor são executados na mesma máquina.
Processo de instalação, configuração e teste do Sensor
Passo 1) No terminal, execute o comando:
git clone https://github.com/stamparm/maltrail.git
Aceda à diretoria do Maltrail e liste-a para confirmar se está tudo como pretendido.
cd maltrail/
ls-l
Passo 2) Execute o Sensor. Durante este processo, ele irá atualizar as respetivas listas.
./sensor.py
Passo 3) Numa nova janela de terminal, execute agora o Servidor.
./server.py
Passo 4) Através do browser, aceda ao endereço IP do Servidor, no porto 8338, e faça login.
- Username: admin
- Password: changeme!
Esta palavra passe deve ser, obviamente alterada logo que possível.
Passo 5) Abra uma terceira janela de terminal e faça um ping ao IP 136.161.101.53.
Abra o ficheiro de registos do Maltrail e veja o seu conteúdo.
cat /var/log/maltrail/$(date +”%y-%m-%d”).log
Passo 6) O evento foi registado e pode ser consultado.
Como deve ter reparado, o acesso ao Servidor é feito por HTTP, o que significa não ser uma ligação encriptada. Para tal ser possível, é necessário realizar algumas configurações.
Passo 7) Pare a execução do Servidor através das teclas CTRL+C. Na mesma janela de Terminal, e na diretoria do Maltrail, abra o ficheiro maltrail.conf com um editor de texto.
nano maltrail.conf
Na linha USE_SSL substitua FALSE por TRUE.
Passo 8) Inicie o Servidor. Não dará, isto porque para utilizar uma ligação HTTPS é necessário gerar um certificado e a respetiva chave privada. Crie-os através do seguinte comando:
openssl req -new -x509 -keyout server.pem -out server.pem -days 365 -nodes -subj '/0=Maltrail CA/C=EU'
Passo 9) Aceda ao ficheiro maltrail.conf como fez no passo 7 e retire o comentário (#) das linhas identificadas.
Passo 10) Por fim, inicie o Servidor. Verá que agora o acesso por HTTPS já é possível.
A partir de agora, todo o tráfego malicioso ou suspeito ficará registado e poderá ser acedido através do browser, cuja interface permite filtrar os eventos além de os classificar por nível de gravidade, mostrar o endereço de origem e destino, protocolo, etc.