Nem szoktam hírleveleket küldeni, olvasni is elvétve, de mail szervert sokat üzemeltetek, ezért összeírnék pár dolgot, olyan hibákat amik miatt spam gyanússá válhat egy teljesen korrekt hírlevél is, amikre érdemes lehet figyelni küldéskor.
Először is mi a spam? A Wikipédia így definiálja: "A spam a fogadó által nem kért, elektronikusan, például e-mailen keresztül tömegesen küldött hirdetés, felhívás." És mi a hírlevél? Nagyjából ugyan ez, azzal a fontos különbséggel, hogy nem kéretlenül küldött ("A kéretlen hírleveleket spamnek nevezzük." - Wikipédia).
Innentől kezdve főhet a feje szegény Rendszergazdának, hogyan tudja a mail szerveren eldöntetni egy (hír)levélről, hogy az kért vagy kéretlen? A válasz egyszerű: sehogy. Marad a "találgatás"... Lehet a levelekkel egyszerűen egy "Tabu, a tiltott szavak játéká"-t játszani, vagy statisztikai/nyelvtani elemzésekbe belemenni.
Egyszer régebben, amikor épp a képes spam volt a menő, abból is az animált gif, hogy még nehezebb legyen felismerni, akkor már egyik szerveremen olyan spam szűrést állítottam be, hogy a levél képi mellékleteit átkonvertálta először egy layer-es tiff-be (összefűrze az animált gif layereit, plusz a "zavaró" szemetet tartalmazó layereket ki is dobta közben belőle), majd erre ráment egy optikai karakterfelismerő OCR program, majd az eredményt összevetettem egy tiltott szavak listájával, korrelációs algoritmussal. El lehet képzelni, mekkora erőforrást vitt el egyetlen levél elemzése, és átlagban másodpercenként érkezett 5 darab arra a szerverre, nem is bírta a dolgot, pedig nem volt gyenge szerver....
Tanultam a dologból, így ma már egyszerű módszerekkel döntök egy levél sorsáról, és a nagy "ingyenes" mail szolgáltatók sem tesznek másként, ebben is biztos vagyok, egy levél vizsgálatára nem éri meg egy X (X tart a 0-hoz) erőforrásnál többet pazarolni.
Tehát nyerők az egyszerű módszerek. Spam listák (blacklists), késleltetett küldés (graylists), pozitív listák (whitelists), pár alap szó szűrése (gyógyszerek, nyeremények, stb.) mint technikák eléggé közismertek. Az alábbiakban inkább olyan gyakori hibákra hívnám fel a figyelmet, amikkel sokszor találkozom, és ami miatt általában a spam mappában landolhat egy teljesen korrekt hírlevél is:
A levél fejléce tart az első sortól az első üres sorig, ezt mindenki ismeri, technikai információk helye, a levél vélt útvonala (Received: sorok), dátum, küldő, címzett, tárgy, egyéb "meta" adatok gyűjteménye. A levél ezen része azonban még az "ősi örökség" nyomán 7bites kódolású kell(ene) legyen, tehát angol kis/nagybetűk, számok, írásjelek, de semmi ékezet, semmi unicode vagy egyéb karakterkészletnek helye nincs! A "Content-Type:" a levél szövegére, törzsére vonatkozik, a fejlécre nem!
Ez leginkább a Subject mezőnél szokott gondot okozni sok küldő programnak, hogy ékezetes karaktereket írnak a tárgyba, pl. így:
HTML kód:
Subject: Még nem késte le a legjobb karácsonyi ajánlatokat
Helyesen/szabványosan pl. így kellene kinéznie:
HTML kód:
Subject: =?utf-8?Q?M=C3=A9g=20nem=20k=C3=A9ste=20le=20a=20legjobb=20kar=C3=A1csonyi=20aj=C3=A1nlatokat?=
Ugyan ez igat a címzett (To: ) résznél is, ha a címzett neve tartalmaz ékezetes karaktert, szintén kódolni kell.
- HTML levelek képi design elemei
A legtöbb hírlevél nem pusztán sima szöveg, kihasználva a html levelek adta szabadságot, komplett kis "weboldalak" születnek meg, sok grafikai elemmel. Ezek vagy az üzenethez csatolva érkeznek, vagy külső hivatkozásként, egy web szerverről töltődnek be, amennyiben ez engedélyezve van a levelező programban. Hogy melyik a jobb megoldás? Nehéz erre egyértelmű választ adni, hisz külső hivatkozásokat használva jelentősen kisebb lehet a levél mérete, de hátránya, hogy így internetről kell letölteni a levelezőnek a hiányzó elemeket, ami biztonsági kockázatot jelenthet, valamint gondolni kell arra is, hogy valaki esetleg másfél év múltán is rátalál az archívumában egy korábbi hírlevelünkre, és nagyon csúnya tud lenni, ha időközben már letöröltük a szerverről a hírlevél által hivatkozott képi vagy egyéb elemeket.
Én azt vallom, hogy a hírlevél tartalmazza a hozzá tartozó grafikai elemeket is, persze racionálisan, pl. nem kell nyomdai minőségben mellékelni a logót, a hírlevélhez legyen külön, nagyobb tömörítéssel, akár picit rosszabb minőségben mellékelve a grafika, és abban a méterben, ahogy az a levélben fel lesz használva; értem ezalatt hogy egy 100x100 pixel méretben megjelenő logót nem 600x600 pixeles változatban mellékeljenek, hogy majd a megjelenítésnél lecsökkenti a méretét az előírás szerint a levelező.
Így persze nagyobb lesz a hírlevél mérete, de értelmes módon megszerkesztve azt nem lesz azért több MB-os így sem, és ha nem spam üzenet, akkor nem kell több százezer címre sem postázni, így a szerver is bírni fogja. A spammerek azonban minél gyorsabban minél több levelet küldenek, ezért általában a levél pici, és minden grafikai elemet külső hivatkozásként alkalmaznak.
Ha mindenképp külső képhivatkozást szeretne valaki használni, akkor fontos, hogy honnan linkeli, mindenképp a saját szerver ajánlott. Képmegosztó oldalt, egyéb szervert igénybe véve egyfelől lehet hogy törlik idővel a feltöltött képeket, másfelől ha spam levélnél is használták, lehet hogy feketelistás lesz. Jobb elkerülni ennek a lehetőségét.
Nem csak a spammer feladókról ill. spam küldő szerverekről van fekete lista. Sajnos sok vírussal/féreggel megfertőzött otthoni számítógép tagja un. botnet hálózatoknak, amin keresztül távirányítva ezen gépeket spam küldésre is fel lehet és előszeretettel fel is használják. Ezt már nehezebb így megfogni, hisz az "okosabb" férgek képesek a levelező program beállításait kiolvasni, és a szolgáltató mail szerverét (akár authentikálva is) használják a feladó valódi identitását felhasználva spam küldésre.
Ezért nem csak az számít, ki küldi a levelet, milyen címről, hanem az is, milyen hivatkozásokat tartalmaz, "hova linkel". Hírlevélben valószínűleg úgysem fog senki warez vagy keksz oldalt linkelni, adatlopó otpbank.hu.hoszucim.ugyiscsakazelejetnezed,co,tw oldalt sem valószínű hogy bárki linkelne. Ami viszont előfordul, az a link rövidítő szolgáltatások (pl. bit.ly), vagy osztott domaines tárhelyek pl. sites.google.com használata hivatkozásokban.
Mivel ezeket a spammerek is előszeretettel használják, így általában szerepelnek a feketelistán, vagy könnyen felkerülhetnek rá, jobb ezek használatát mellőzni hírlevélben.
A dátum legyen helyesen megadva. Ha hiányzik a fejlécből a Date: mező, az gond. Ha ott van, de pl. nem jó a formátuma, az is gond. A másik, hogy a dátum legyen valós. Szakálas spammer trükk már az is, hogy a levelet a "jövőből" küldjük, mivel sokan dátum szerint rendezik a leveleiket, így könnyen az első helyre lehet(ett) kerülni, amolyan mail
seo-ként, így lehetett beszerezni a mail lista első helyét, de mára már ismert "blackhat" dolog ez. A másik a múltból érkező levél, érdekes dolog 1900-ból elektronikus levelet kapni, különösen hogy a levelező mutatja, hogy van 1 olvasatlan levél, de idő szerint csökkenő listában mire megtalálom, hogy a legrégebbit kell keresni, elmegy vele egy kis idő. De mára már ez is idejétmúlt dolog, hírleveleknél inkább csak hibás beállításból adódhat, kerülendő.
A levél fejlécében lévő Message-ID mező legyen egyedi. Ez általában csak akkor gond, ha belepakoljuk kézzel, ha hagyjuk hogy a mail szerver pakolja oda, akkor ezzel nem szokott gond lenni. Kivéve ha "X-Mailer:" header-t is megadunk, de rosszul. Ebbe a levélküldő program neve/verziója kerülhet bele, opcionális, inkább ne használjuk, ha mégis, akkor legyen valós, különben "lebukhatunk" mert általában minden levelező program magára jellemző formátumú Message-ID-t generál, és ha látszólag egy levelet Outlook-ból küldtek, de a Message-ID nem olyan, mint amilyet az Outlook generál, akkor máris Spam mappa.
Másrészt mint írtam egyedi legyen. Nyilván ha egy levél több címzettnek szól, több TO: CC: vagy BCC: címzettje van, ott az ID egyforma lesz. De ha a hírlevél nem így kerül kézbesítésre, akkor ott már egyedi Message-ID kell legyen. Ha jön egy levél nekem, majd utánna jön egy másik másvalakinek, de ugyan az a Message-ID-ja mint amivel már Én is kaptam levelet, akkor az már szintén Spam, ill. pontosabban én azt már fogadáskor visszadobom hogy duplikált kézbesítés, de ez implementáció függvénye hogy ki hogy kezeli.
Még van csomó apróság, hírlevél ne jöjjön "sürgős" jelzéssel, ne kérjen olvasási nyugtát, Precedence: Bulk header és ezernyi más apró dolog, de a fentiek a leggyakoribbak amikkel találkoztam, meg olyan vagyok kicsit mint a Google, és titokban tartom az algoritmust, hogy pontosan mi alapján szűrök spam leveleket A fentiek azonban gyakori hibák, és úgy hiszem, hogy többek között ezekre figyelhetnek a "nagy" mail szerverek is egy levél elemzése során.
Könyvjelzők