Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

SMTP Sieve Interpreter

Ähnliche Präsentationen


Präsentation zum Thema: "SMTP Sieve Interpreter"—  Präsentation transkript:

1 SMTP Sieve Interpreter
Entwicklung eines Sieve-Interpreters als Studienarbeit Vortrag von Dilyan Palauzov 17. Juli 2007

2 Übersicht Probleme Ziele Idee Vorstellung von Sieve
Implementierungdetails Fazit

3 Spamcop Dynamische Liste von Servern die Spam verschicken
Ein Server taucht in Spamcop auf, wenn er Mails an bestimmten Addressen (honeypots, spamtraps) verschickt, mind. 2x in 24h Mails von spamcop-gelisteten Servern konnten abgelehnt werden, statt akzeptiert und später als Spam bewertet zu werden, wie im Falle @lopez.ru Gegen Spamcop hilft nur Grey-Listing

4 Problem Mailing Listen
MTA Unser MTA wird schwarzgelistet! Alles klar unser MTA Mail Mail endet in einen Spamtrap Mailing Liste Spam Bouncen Der Absender bekommt dies nicht mit Die Mailing Liste will die Mail nicht verteilen! Nachricht vernichten Die Mail verschwindet de facto ohne weiteres

5 Problem Mailing Listen
Löschen der Mail ist keine gute Idee: Der richtige Absender könnte eine falsche Absenderadresse gewählt haben, oder die Nachricht konnte false positive sein. Telekommunikationsgesetz § 107 Nachrichtenübermittlungssysteme mit Zwischenspeicherung (1) 5 Der Diensteanbieter darf Nachrichteninhalte nur entsprechend dem mit dem Teilnehmer geschlossenen Vertrag löschen. Bouncen ist keine gute Idee: Die Mail kann in Spamtrap/Honeypot enden und der bouncing Server wird in Spamcop schwarz-gelistet. Was soll man mit der Nachricht machen?

6 Problem Normale Empfänger
Absender MTA Mail wird als Spam ausgewertet Spam Filter Inbox.Spam Empfänger liest keine Die Mail verschwindet de facto ohne weiteres.

7 Ziele Zuverlässigere Mails Kein de facto verschwinden von Nachrichten
Vermeidung des Auftauchens in schwarzen Listen durch Verminderung der Bounces Verminderung des “false positive” Effekts Erweiterung der Mächtigkeit einer Mailadresse, unabhängig von der Mailbox Software

8 Die Idee Nicht erwünschte s werden vom Server während des SMTP Dialogs abgelehnt, je nach Empfängereinstellungen.

9 Die Idee Zum Problem Mailing Listen: Welche Mails für eine Mailing Liste nicht zulässig sind, kann während des SMTP Dialogs feststellt werden. Die Mails werden abgelehnt und erzeugen später keine Bounces. Zum Problem Normale Empfänger: Der jeweilige Empfänger bestimmt, welche Mails Spam sind. Je nach Benutzereinstellungen werden diese Nachricht abgeleht, ohne zu verschwinden.

10 Was ist Sieve? Von IETF entwickelte Sprache zur Steuerung von eingehenden Mails Je nach Maileigenschaften, kann die Nachricht kopiert, vernichtet, abgelehnt, gebounced, umgeleitet, oder eine Benachrichtigung darüber erzeugt werden. Standardisiert die Vacation/Out-of-office Verfahren Protokoll zum Hochladen von Sieve-Scripten Wird bereits durch Werkzeuge unterstützt.

11 Mail Filters (Milters)
Sieve und Milters SMTP Absender MTA SMTP MTA Wenn ein Milter die Mail nicht akzeptiert: SMTP Reject Virus Scanner Mail Filters (Milters) SPAM Scanner Wenn von allen Miltern OK, dann... Sieve Filter SMTP MTA Empfänger SMTP / LMTP

12 Beispiel Sieve Script für Mailing Liste
require ["reject"]; if header :contains "X-Spam-Level" " " { reject "This message was evaluated as spam and was not delivered, you can contact us via listname- if size :over 1024k { reject "Mails bigger than 1MB are not permitted on this mailing list."; } if (not header :is "From" "maaike", "wiebke", "tobias"]) { reject "You are not allowed to post to this list"; }

13 Sieve Script für Normalen Empfänger
require [“fileinto”, “reject”]; if header :contains “X-Spam-Level” “ ” { refuse “This was evaluated as spam, contact me via if header :contains “X-Spam-Level” “+++++” { fileinto “Spam”; } if header :is “From” notify if header :is “From” { fileinto “Arbeit”; } if header :is “From” { vacation “Mir geht es ganz gut, bin gesund und lerne fleißig”; }

14 Vor- und Nachteile Nachteile
Manche Benutzer werden sich ärgern, dass ihre Mails nicht durchkommen Vorteile Spam-Folder wird unnötig Verringerte Effekte von false positive Mehr Möglichkeiten die Mailbox zu personalisieren, z.B. durch serverseitiges Sortieren

15 Implementierung Wie lehnt man eine Nachricht für mehrere Empfänger während des SMTP Dialogs teilweise ab?

16 Implementierung mittels LMTP
Local Mail Transfer Protocol macht das möglich: C: LHLO server.exampe.com S: 250 OK C: Mail from: S: 250 OK C: Rcpt To: S: 250 OK C: Rcpt To: S: 250 OK C: DATA S: 354 OK C: Das ist alles C: . S: 250-OK S: OK S: 571 Message refused LMTP (RFC 2033) läuft nicht auf Port 25!

17 Implementierung mittels SMTP
C: EHLO server.example.com S: 250 OK C: Mail From: S: 250 OK C: Rcpt To: S: 250 OK C: Rcpt To: S: 451 Please try again later C: DATA S: 354 OK und so weiter... Das wirkt wie Grey-Listing, somit unerwünscht.

18 Implementierung mittels SMTP
C: EHLO server.example.com S: 250 OK C: Mail From: S: 250 OK C: Rcpt To: S: 250 OK C: Rcpt To: S: 250 OK C: DATA S: 354 OK C: Das war es C: . S: 550 Nachricht wird nicht an mailing- geliefert! Es wird nicht gemeldet, dass die Nachricht für your-spamtrap akzeptiert wurde. Wahrscheinlich ist das der richtige Weg.

19 Implementierung mittels PRDR
C: EHLO server.example.com S: 250-PRDR S: 250 OK C: mail from: PRDR S: 250 OK C: Rcpt To: S: 250 OK C: Rcpt To: S: 250 OK C: DATA S: 354 OK C: Das war es C: . S: 353 S: accepts S: refuses S: 250 Data accepted by some recipients SMTP Service Extension for Per-Recipient Data Responses Draft-hall-prdr ist noch in Entwurf.

20 Implementierung Es soll ein Sieve Interpreter programmiert weden, der während des SMTP Dialogs wirkt Als Erweiterung für sendmail/postfix (milter API) Auf Basis von Stone's libsieve2 z.Z nicht thread-safe Alternativ auf Basis von cyrus' libsieve Kein Interpreter, sondern Compiler, thread unsafe Optional: Generieren von Scripten für Mailing Listen

21 Fazit Nachrichten werden abgelehnt, damit
die Server nicht in schwarze Listen geraten kein Spam-Folder notwendig wird Die Entscheidung fällt auf Sieve, da akzeptable Zwischenstufe für alle Mailing Listen zusätzlich auch für normale Benutzer von Vorteil


Herunterladen ppt "SMTP Sieve Interpreter"

Ähnliche Präsentationen


Google-Anzeigen