Reguły dla Message-ID

Skoro w nagłówkach maila można sprawdzać wiele rzeczy czemu by nie sprawdzić poprawności Message-ID. W SA jest już reguła sprawdzająca czy jest tylko jeden znak ‚@’. Zaprzęgnijmy wyrażenia regularne niech sprawdzają. Oto reguły dla Message-ID.

Message_ID kończy się na localhost.localdomain

Zgodnie z budową nagłówka MSID powinno być niepowtarzalne czy nie może się kończyć na localhost.localdomain. Powinno się kończyć (najlepiej by było) nazwa hosta. Poniższa reguła dodaje 1.5 pkt i empirycznie jest to dobra wartość.

 header    ZABOJCASPAMU_MSID_LOCALHOST Message-ID=~/\@localhost\.localdomain>$/
 describe  ZABOJCASPAMU_MSID_LOCALHOST Message-ID konczy sie  localhost\.localdomain
 score     ZABOJCASPAMU_MSID_LOCALHOST 1.5
Message_ID kończy się na local

Nie ma wielkiej filozofii. tak jak poprzednia reguła dobrze również odsiewa spam. Zasada podobna.

 header    ZABOJCASPAMU_MSID_LOCAL      Message-ID=~/\.local>$/ 
 describe  ZABOJCASPAMU_MSID_LOCAL      Message-ID konczy sie  local
 score     ZABOJCASPAMU_MSID_LOCAL      1
Po znaku @ nie ma kropki

Czyli w MSID nie ma pełnej domeny. Reguła wydawała mi się świetna do wysyłki spamu gdyby nie to, że niektóre duże serwery w Polsce wypuszczają takie coś bez kropki. Szczególnie interia.pl pozwala na takie dziwne twory. Wysłanie z ich domeny lub przez ich serwery maile mają nieraz takie Message-ID.  Z interią są inne tez problemy bo oni powpisywani są na różne RBLe.

 header    ZABOJCASPAMU_MSID_NODOT      Message-ID=~/\@[a-zA-Z0-9-]+>/
 describe  ZABOJCASPAMU_MSID_NODOT      Message-ID po @ brak kropki
 score     ZABOJCASPAMU_MSID_NODOT      0.2
Własna domena w Message-ID

A takie potworki też się zdarzają. W mailu przychodzącym z zewnątrz w Message-Id jest nasza domena. Przy zwrotce to ok ale przy badziewiu innym? Nie ma szans. Znaczy jakiś błąd czy coś innego. Ja mam ustawione tak, że maile wysyłane nie są sprawdzane pod kontem spamu. Wiec reguła działa prawidłowo. Jeśli jest inaczej każdy mail wysyłany może się łapać (nie jestem pewien bo nie sprawdzałem, być może SA jak sprawdza nie zna Message-ID).

UWAGA: w poniższej regule w pierwszej linii tam gdzie jest WLASNY.SERWER należy wpisać domenę lub host własny(zgodny z tym co nasz serwer produkuje).

 header    __ZABOJCASPAMU_FAKE_MSID0 Message-ID=~/WLASNY.SERWER/ 
 header    __ZABOJCASPAMU_FAKE_MSID1 From=~/(MAILER\-DAEMON|mailer\-daemon)\@/
 meta      ZABOJCASPAMU_FAKE_MSID    __ZABOJCASPAMU_FAKE_MSID0 && !__ZABOJCASPAMU_FAKE_MSID1  
 describe  ZABOJCASPAMU_FAKE_MSID    W message ID moje domena
 score     ZABOJCASPAMU_FAKE_MSID    0.4

I to tyle z reguł dotyczących Message_ID. Pomysł wydawał się całkiem sensowny ale niestety „dobre” serwery tez generują źle ten nagłowek.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *