O Suricata dentro varios vetores de deteccao, possui uma funcao bem interessante, onde ele calcula o md5 de arquivos sendo enviados/recebidos e o compara com uma lista de md5 maliciosas. Aqui demonstrarei como utilizar a lista do Projeto Malware Patrol.O Projeto Malware Patrol, apesar do nome em ingles foi criado e e desenvolvido na sua maioria pelo brasileiro Andre Correa. O projeto possui uma versao gratuita e uma versao paga, que e um investimento bem pequeno e necessario para ter acesso a lista MD5. Para saber mais sobre o projeto acesse http://malwarepatrol.net .No site do Suricata, na parte de documentacao, temos uma boa parte falando sobre deteccao de arquivos on the fly, mas no nosso caso usaremos a parte MD5Retirado do site https://redmine.openinfosecfoundation.org/projects/suricata/wiki/File-keywords filemd5 Match file MD5 against list of MD5 checksums. Syntax:filemd5:[!]filename;The filename is expanded to include the rule dir. In the default case it will become /etc/suricata/rules/filename. Use the exclamation mark to get a negated match. This allows for white listing. Examples:filemd5:md5-blacklist;filemd5:!md5-whitelist;File format The file format is simple. It's a text file with a single md5 per line, at the start of the line, in hex notation. If there is extra info on the line it is ignored. Output from md5sum is fine:2f8d0355f0032c3e6311c6408d7c2dc2 util-path.cb9cf5cf347a70e02fde975fc4e117760 util-pidfile.c02aaa6c3f4dbae65f5889eeb8f2bbb8d util-pool.cdd5fc1ee7f2f96b5f12d1a854007a818 util-print.cJust MD5's are good as well:2f8d0355f0032c3e6311c6408d7c2dc2b9cf5cf347a70e02fde975fc4e11776002aaa6c3f4dbae65f5889eeb8f2bbb8ddd5fc1ee7f2f96b5f12d1a854007a818Entendido o funcionamento, precisara ter sua conta no Malware Patrol para baixar a lista de MD5 (hoje por volta de 70 mil hashes)Basicamente, tera vinculado com sua conta, uma URL para "Suricata IDS / IPS - malicious MD5s"#Diretorio das regras[root@centos-7-x64 ~]# cd /opt/suricata/etc/suricata/rules/# Baixando arquivo de md5[root@centos-7-x64 rules]# wget "https://lists.malwarepatrol.net/cgi/getfile?receipt=" -O suricatamd5.txt--2016-03-07 12:52:22-- https://lists.malwarepatrol.net/cgi/getfile?Resolving lists.malwarepatrol.net (lists.malwarepatrol.net)... 104.20.78.76, 104.20.77.76, 2400:cb00:2048:1::6814:4e4c, ...Connecting to lists.malwarepatrol.net (lists.malwarepatrol.net)|104.20.78.76|:443... connected.HTTP request sent, awaiting response... 200 OKLength: unspecified [text/plain]Saving to: suricatamd5.txtHeader md5 downloaded## Malware Patrol - Block List - https://www.malwarepatrol.net# List for Suricata IDS / IPS# Generated at: 20160308105602 UTC## Please do not update this list more often than every hour.## Copyright (c) 2016 - Andre Correa - Malware Patrol - Malware Block List# This information is provided as-is and under the Terms and Conditions# available in the following address:## https://www.malwarepatrol.net/terms.shtml## Using this information indicates your agreement to be bound by these# terms. If you do not accept them, please delete this file immediately.## You can report false positives or broken rules/signatures to:# fp (a t) malwarepatrol.netCom isso, precisamos criar uma regra e apontar para esse arquivo.Criei um arquivo especifico para ele, mas voce pode adicionar no local.rules tambem.# cat malwarepatrol.rulesalert http any any -> any any (msg:"FILE MD5 Check against Malware Patrol blacklist"; filemd5: suricatamd5.txt; sid:10203040; rev:1;)Apos essa regra, precisaremos finalizar a configuracao do arquivo config# vim /opt/suricata/etc/suricata/suricata.yamlAdicionaremos na parte de rules-files a entrada com o nome da nossa regra.# Set the default rule path here to search for the files.# if not set, it will look at the current working dirdefault-rule-path: /opt/suricata/etc/suricata/rulesrule-files: - malwarepatrol.rules - botcc.rules - ciarmy.rulesFeito isso, basta reiniciar o processo e fazer download de algum arquivo malicioso listado la.Quando iniciando o processo tera nos logs:7/3/2016 -- 06:50:10 - - Loading rule file: /opt/suricata/etc/suricata/rules/malwarepatrol.rules7/3/2016 -- 06:50:10 - - MD5 hash size 3198000