Odfiltrování spamu společnosti DETEXTO (Aleš Bialonczyk) pomocí pravidel toku pošty

V tomto návodu si ukážeme, jak použít pravidla toku pošty (mail flow) pro práci se zprávami na úrovni celé organizace. Jako konkrétní příklad si vytvoříme filtr na spam posílaný společností Detexto (aaaHome, Habu, zkonkurzu, odvyrobce...). Tato společnost mnoho let bez možnosti odhlášení se masivně spamuje osobní i firemní mailové schránky (viz webtrh, heuréka, endora) a používá k tomu možná stovky různých domén, je proto složité spamy filtrovat pomocí jednoduchých filtrů. Jejich e-maily jsou zároveň vcelku dobře nastavené, takže projdou naprostou většinou antispamových filtrů.

Ukázka spamového emailu

Update: Nově začal spam této společnosti (jednatel Aleš Bialonczyk) chodit i přes datové schránky.

Spam v datové schránce (děkujeme Pavlovi Ungrovi za dodání ukázky)
Další společnosti, kde odesílatel aktuálně působí

Nejprve je nutné udělat podrobnější průzkum spamů a pokusit se najít v nich něco společného. Texty e-mailů se liší, odesílatelé se liší, adresy webů uváděné v mailech se také liší.

Pokud prozkoumáme hlavičky e-mailu, tak získáme více informací o tom, jak jsou maily reálně posílané. Dozvíme se z nich, že odesílatel pro rozesílku využívá službu Amazon SES, do které zprávy posílá z nástroje Sendy. Určitě není moudré zablokovat celý SES, nebo nástroj Sendy, protože je mnoho služeb používá k seriózním účelům.

V hlavičkách si můžeme všimnout také interního odkazu na odhlášení z newsletteru, který v textu mailu chybí. Nečekal bych, že odhlášení pomocí odkazu bude mít nějaký větší smysl a předpokládám, že se vaše emailová adresa velmi brzo na nějaký z jejich seznamů opět dostane. Odkaz na odhlášení nám však prozrazuje samotnou adresu Sendy instance a lze předpokládat, že zatímco domén pro odesílání budou využívat prakticky neomezené množství, tak samotných instancí Sendy bude jen omezené množství (už jen proto, že pro každou je potřeba koupit licenci).

Analýzou několika tisíc dalších spamů se tato domněnka potvrdila a ukázalo se, že v posledních měsících byly použity opravdu pouze jednotky Sendy instancí - nejčastěji na adrese zivot-neni-pohadka.cz a rig24.eu. Můžeme proto připravit poměrně účinný a udržovatelný filtr na adresu v hlavičce List-Unsubscribe.

Vytvoření filtru v Centru pro správu Exchange

Pro nastavení filtrů pro celou organizaci musíme navštívit Centrum pro správu Exchange a sekci "Tok pošty".

Zde pomocí + přidáme nové pravidlo.

Aby bylo možné filtrovat podle hlaviček, je třeba si povolit "Další možnosti".

Vybereme si pravidlo "Záhlaví zprávy obsahuje kterékoliv z těchto slov" a jako záhlaví nastavíme "List-Unsubscribe" a slova budou následující:

  • zivot-neni-pohadka.cz
  • postanula.cz
  • rig24.eu
  • novelisty.cz
  • sunfold.cz

Pokud v budoucnu začnou chodit spamy z jiné instance, tak ji zde stačí jednoduše přidat.

Jako akci filtru nastavíme "Upravit vlastnosti zprávy" a "nastavit pravděpodobnost spamu", nebo můžeme zprávu rovnou přesunout do složky spam, případně hned zahodit. Číslo 9 značí nejvyšší pravděpodobnost, že je zpráva spam.

Celý filtr pak bude vypadat následovně:

Uložením filtr aktivujeme a problém s tímto typem spamu by tak měl být vyřešen pro celou naši organizaci.

Nastavení filtru pomocí PowerShellu

Stejný filtr můžeme samozřejmě nastavit i pomocí PowerShellu.

Nastavení prostředí pro přístup k Exchange online z PowerShellu

Pokud zatím PowerShell ke správě Office 365 nepoužíváte, ukážeme si, jak PowerShell nastavit a nainstalovat potřebné komponenty.

Jako první je třeba spustit PowerShell jako administrátor a nainstalovat externí modul ExchangeOnlineManagement:

Install-Module -Name ExchangeOnlineManagement

Pokud vám chybí některé potřebné moduly, tak bude vyzvání k potvrzení jejich instalace a dále k potvrzení, že důvěřuejete externímu zdroji, ze kterého se modul instaluje. Pokud instalace proběhne správně, můžete administrátorský powershell vypnout a otevřít ho jako běžný uživatel.

Přihlášení do Office 365

Pro přihlášení stačí nově zadat jen následující příkaz:

Connect-ExchangeOnline

Vyskočí dialogové okno k zadání vašich údajů k přihlášení do Office 365. Po přihlášení se načtou data z Office 365 a můžete začít pracovat.

Pro vytvoření výše uvedeného filtru stačí zadat následující příkaz:

New-TransportRule -Name "DETEXTO SPAM" -HeaderContainsMessageHeader List-Unsubscribe -HeaderContainsWords zivot-neni-pohadka.cz, postanula.cz, rig24.eu, novelisty.cz, sunfold.cz -SetSCL 9

Nasatavení filtru si můžete přímo z PowerShellu zkontrolovat příkazem:

Get-TransportRule -Identity "DETEXTO SPAM" | Format-List

Přes PowerShell můžete poměrně snadno provádět mnoho operací s Office 365, doporučuji si proto práci s ním alespoň letmo vyzkoušet. Příkazy jsou dobře popsané - všechny možnosti New-TrasportRule naleznete v dokumentaci.

Uvedený princip boje s tímto konkrétním spamem je samozřejmě aplikovatelný pro libovolné mailové řešení, které umožňuje filtrování podle mailových hlaviček.

acorn alicorn balance-scale-left beer cogs hammer-war planet-ringed thumbs-up user-robot