Bayesian spamfiltre beregner sannsynligheten for at en melding er spam basert på innholdet. I motsetning til enkle innholdsbaserte filtre lærer Bayesian spam filtrering fra spam og fra god post, noe som resulterer i en svært robust, tilpasset og effektiv anti-spam tilnærming som best av alt, returnerer neppe noen falske positive.
Hvordan gjenkjenner du søppelpost?
Tenk på hvordan du oppdager spam. Et raskt blikk er ofte nok. Du vet hva spam ser ut, og du vet hvilken god post som ser ut.
Sannsynligheten for spam ser ut som god post er rundt … null.
Scoring innholdsbaserte filtre tilpasses ikke
Ville det ikke vært bra hvis automatiske spamfiltre fungerte slik?
Scoring av innholdsbaserte spamfiltre prøver bare det. De ser etter ord og andre egenskaper som er typiske for spam. Hver karakteristisk element er tildelt en poengsum, og en spampoengsum for hele meldingen beregnes fra de enkelte scoreene. Noen scoringfiltre ser også etter karakteristika for legitim epost, og senker en meldings sluttresultat.
Scoring filtre tilnærming virker, men det har også flere ulemper:
- Listen over egenskaper er bygd fra spam (og god post) som er tilgjengelig for filterets ingeniører. For å få en god forståelse for den typiske nettsøppelen som noen kan få, må posten hentes på hundrevis av e-postadresser. Dette svekker filtreffektiviteten, spesielt fordi Egenskaper for god post vil være forskjellig for hver person , men dette er ikke tatt i betraktning.
- Karakterene å se etter er mer eller mindre satt i stein . Hvis spammerne gjør en innsats for å tilpasse seg (og få spam til å se ut som en god mail til filtre), må filtreringsegenskapene tilpasses manuelt - enda større innsats.
- Resultatet til hvert ord er sannsynligvis basert på et godt estimat, men det er fortsatt vilkårlig. Og som en liste over egenskaper, tilpasser den seg heller ikke til skiftende verden av spam generelt eller til en enkelt brukers behov.
Bayesian Spam Filters Tweak seg, blir bedre og bedre
Bayesian spamfiltre er også en slags scoring av innholdsbaserte filtre. Deres tilnærming fjerner imidlertid problemene med enkle scoring-spamfiltre, og det gjør det så radikalt. Siden svakheten i scoring filtre er i den manuelt bygget liste over egenskaper og deres poeng, er denne listen eliminert.
I stedet bygger Bayesian spam filtre selve listen. Ideelt sett starter du med en (stor) haug med e-postmeldinger som du har klassifisert som spam, og en annen haug med god post. Filtrene ser på begge og analyserer den legitime posten samt spam for å beregne sannsynligheten for ulike egenskaper som vises i spam, og i god post.
Hvordan en Bayesian Spam filter undersøker en e-post
Karakterene som et Bayesian spamfilter kan se på, kan være:
- ordene i meldingenes kropp, selvfølgelig og
- dets overskrifter (sendere og meldingsbaner, for eksempel!), men også
- andre aspekter som HTML / CSS kode (som farger og annen formatering), eller til og med
- ordpar, setninger og
- meta informasjon (hvor en bestemt frase vises, for eksempel).
Hvis et ord, "Cartesian" for eksempel, aldri vises i spam, men ofte i den legitime epost du mottar, er sannsynligheten for at "kartesisk" angir spam nær null. "Toner", derimot, vises utelukkende, og ofte, i spam. "Toner" har en veldig stor sannsynlighet for å bli funnet i spam, ikke mye under 1 (100%).
Når en ny melding kommer, analyseres den av det bayesiske spamfilteret, og sannsynligheten for at den komplette meldingen blir spam, beregnes ved hjelp av de enkelte karakteristikkene.
Anta at en melding inneholder både "Cartesian" og "toner". Fra disse ordene er det ikke klart om vi har spam eller legitim post. Andre egenskaper vil (forhåpentligvis og mest sannsynlig) indikere en sannsynlighet som tillater at filteret klassifiserer meldingen som enten spam eller god post.
Bayesian spamfilter kan lære automatisk
Nå som vi har en klassifisering, kan meldingen brukes til å trene filteret ytterligere. I dette tilfellet senkes enten sannsynligheten for "kartesian" som indikerer god post (hvis meldingen som inneholder både "kartesisk" og "toner" er funnet å være spam), eller sannsynligheten for "toner" som indikerer spam må vurderes på ny.
Ved hjelp av denne auto-adaptive teknikken kan Bayesian filtre lære av både sine egne og brukerens avgjørelser (hvis hun manuelt retter feilmeldingen av filtre). Tilpasningsevnen til Bayesian filtrering sørger også for at de er mest effektive for den enkelte e-postbruker. Mens de fleste spam kan ha lignende egenskaper, er den legitime e-posten karakteristisk forskjellig for alle.
Hvordan kan spammere komme forbi bayesiske filtre?
Egenskapene til legitim epost er like viktig for Bayesian spam filtreringsprosessen som spam er. Hvis filtrene er opplært spesielt for hver bruker, vil spammere ha en enda vanskeligere tid å jobbe rundt alle (eller til og med flest) spamfilter, og filtrene kan tilpasse seg nesten alt spammere prøver.
Spammere vil bare gjøre det forbi velutdannede bayesiske filtre hvis de får deres spammeldinger til å se ut som den vanlige e-posten alle kan få.
Spammere sender vanligvis ikke slike vanlige e-poster. La oss anta at dette er fordi disse e-postene ikke fungerer som søppelpost.Så sjansene er at de ikke vil gjøre det når vanlige, kjedelige e-postmeldinger er den eneste måten å gjøre det forbi spamfiltre.
Hvis spammere bytter til det meste vanlige e-postmeldinger, vil vi imidlertid se mye spam i våre innboks igjen, og e-post kan bli så frustrerende som i pre-bayesiske dager (eller enda verre). Det vil også ha ødelagt markedet for de fleste typer spam, skjønt, og dermed vil ikke vare lenge.
Sterke indikatorer kan være en Bayesian Spam Filter's Achilles 'Heel
Et unntak kan oppfattes for at spammere kan jobbe seg gjennom bayesiske filtre selv med deres vanlige innhold. Det er i egenskap av Bayesian statistikk at et ord eller karakteristikk som ofte forekommer i god post, kan være så signifikant at en melding som ser ut som spam, blir vurdert som skinke av filteret.
Hvis spammere finner en måte å fastslå dine e-postord for med sikker brann, ved å bruke HTML-kvitteringer for å se hvilke meldinger du åpnet, for eksempel, kan de inkludere en av dem i søppelpost og nå deg selv gjennom en velkjent e- trent Bayesian filter.
John Graham-Cumming har forsøkt dette ved å la to bayesiske filtre arbeide mot hverandre, den "dårlige" en som tilpasser seg hvilke meldinger som er funnet å komme gjennom det "gode" filteret. Han sier det fungerer, selv om prosessen er tidkrevende og kompleks. Vi tror ikke vi vil se mye av dette, i hvert fall ikke i stor skala, og ikke skreddersydd til enkeltpersoners e-postegenskaper. Spammere kan (forsøke) finne ut noen søkeord for organisasjoner (noe som "Almaden" for noen mennesker på IBM kanskje?) I stedet.
Vanligvis vil spam alltid være (vesentlig) forskjellig fra vanlig post, eller det vil ikke være spam, skjønt.
Bunnlinjen: Bayesian filtrerings styrke kan være dens svakhet
Bayesian spamfiltre erinnholdsbaserte filtre at:
- erspesielt trent til å gjenkjenne den enkelte e-postbrukerens spam og god post, noe som gjør dem svært effektive og vanskelige å tilpasse seg til spammere.
- kan kontinuerlig og uten mye innsats eller manuell analysetilpasse til spammers siste triks.
- ta hensyn til den enkelte brukers gode post og ha en veldiglav grad av falske positiver.
- Dessverre, hvis dette forårsaker blind tillit i Bayesian anti-spam filtre, gjør det detsporadisk feil enda mer alvorlig. Den motsatte effekten avfalske negativer (spam som ser ut akkurat som vanlig post) har potensial til å forstyrre og frustrere brukere.