---------- Forwarded message ---------- From: Filippos Georgiadis <f [ dot ] georgiadis [ at ] gmail [ dot ] com> Date: 2009/2/16 Subject: Sendmail milter για τον δυναμικό έλεγχο των διευθύνσεων αποστολέα που επιτρέπεται να χρησιμοποιηθούν από τον χρήστη To: info [ at ] ellak [ dot ] gr =============================================== ΤΙΤΛΟΣ: Sendmail milter για τον δυναμικό έλεγχο των διευθύνσεων αποστολέα που επιτρέπεται να χρησιμοποιηθούν από τον χρήστη =============================================== Περίληψη: Το SMTP πρωτόκολλο εγγενώς δεν παρέχει κανένα μηχανισμό που να ελέγχει αν ο αποστολέας εξουσιοδοτείται να χρησιμοποιήσει μια συγκεκριμένη διεύθυνση ηλεκτρονικού ταχυδρομείου (email) ή μια συγκεκριμένη περιγραφή που να συνοδεύει αυτή. Η αδυναμία αυτή του πρωτοκόλλου δημιουργεί ιδιαίτερο πρόβλημα σε εταιρικά περιβάλλοντα που εφαρμόζουν ελέγχους στην εξερχόμενη email κίνηση και κανόνες στη χρήση της υπηρεσίας για την αποφυγή φαινομένων πλαστοπροσωπείας (impersonation, spoofing) [1]_. Στο πλαίσιο της πρότασης αυτής προτείνεται η ανάπτυξη ενός milter φίλτρου που θα δίνει τη δυνατότητα στο SendMail ΜΤΑ ή άλλους συμβατούς ΜΤΑs να ελέγχουν δυναμικά αν ο αποστολέας επιτρέπεται να χρησιμοποιήσει μια συγκεκριμένη διεύθυνση ή ονοματεπώνυμο. Οι έλεγχοι αυτοί θα βασίζονται στο προφίλ του αποστολέα όπως αυτό προκύπτει από την υπηρεσία καταλόγου χρηστών της επιχείρησης ή του οργανισμού. Ιστορικό -------- Μέχρι πρόσφατα το ποσοστό των εγκαταστάσεων της υπηρεσίας email που υποστήριζαν μηχανισμούς πιστοποίησης του αποστολέα ήταν πολύ μικρό. Αυτό εν μέρει οφείλονταν στο ότι τα σχετικά πρότυπα (RFCs 2554, 2476) άργησαν να ενσωματωθούν στους πιο διαδεδομένους MTAs αλλά και στη μικρή -μέχρι τότε- έκταση του φαινομένου της εξερχόμενης ανεπιθύμητης αλληλογραφίας. Δεδομένου λοιπόν ότι η ΙP του σταθμού εργασίας που στέλνει το email ήταν η μόνη αξιόπιστη πληροφορία δεν υπήρχε δυνατότητα ουσιαστικών ελέγχων. Ωστόσο με τη διάδοση των μηχανισμών SMTP authentication η γνώση της ταυτότητας του αποστολέα καθιστά την δυνατότητα προσωποποιημένης πρόσβασης εφικτή. Στόχοι ------ Οι επιθυμητοί στόχοι από την υλοποίηση της παρούσας πρότασης είναι: 1. Ο περιορισμός των φαινομένων πλαστοπροσωπίας όπου αυτό απαιτείται με εύκολο και αξιόπιστο τρόπο 2. Η αποτροπή της εξερχόμενης ανεπιθύμητης (outgoing spam) και η συμβολή στη συνολική προσπάθεια μείωσης της διακινούμενης ανεπιθύμητης αλληλογραφίας. Η προτεινόμενη λύση θα σχεδιασθεί και υλοποιηθεί σε γλώσσα προγραμματισμού C με τη μορφή ενός milter module που να ελέγχει και να διορθώνει λάθη στα πεδία 1. Envelope From Address 2. Header From Address 3. Header Reply-To Address 4. Header Sender Address Οι έλεγχοι αυτοί θα γίνονται δυναμικά κατά την αποστολή των μηνυμάτων (mail submission) λαμβάνοντας υπόψη κατάλληλα πεδία της υπηρεσίας καταλόγου (ldap attributes) στην εγγραφή του χρήστη. Τα πεδία αυτά θα προσδιορίζουν τις επιτρεπόμενες τιμές για ονοματεπώνυμο και τις επιτρεπόμενες email διευθύνσεις που μπορεί να χρησιμοποιήσει ο πιστοποιημένος χρήστης. Έτσι για παράδειγμα η παρακάτω αντιστοίχιση θα μπορεί να χρησιμοποιηθεί: Πλήρες Όνομα – CN (Common Name) Email Address – mail,mailAlternate Ειδική πρόβλεψη θα υπάρχει για μη προσωπικές διευθύνσεις όπου περισσότεροι από ένας λογαριασμοί εξουσιοδοτούνται να χρησιμοποιήσουν "My Company Sales Dept" <sales [ at ] mycompany [ dot ] gr> "Υποστήριξη Πελατών" <support [ at ] mycompany [ dot ] gr> Για τις περιπτώσεις αυτές το φίλτρο θα λαμβάνει υπόψη ένα ειδικό ldap attribute στο object των χρηστών (πχ mailAuthorized) στο οποίο θα καταγράφονται οι επιπλέον διευθύνσεις που ο χρήστης επιτρέπεται να χρησιμοποιεί λόγω ιδιότητας. Παραδοτέα --------- Με την ολοκλήρωση της λογισμικού θα δοθούν τα παρακάτω παραδοτέα: - Κώδικας σε C κατά τα πρότυπα Literate programming [2]_ [3]_ - Public repo με τον κώδικα στο sourceforge.net ή αντίστοιχο - Τεκμηρίωση λύσης, αρχιτεκτονική λύσης - Οδηγίες εγκατάστασης σε τελευταία έκδοση του SendMail ΜΤΑ - Εκτελέσιμο για Linux και AIX. Χρονοδιάγραμμα -------------- Παρακάτω δίνεται το χρονοδιάγραμμα υλοποίησης της λύσης, σε ημερολογιακές ημέρες από την αρχή των εργασιών. Ορόσημα εξέλιξης της υλοποίησης (milestones): - Σχεδιασμός της λύσης,10 ημέρες - Πρώτη δοκιμαστική έκδοση (alpha release), 50 ημέρες - Δοκιμαστική πλήρης έκδοση πλήρους (beta release),70 ημέρες - Τελική έκδοση, 80 ημέρες Ακολουθεί το ακριβές χρονοδιάγραμμα: - 0-5 : Ανάρτηση του project σε code hosting repository - 0-5 : Εγκατάσταση πεδίου δοκιμών - 0-10 : Σχεδιασμός λύσης, ολοκλήρωση αρχιτεκτονικής - 10-30 : Κώδικας διεπαφής με ldap - 10-30 : Κώδικας διεπαφής με sendmail/libmilter API - 30-60 : Κώδικας ελέγχων, ολοκλήρωση των βασικών λειτουργιών - 60-80 : Έξυπνες συγκρίσεις για ονοματεπώνυμο (lexicographic distance) [4]_ - 80-85 : Ολοκλήρωση τεκμηρίωσης - 85-90 : Υλικό δημοσίευσης, παρουσίασης λύσης Γιατί εμένα ----------- Η ομάδα υλοποίησης έχει πολυετή εμπειρία σε προγραμματισμό συστημάτων unix και σε πολύνηματικό προγραμματισμό (multithreaded). Επιπλέον λόγω και του αντικειμένου εργασίας έχει βαθιά γνώση σε θέματα ασφάλειας συστημάτων και υπηρεσιών, καθώς και γνώση των προκλήσεων και των απαιτήσεων που προκύπτουν σε εταιρικά περιβάλλοντα. Η ομάδα εργασίας αποτελείται από τους 1. Φίλιππο Γεωργιάδη -------------------- Διεύθυνση κατοικίας: Λαμίας 39, 165 61 Άνω Γλυφάδα Τηλέφωνο: 210 9621871 ΑΦΜ & ΔOY: 116293754, Δ.Ο.Υ.: Γλυφάδας 2. Χρήστο Σούλιο ---------------- Διεύθυνση κατοικίας: Ευλαμπίας 35, Ίλιον 131 22 Τηλέφωνο: 210 61 46 068 ΑΦΜ & ΔOY: 103766352 ΔΟΥ: Ιλίου Αναφορές -------- .. [1] E-mail spoofing. 5 Φεβρουαρίου 2009, 21:22 UTC. Στην αγγλική Wikipedia. Διαθέσιμο από: http://en.wikipedia.org/wiki/E-mail_spoofing .. [2] Literate Programming. 11 Φεβρουαρίου 2009, 20:21 UTC. Στην αγγλική Wikipedia. Διαθέσιμο από:http://en.wikipedia.org/wiki/Literate_programming .. [3] Literate programming using noweb. Linux Journal, 64-69, Οκτώβριος 1997. Διαθέσιμο από: http://members.shaw.ca/andrew-johnson/noweb_lj.pdf .. [4] Lexicographic codes: Error-correcting codes from game theory, Conway, J. Sloane, N. Εμφανίζεται στο:Information Theory, IEEE Transactions on; Τόμος 32, Τεύχος 3, Μάϊος 1986 Σελίδες:337 – 348; Διαθέσιμο από: http://ieeexplore.ieee.org/search/srchabstract.jsp?arnumber=1057187&isnumber=22754&punumber=18&k2dockey=1057187@ieeejrns&query=%28%28lexicographic+code%29%3Cin%3Emetadata+%29&pos=3 -- Πριν εκτυπώσετε αυτό το μήνυμα, σκεφθείτε το περιβάλλον! Ένα χαρτί λιγότερο! - http://karounos.gr/blog/
Attachment:
Curriculum Vitae (Georgiadis Filippos).pdf
Description: Adobe PDF document
Attachment:
Curriculum Vitae (Soulios Christos).doc
Description: MS-Word document