29.07.2013 Views

Master of Science thesis Fighting Spam

Master of Science thesis Fighting Spam

Master of Science thesis Fighting Spam

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

lov at slippe igennem. Skulle det ske, at en spammail lander på serveren i det meget lille<br />

tidsrum, der går fra filtreringen er afsluttet til proxyprogrammet lader kommandoer fra<br />

klienten slippe igennem til serveren, vil denne modtages af klienten. Dette har en<br />

angriber dog ikke mulighed for at udnytte, da denne aldrig vil kunne vide, hvornår en<br />

klient vælger at se indholdet af sine foldere. En angriber vil derfor ikke kunne time sit<br />

angreb. Af denne grund har vi valgt at se bort fra denne forsvindende risiko. For en god<br />

ordens skyld skal det siges, at dette problem ikke er til stede, når der benyttes POP3.<br />

De indgreb i protokollen, der foretages af proxyprogrammet, sker altså transparent<br />

overfor brugeren (mailklienten). Ovenstående indgreb er samtidig de eneste, der foretages<br />

af proxyprogrammet. Al anden kommunikation får lov at passere uhindret mellem klient<br />

og server. Den samlede funktionalitet af proxyprogrammet vil dermed være transparent<br />

overfor brugeren, også når der kommunikeres med IMAP-servere. Proxyprogrammet<br />

understøtter derfor alle IMAP4-servere og klienter, der overholder retningslinierne<br />

angivet i RFC 3501.<br />

6.9.2 Klientens struktur<br />

Det er nu blevet fastlagt, hvorledes emailhåndtering skal fungere i de pågældende<br />

protokoller. I dette afsnit vil der blive fokuseret på klientapplikationens struktur.<br />

Indkommende og udgående emails håndteres af objekterne IncomingMailProcessor og<br />

OutgoingMailProcessor. Denne centralisering giver en simplere struktur og gør<br />

behandling af email uafhængig af hvilken protokol, der anvendes. For at programmet skal<br />

kunne håndtere forespørgsler i alle protokoller samtidig, skal programmet indeholde tre<br />

proxytråde. Til at sammenbinde alle dele i klientapplikationen haves objektet Control.<br />

Dette objekt er centrum i klientprogrammet og indeholder variable og kontrollen med<br />

andre tråde. På Figur 24 ses programmets interne struktur illustreret.<br />

93

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!