Od pana Bednare cekam na nejaky smysluplnejsi clanek uz dost dlouho. Tohle je zas jen blabol s takrka nulovou informacni hodnotou. To jak uprimne priznava, ze o problemu slysel na me pusobi dost smesne, normalne totiz predpokladam, ze autor vi o cem pise. Mohu se zeptat, co to je za tvar "za ty leta"? Nemelo by tam byt "za ta leta"? Stydte se MAJERE!
Já mám taky svoje antiSPAMové řešení založené z 95 procent na unikátních emailových adresách, pro každý subjekt, a na bayesově filtru pro zbytek (který je kombinován s white/black listem plným regulárních výrazů na níže zmíněná klíčová slova).
Třeba mě hlavně chodí reklamy typu kupte akcie.
Čtyři hlavní oblasti, které budou mít problém s konfigurací SPAM filtru, z hlediska bayesian filtru budou (podle mého vlastního nastavení blacklistu, který vychází z 2845 SPAMů, které jsem dostal):
1) adult (klíčová slova: penis, pussy atd.)
2) brokeři s akciemi (5 day target, stock, symbol...)
3) prodejci SW (Photoshop, OEM, Windows...)
4) prodejci léků (Viagra, Cialis, doctor...)
Minoritní oblasti
5) banky (loan, creditcardebt...)
6) cestovky (travel...)
7) luxusní zboží, většinou hodinky (omega, rolex, tiffany...)
8) university (diplom, university degre...)
Normální Čech dá tohle všechno na blacklist a navíc přidá "!.cz" :).
Ale všechny tyhle ostatní oblasti mají problémy a není to jen adult.
Jasně Češi to mají vpohodě, protože většina emailů je psaná česky a tak bayesův filtr chrochtá blahem, že může všechno krásně rozlišit. Ale ostatní jsou nahraní, protože každý normální SPAM (když pominu obrázkové) je založen na směsici blábolů a pak ná pár klíčových slovech, která jsou charakteristiká právě pro to dané podnikání (pussy, OEM, viagra, watch) a ty zakázat právě nemůžete a jsou to právě jediná vodítka jak rozlišit s velkou pravděpodobností SPAM od normální pošty.
Takže i když si koupíte nějaké antiSPAM 99% řešení, tak vám bude stejně nanic (pokud jste v oblasti 1) - 7) ) a musíte si vymyslet vlastní řešení...
Souhlasím s tím, že pokud má člověk "netypické" požadavky na filtrování spamu, může to být problém. Pokud se jedná o normální firmu, tak těžko může zablokovat všechno, co není z domény .cz. Zkoušel jsem různá řešení, ale nejvíc se mi osvědčil freewarový program Spamihilator a white list, všechna ostatní řešení (i placená) naprosto propadla.
Dobře nakonfigurovaný white/black list je klíčová věc.
Statistika z mé K9ky (http://keir.net/k9.html), jak jsem psal, jde jen asi o desetinu z celkového počtu emailů, které nejdou na můj systém unikátních email adres (protože se prostě nedá použít a musím to řešit takto).
Celkově: 14 247 emailů
Good: 11 402
SPAM: 2 845
Vyhovělo white listu: 80,00%
Vyhovělo black listu: 19,50%
Tedy jen u 0,5 procenta emailů se musel použít čistě bayesův filtr bez jakéhokoliv vodítka, jinak bylo hned jasné, jestli jde o SPAM a nebo ne.
Tohle je trochu speciální případ, ale každá firma si přece může upravit svůj "průtok" informací a objednávek tak, aby SPAM měl co nejmenší šanci a přitom nedocházelo k falešným označením regulerní pošty za SPAM.
A jak řešíte, když se maily tváří jako poslané z některé z vašich mailových adres? Já musel adresy z vlastní domény z white listu vyřadit, protože to začali spameři masově zneužívat. Blacklist se hodí tak na pár (většinou českých) spamujících firem, ale ne na klasický spam.
Já sám sebe do whitelistu nedávám, dal jsem tam jen asi přes 1000 partnerů, kteří mi posílají 95% pošty.
Naopak zásadní věc je, co je v těle zprávy. V mém případě tam je skoro vždy nějaká má URL adresa (někdo jiný může mít zase jméno nějakého produktu, nebo jméno nějaké osoby), takže mám ve whitelistu, že jestli se objeví má adresa má to pustit.
SPAMeři totiž většinou nemodifikují tělo zprávý pro konkrétního uživatele, takže když se člověk podívá ne většinu regulérních emailů najde opakující se vzory, které jde přidat do whitelistu.
No a v blacklistu mám všechny ty akcie, léky atd. s tím, že počítám se základní záměnou písmen (viagra/vi@gra) a vkládáním "šumu" (viagra/v'i'a'g'r'a).
Takhle vypadá můj blacklist, whitelist tu samozřejmě nedám, je to tam samý můj a nebo cizí osobní údaj :) :
Jak jsem napsal je vytvořen na základě reálných SPAMů za poslední měsíc a něco, není to jen nějaká "teorie".
Jinak tohle co bylo zmíněno v článku je jen jeden z problémů, další problém je, že SPAMěři si platí crackery, aby napadali weby s lukrativními klienty a předávali jim email adresy, na které pak vesele SPAMují nabídky na super akcie :). Nejednou jsem dostal SPAM na mou email adresu typu hosting_nejakadomena.com@... atd. Takže SPAMěři nedělají jen to, že pasivně skenují web, ale i aktivně používají crackery nejen na "výrobu" botnetů, ale i na získávání nových lukrativních email adres.
Můj whitelist pro K9:
=====================================================
# K9 WHITElist (http://keir.net/k9_lists.html)
# nahrada pismen: a [a@]
# i l [/\|li1í\!]
# o [o0]
# m,n [mn]
# s [s$]
# mezera skutecna: .{0,5} (mezera mezi slovy napr. "close today")
# mezera neocekavana: .{0,3}
# OD HOSTING SPAM FILTRU
# 0========================0
Subject contains :***SPAM***
# AKCIE / INVESTICE
# 0===================0
# (ERMX) $0.16
Any matches :(ERMX).{0,15}$0.16
# 5 day target (5-days target)
Any matches :5.{0,3}d.{0,3}[a@].{0,3}y.{0,5}t.{0,3}[a@].{0,3}r.{0,3}g.{0,3}e.{0,3}t
# broker
Any matches :b.{0,3}r.{0,3}[o0].{0,3}k.{0,3}e.{0,3}r
# close today
Any matches :c.{0,3}[/\|li1í\!].{0,3}[o0].{0,3}[s$].{0,3}e.{0,5}t.{0,3}[o0].{0,3}d.{0,3}[a@].{0,3}y
# curent price (current price)
Any matches :c.{0,3}u.{0,3}r.{0,3}e.{0,3}[mn].{0,3}t.{0,5}p.{0,3}r.{0,3}[/\|li1í\!].{0,3}c.{0,3}e
# curent value (current value)
Any matches :c.{0,3}u.{0,3}r.{0,3}e.{0,3}[mn].{0,3}t.{0,5}v.{0,3}[a@].{0,3}[/\|li1í\!].{0,3}u.{0,3}e
# investment
Any matches :[/\|li1í\!].{0,3}[mn].{0,3}v.{0,3}e.{0,3}[s$].{0,3}t.{0,3}[mn].{0,3}e.{0,3}[mn].{0,3}t
# projected price
Any matches :p.{0,3}r.{0,3}[o0].{0,3}j.{0,3}e.{0,3}c.{0,3}t.{0,3}e.{0,3}d.{0,5}p.{0,3}r.{0,3}[/\|li1í\!].{0,3}c.{0,3}e
# stock
Any matches :[s$].{0,3}t.{0,3}[o0].{0,3}c.{0,3}k
# sym:
Any matches :[s$].{0,3}y.{0,3}[mn].{0,3}:
# symbol:
Any matches :[s$].{0,3}y.{0,3}[mn].{0,3}b.{0,3}[o0].{0,3}[/\|li1í\!].{0,3}:
# target price
Any matches :t.{0,3}[a@].{0,3}r.{0,3}g.{0,3}e.{0,3}t.{0,5}p.{0,3}r.{0,3}[/\|li1í\!].{0,3}c.{0,3}e
# term target
Any matches :t.{0,3}e.{0,3}r.{0,3}[mn].{0,5}t.{0,3}[a@].{0,3}r.{0,3}g.{0,3}e.{0,3}t
# todays prognosis
Any matches :t.{0,3}[o0].{0,3}d.{0,3}[a@].{0,3}y.{0,3}[s$].{0,5}p.{0,3}r.{0,3}[o0].{0,3}g.{0,3}[mn].{0,3}[o0].{0,3}[s$].{0,3}[/\|li1í\!].{0,3}[s$]
# yesterday result
Any matches :y.{0,3}e.{0,3}s.{0,3}t.{0,3}e.{0,3}r.{0,3}d.{0,3}[a@].{0,3}y.{0,5}r.{0,3}e.{0,3}[s$].{0,3}u.{0,3}[/\|li1í\!].{0,3}t
# PUJCKY
# 0========0
# creditcardebt (creditcarddebt)
Any matches :c.{0,3}r.{0,3}e.{0,3}d.{0,3}[/\|li1í\!].{0,3}t.{0,3}c.{0,3}[a@].{0,3}r.{0,3}d.{0,3}e.{0,3}b.{0,3}t
# loan
Any matches :[/\|li1í\!].{0,3}[o0].{0,3}[a@].{0,3}[mn]
# SOFTWARE
# 0==========0
# adobe acrobat
Any matches :[a@].{0,3}d.{0,3}[o0].{0,3}b.{0,3}e.{0,5}[a@].{0,3}c.{0,3}r.{0,3}[o0].{0,3}b.{0,3}[a@].{0,3}t
# adobe ilustrator (adobe illustrator)
Any matches :[a@].{0,3}d.{0,3}[o0].{0,3}b.{0,3}e.{0,5}[/\|li1í\!].{0,3}[/\|li1í\!]u.{0,3}[s$].{0,3}t.{0,3}r.{0,3}[a@].{0,3}t.{0,3}[o0].{0,3}r
# adobe photoshop
Any matches :[a@].{0,3}d.{0,3}[o0].{0,3}b.{0,3}e.{0,5}p.{0,3}h.{0,3}[o0].{0,3}t.{0,3}[o0].{0,3}[s$].{0,3}h.{0,3}[o0].{0,3}p
# adobe premiere
Any matches :[a@].{0,3}d.{0,3}[o0].{0,3}b.{0,3}e.{0,5}p.{0,3}r.{0,3}e.{0,3}[mn].{0,3}[/\|li1í\!].{0,3}e.{0,3}r.{0,3}e
# autodesk autocad
Any matches :[a@].{0,3}u.{0,3}t.{0,3}[o0].{0,3}d.{0,3}e.{0,3}[s$].{0,3}k.{0,5}[a@].{0,3}u.{0,3}t.{0,3}[o0].{0,3}c.{0,3}[a@].{0,3}d
# creative suite
Any matches :c.{0,3}r.{0,3}e.{0,3}[a@].{0,3}t.{0,3}[/\|li1í\!].{0,3}v.{0,3}e.{0,5}[s$].{0,3}u.{0,3}[/\|li1í\!].{0,3}t.{0,3}e
# ms ofice (ms ofice)
Any matches :[mn].{0,3}[s$].{0,5}[o0].{0,3}f.{0,3}[/\|li1í\!].{0,3}c.{0,3}e
# microsoft ofice (microsoft office)
Any matches :[mn].{0,3}[/\|li1í\!].{0,3}c.{0,3}r.{0,3}[o0].{0,3}[s$].{0,3}[o0].{0,3}f.{0,3}t.{0,5}[o0].{0,3}f.{0,3}[/\|li1í\!].{0,3}c.{0,3}e
# oem
Any matches :[o0]e[mn]
# window vista (windows vista)
Any matches :w.{0,3}[/\|li1í\!].{0,3}[mn].{0,3}d.{0,3}[o0].{0,3}w.{0,5}v.{0,3}[/\|li1í\!].{0,3}[s$].{0,3}t.{0,3}[a@]
# window xp (windows xp)
Any matches :w.{0,3}[/\|li1í\!].{0,3}[mn].{0,3}d.{0,3}[o0].{0,3}w.{0,5}x.{0,3}p
# LEKY
# 0======0
# celebrex
Any matches :c.{0,3}e.{0,3}[/\|li1í\!].{0,3}e.{0,3}b.{0,3}r.{0,3}e.{0,3}x
# cialis
Any matches :c.{0,3}[/\|li1í\!].{0,3}[a@].{0,3}[/\|li1í\!].{0,3}[/\|li1í\!].{0,3}[s$]
# doctor
Any matches :d.{0,3}[o0].{0,3}c.{0,3}t.{0,3}[o0].{0,3}r
# erection
Any matches :e.{0,3}r.{0,3}e.{0,3}c.{0,3}t.{0,3}[/\|li1í\!].{0,3}[o0].{0,3}[mn]
# drug store
Any matches :d.{0,3}r.{0,3}u.{0,3}g.{0,5}[s$].{0,3}t.{0,3}[o0].{0,3}r.{0,3}e
# formula
Any matches :f.{0,3}[o0].{0,3}r.{0,3}[mn].{0,3}u.{0,3}[/\|li1í\!].{0,3}[a@]
# health
Any matches :h.{0,3}e.{0,3}[a@].{0,3}[/\|li1í\!].{0,3}t.{0,3}h
# herbal
Any matches :h.{0,3}e.{0,3}r.{0,3}b.{0,3}[a@].{0,3}[/\|li1í\!]
# improve sex
Any matches :[/\|li1í\!].{0,3}[mn].{0,3}p.{0,3}r.{0,3}[o0].{0,3}v.{0,3}e.{0,5}[s$].{0,3}e.{0,3}x
# increase muscle
Any matches :[/\|li1í\!].{0,3}[mn].{0,3}c.{0,3}r.{0,3}e.{0,3}[a@].{0,3}[s$].{0,3}e.{0,5}[mn].{0,3}u.{0,3}[s$].{0,3}c.{0,3}[/\|li1í\!].{0,3}e
# les fat (less fat)
Any matches :[/\|li1í\!].{0,3}e.{0,3}[s$].{0,5}f.{0,3}[a@].{0,3}t
# levitra
Any matches :[/\|li1í\!].{0,3}e.{0,3}v.{0,3}[/\|li1í\!].{0,3}t.{0,3}r.{0,3}[a@]
# lipitor
Any matches :[/\|li1í\!].{0,3}[/\|li1í\!].{0,3}p.{0,3}[/\|li1í\!].{0,3}t.{0,3}[o0].{0,3}r
# medication
Any matches :[mn].{0,3}e.{0,3}d.{0,3}[/\|li1í\!].{0,3}c.{0,3}[a@].{0,3}t.{0,3}[/\|li1í\!].{0,3}[o0].{0,3}[mn]
# meds
Any matches :[mn].{0,3}e.{0,3}d.{0,3}[s$]
# meridia
Any matches :[mn].{0,3}e.{0,3}r.{0,3}[/\|li1í\!].{0,3}d.{0,3}[/\|li1í\!].{0,3}[a@]
# obesity
Any matches :[o0].{0,3}b.{0,3}e.{0,3}[s$].{0,3}[/\|li1í\!].{0,3}t.{0,3}y
# penis enlargement (penis enlarge/enlarge penis)
Any matches :p.{0,3}e.{0,3}[mn].{0,3}[/\|li1í\!].{0,3}[s$].{0,5}e.{0,3}[mn].{0,3}[/\|li1í\!].{0,3}[a@].{0,3}r.{0,3}g.{0,3}e
Any matches :e.{0,3}[mn].{0,3}[/\|li1í\!].{0,3}[a@].{0,3}r.{0,3}g.{0,3}e.{0,10}.{0,5}p.{0,3}e.{0,3}[mn].{0,3}[/\|li1í\!].{0,3}[s$]
# penis size
Any matches :p.{0,3}e.{0,3}[mn].{0,3}[/\|li1í\!].{0,3}[s$].{0,5}[s$][/\|li1í\!]ze
# pharmacy
Any matches :p.{0,3}h.{0,3}[a@].{0,3}r.{0,3}[mn].{0,3}[a@].{0,3}c.{0,3}y
# pill (pills)
Any matches :p.{0,3}[/\|li1í\!].{0,3}[/\|li1í\!].{0,3}[/\|li1í\!]
# potent
Any matches :p.{0,3}[o0].{0,3}t.{0,3}e.{0,3}[mn].{0,3}t
# prescription
Any matches :p.{0,3}r.{0,3}e.{0,3}[s$].{0,3}c.{0,3}r.{0,3}[/\|li1í\!].{0,3}p.{0,3}t.{0,3}[/\|li1í\!].{0,3}[o0].{0,3}[mn]
# size does mater (size does matter)
Any matches :[s$].{0,3}[/\|li1í\!].{0,3}z.{0,3}e.{0,5}d.{0,3}[o0].{0,3}e.{0,3}[s$].{0,5}[mn].{0,3}[a@].{0,3}t.{0,3}e.{0,3}r
# valium
Any matches :v.{0,3}[a@].{0,3}[/\|li1í\!].{0,3}[/\|li1í\!].{0,3}u.{0,3}[mn]
# viagra
Any matches :v.{0,3}[/\|li1í\!].{0,3}[a@].{0,3}g.{0,3}r.{0,3}[a@]
# xanax
Any matches :x.{0,3}[a@].{0,3}[mn].{0,3}[a@].{0,3}x
Any matches :[a@].{0,3}x.{0,3}[a@].{0,3}[mn].{0,3}x
# zoloft
Any matches :z.{0,3}[o0].{0,3}[/\|li1í\!].{0,3}[o0].{0,3}f.{0,3}t
# CESTOVANI
# 0===========0
# travel
Any matches :t.{0,3}r.{0,3}[a@].{0,3}v.{0,3}e.{0,3}[/\|li1í\!]
# LUXUSNI ZBOZI
# 0===============0
# brand product
Any matches :b.{0,3}r.{0,3}[a@].{0,3}[mn].{0,3}d.{0,5}p.{0,3}r.{0,3}[o0].{0,3}d.{0,3}u.{0,3}c.{0,3}t
# cartier
Any matches :c.{0,3}[a@].{0,3}r.{0,3}t.{0,3}[/\|li1í\!].{0,3}e.{0,3}r
# louis vuiton (louis vuitton)
Any matches :[/\|li1í\!].{0,3}[o0].{0,3}u.{0,3}[/\|li1í\!].{0,3}s.{0,5}v.{0,3}u.{0,3}[/\|li1í\!].{0,3}t.{0,3}[o0].{0,3}[mn]
# movado
Any matches :[mn].{0,3}[o0].{0,3}v.{0,3}a.{0,3}d.{0,3}[o0]
# omega
Any matches :[o0].{0,3}[mn].{0,3}e.{0,3}g.{0,3}[a@]
# original manufacturer
Any matches :[o0].{0,3}r.{0,3}[/\|li1í\!].{0,3}g.{0,3}[/\|li1í\!].{0,3}[mn].{0,3}[a@].{0,3}[/\|li1í\!].{0,5}[mn].{0,3}[a@].{0,3}[mn].{0,3}u.{0,3}f.{0,3}a.{0,3}c.{0,3}t.{0,3}u.{0,3}r.{0,3}e.{0,3}r
# panerai
Any matches :p.{0,3}[a@].{0,3}[mn].{0,3}e.{0,3}r.{0,3}[a@].{0,3}[/\|li1í\!]
# porsche
Any matches :p.{0,3}[o0].{0,3}r.{0,3}s.{0,3}c.{0,3}h.{0,3}e
# rolex
Any matches :r.{0,3}[o0].{0,3}[/\|li1í\!].{0,3}e.{0,3}x
# tag heuer
Any matches :t.{0,3}[a@].{0,3}g.{0,5}h.{0,3}e.{0,3}u.{0,3}e.{0,3}r
# technomarine
Any matches :t.{0,3}e.{0,3}c.{0,3}h.{0,3}[mn].{0,3}[o0].{0,3}[mn].{0,3}[a@].{0,3}r.{0,3}[/\|li1í\!].{0,3}[mn].{0,3}e
# tifany (tiffany)
Any matches :t.{0,3}[/\|li1í\!].{0,3}f.{0,3}[a@].{0,3}[mn].{0,3}y
# vacheron constantin
Any matches :v.{0,3}[a@].{0,3}c.{0,3}h.{0,3}e.{0,3}r.{0,3}[o0].{0,3}[mn].{0,5}c.{0,3}[o0].{0,3}[mn].{0,3}s.{0,3}t.{0,3}[a@].{0,3}[mn].{0,3}t.{0,3}[/\|li1í\!].{0,3}[mn]
# watches
Any matches :w.{0,3}[a@].{0,3}t.{0,3}c.{0,3}h.{0,3}e.{0,3}[s$]
# VZDELANI
# 0=========0
# diplom
Any matches :d.{0,3}[/\|li1í\!].{0,3}p.{0,3}[/\|li1í\!].{0,3}[o0].{0,3}[mn]
# university degre (university degree)
Any matches : u.{0,3}[mn].{0,3}[/\|li1í\!].{0,3}v.{0,3}e.{0,3}r.{0,3}[s$].{0,3}[/\|li1í\!].{0,3}t.{0,3}y.{0,5}d.{0,3}e.{0,3}g.{0,3}r.{0,3}e
Upozorníme vás na články, které by vám neměly uniknout (maximálně 2x týdně).