O Anti-Spam esta funcionando?

Então você gastou horas instalando um sistema anti-spam da melhor qualidade. Muitas vezes mais de um, funcionando juntos com inteligência bayesiana, filtro de SPF, checagem a nível de envelope, com gateway exclusivo, checagem de conteúdo e claro, retenção e integrado ao protocolo IMAP para permitir uma gestão dinâmica diretamente pelos usuários, além de greylist e autowhite, mas a sensação é que o nada funciona.

Conheço bem a sensação e é desolador. Deveria funcionar, mas parece que não tem jeito.

O ponto é que à medida em que nossas defesas ficam mais elaboradas os spammers também vão aprendendo e dai não tem solução mágica que dê jeito. Será necessário intervir manualmente usando filtros de conteúdo, ou seja, adicionar expressões que devem ser barradas quando forem encontradas nas mensagens.

O spam com objetivo de “phishing” em geral é simples, curto, direto, enviado de múltiplos endereços válidos, com SPF, DKIM e DMARC devidamente configurados e sempre com um “from” diferente. Não tem anti-spam que consiga detectar e bloquear eles de forma eficiente.

Sempre que essa situação se apresentar será necessário intervir manualmente e apesar de ser chato ter que fazer isso com frequência, é bem simples.

Abaixo explico com fazer no Zimbra, mas a lógica funciona para qualquer outro ambiente que use o SpamAssassin, como Carbonio e PMG.

Editando o arquivo

su - zimbra
vi /opt/zimbra/conf/salocal.cf.in

Adicionando a regra

A regra é composta de duas linhas: uma contendo um nome único seguido da expressão regular. e na outra linha, o nome único seguido da pontuação.

Adicione isso no final do arquivo e modifique para servir ao seu caso.

body     NOME_UNICO1     /Seu computador foi invadido/i
score    NOME_UNICO1     40.0

Linha1
body = onde a busca será feita
NOME_UNICO1 = qualquer nome que desejar usar, sempre que ele seja igual nas duas linhas e único
/Texto que sera filtrado/ = o SpamAssassin vai procurar por esse texto dentro da mensagem e se achar vai pontual com a nota da linha 2
i = significa que tanto faz o texto estar em maiúsculas ou minúsculas

OBS1: No caso de textos com acento precisa criar duas regras iguais sendo uma em notação html como “aacento” e outra usando utf-8 mesmo
OBS2: não deixe espaços em branco depois do “i” ou o perl falhará ao ler essa linha inutilizando a regra.

Linha 2
score = definição de pontuação
NOME_UNICO1 = qualquer nome que desejar usar, sempre que ele seja igual nas duas linhas e único
40.0 = A pontuação desejada. Neste caso usamos 40 para provocar o bloqueio da mensagem.

Reiniciando o Amavis

Depois de feitas as alterações é necessário reiniciar o Amavis

zmamavisdctl restart

Testando

Valide suas configurações enviando um e-mail externo contendo o texto que deve ser barrado e monitore os logs

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *