Comitê Gestor da Internet no Brasil
CGI.br Registro CERT.br
 

Greylisting

 
 

O conceito de greylisting consiste em recusar temporariamente uma mensagem e esperar por sua retransmissão, e parte dos seguintes princípios:

  • que e-mails válidos são enviados a partir de MTAs legítimos, que mantém filas e possuem políticas de retransmissão em caso de erros temporários;
  • spammers e códigos maliciosos raramente usam MTAs legítimos.

Contudo, existem spammers que utilizam MTAs legítimos ou mesmo reenviam as mensagens a fim de contornar esta técnica. Ainda assim, o greylisting tem se mostrado eficiente para barrar mensagens enviadas por vírus, worms e spam zombies.

O documento de referência sobre greylisting é o whitepaper http://projects.puremagic.com/greylisting/whitepaper.html.

A lógica normalmente implementada por MTAs com suporte a greylisting é mostrada no seguinte diagrama de blocos:

[Diagrama de blocos
sobre greylisting]

Em geral as implementações de greylisting mantém um banco de dados com registros indexados por:

  • endereço IP da origem;
  • endereço do remetente no envelope;
  • endereço do destinatário no envelope.

Estes registros contém uma variável de estado e alguns parâmetros de tempo. Os estados de um autômato de greylisting são representados na figura abaixo:

[Diagrama de estados
sobre greylisting]
  • inicial (branco): (IP,envelope) não estão registrados no banco de dados, a primeira mensagem recebida faz passar para o estado de bloqueio temporário e é rejeitada com erro temporário;

  • bloqueio temporário (vermelho): rejeita mensagens com erro temporário e sai deste estado para o de aceitação temporária somente depois de decorrido o tempo t0;

  • aceitação temporária (amarelo): aceita uma mensagem, passando para o estado transparente ou, se não receber mensagem até que decorra t1, volta para o estado inicial;

  • transparente (verde): aceita mensagens e retorna para este estado ou volta para o estado inicial se decorrer o tempo t2 sem que qualquer mensagem seja recebida. A cada nova mensagem a contagem de t2 é reiniciada.

Assim, IPs e envelopes com os quais se mantém correspondência regular atingirão o estado transparente rapidamente. Para estes será como se não estivesse sendo usado greylisting.

É importante também manter em uma lista branca, endereços IP que tem passagem livre pelo greylisting, ou porque são máquinas confiáveis (da própria rede, de redes conhecidas, etc) ou por que seus MTAs não conseguem tratar corretamente erros temporários.

 
  Creative Commons License
Válido XHTML - CSS