Συχνά παρατηρούμε emails που φαίνονται σωστά σταλμένα από τα domains εταιρειών αλλά είναι τελικώς προφανή spams με phising links μέσα σε αυτά. Ποιος όμως φταίει για αυτό και γιατί αυτά τα mails εχουν τα δικά μας στοιχεία και πως φθάνουμε τελικά να τα δεχόμαστε στο mail μας;
`ένα συχνό πρόβλημα από τα mails εταιρειών (@yourbusiness.com) με δικά μας domain είναι πως συχνά γίνονται spoofed. Μιας και τα mails είναι ένα παλιό σύστημα επικοινωνίας (περίπου από τη δεκαετία του 70) , έχουμε προσθέσει διάφορα εργαλεία προστασίας . ένα από αυτά τα εργαλεία είναι το SPF (sender policy framework )
Sender Policy Framework (SPF)
Τι είναι όμως το SPF ; είναι ένα record , δηλαδή ένα κομμάτι κειμένου στα dns settings του domain μας (business.com) που το προστατεύει από το να γίνεται spoofed(κακή χρήση από άλλους). Πολλά spam filters και πολλοί mail servers έχουν αλγορίθμους που σημειώνουν κάθε mail ως επιθυμητό ή μη. Αυτό γίνεται βάσει αυτής της εγγραφής που αναφέραμε πιο πάνω. Το spf ¨μιλάει¨ με το server παραλαβής (πχ gmail) και ουσιαστικά του λέει πως αυτός που κάνει χρήση επιτρέπεται να το κάνει .
Email χωρίς SPF
Τα emails ουσιαστικά επικοινωνούν μέσω δυο mail servers ΄ το δικό σας και των server παραλαβής- το γνωστό πρωτόκολλο SMTP. O δικός σας server δίνει πληροφορίες που θα θέλατε να στείλετε στους παραλήπτες σας. Το πρόβλημα είναι πως ο αποστολέας μπορεί αυθαίρετα να χρησιμοποιήσει οποιαδήποτε διεύθυνση ή όνομα. Θα μπορούσε εύκολα να προσποιηθεί πως είναι η amazon , google ή οποιοδήποτε μεγάλο brand κάνοντας spoofing.
Email με SPF
Όμως με το spf ενεργό , ο παραλήπτης μπορεί να ελέγξει από που έρχεται ουσιαστικά το μήνυμα. Η εγγραφή spf κρατάει μια λίστα από ip διευθύνσεις που επιτρέπεται να στέλνουν μηνύματα για λογαριασμό σας. Απλά αν ο αποστολέας στείλει από μια διεύθυνση που δεν είναι επιτρεπτή , δε θα περάσεις τον έλεγχο spf. Το πως δουλεύει αυτό τεχνικά είναι μια άλλη ιστορία.
Sender Policy Framework RFC
Το πως δουλεύουν οι εγγραφές SPF βρίσκεται στην τεκμηρίωση RFC7208. Η λογική είναι πως η μια πλευρά δημοσιεύει και η άλλη εξουσιοδοτεί την δημοσίευση. Η επικοινωνία γίνεται κυρίως κατά τη διάρκεια της συναλλαγής SMTP, στην οποία ο ένας server προσφέρει ένα mail σε έναν άλλον server. Κατά τη διάρκεια αυτή , ο αποδέκτης server ελέγχει , αξιολογεί και παρέχει ανατροφοδότηση για τον αποστολέα.
Tα 4 βήματα του SPF ( Sender Policy Framework)
Δημοσίευση του SPF record
Το domain αποστολής δημοσιεύει μια εγγραφή spf με τα εξουσιοδοτημένα ip addresses. Αυτές οι διευθύνσεις επιτρέπεται να στείλουν emails εκπροσωπώντας το συγκεκριμένο domain. Κατά τη διάρκεια της συναλλαγής, τα ονόματα ¨HELO¨ και “mail from” είναι οι δυο χαιρετισμοί που αναγνωρίζονται
Εξουσιοδότηση μέσα από το SPF record
Σύμφωνα με το RFC, ο παραλήπτης θα πρέπει να ελέγξει την διαθεσιμότητα του spf. Κατά τη διάρκεια του ελέγχου τα δυο αναγνωριστικά διαβάζονται. Αυτά καθορίζουν αν ο αποστολέας είναι εξουσιοδοτημένος και έτσι μπορεί να στείλει . Η σειρά ελέγχου αρχίζει με το ¨HELLO¨(smtp.domain.com) και αν είναι οκ δε χρειάζεται περαιτέρω έλεγχος. Αν όμως δε μπορεί να ελεγχθεί, τότε συνεχίζουμε στο ¨MAIL FROM ¨(info@domain.com) που είναι και πιο δύσκολο να ελεγχθεί
Αξιολόγηση του SPF record
Πως γίνεται όμως η αξιολόγηση ; ο mail server δίνει απαντήσεις ως εξής :
- None: no SPF record or no valid DNS domain was found during the SMTP transaction;
- Neutral: no check could be done on whether the sending IP address is authorized;
- Pass: indicates that the sender is authorized;
- Fail: suggests that the sender is not allowed;
- Softfail: a mitigated fail because no firm policy could be found in the SPF record;
- Temperror: temporary connection error to DNS could be fixed in the second attempt.
- Permerror: domain could not be interpreted correctly. Requires the DNS administrator of the sender to correct the problem.
Φυσικά η αξιολόγηση έχει να κάνει πάντα με τις πολιτικές του εξυπηρετητή . Κάποιοι δίνουν μεγάλη σημασία στο spf αρχείο ενώ άλλοι λιγότερο.
Ανατροφοδότηση
Έτσι τελικά το αρχείο spf ελέγχεται και αξιολογείται από τον server, το email περνάει ή μπλοκάρεται. Αν περάσει ο εξυπηρετητής θα επικοινωνήσει το ¨delivered¨ ενώ αν αποτύχει ο εξυπηρετητής έχει δυο επιλογές :
- Δίνει ένα προσωρινό error έτσι ώστε να ξέρει ο αποστολέας εξυπηρετητής πως το μήνυμα δε χρειάζεται να σταλεί ξανά (rejection) ή πως υπάρχει προσωρινό πρόβλημα και θα πρέπει να γίνει επαναπροώθηση (try again later)
- Ή άλλη λύση που βλέπουμε συχνά είναι πως το μήνυμα περνάει και παραδίδεται (delivered) αλλά δημιουργείται ένας header με ένδειξη πως το μήνυμα είναι ύποπτο, π.χ spam flag
Μία στοιχείώδη εξήγηση του SPF
Πολύ απλά και κατανοητά , το spf record είναι μια συλλογή από ip διευθύνσεις που επιτρέπουν την αποστολή emails εκπροσωπώντας το domain μας. Αυτές οι διευθύνσεις είναι συχνά συνδεδεμένες με λογισμικό αποστολής mail – crm ERP κλπ. Με αυτά τα records κατευθύνεις και της επόμενες κινήσεις ενός εξυπηρετητή παραλαβής όταν αποτυγχάνει να περάσει ο έλεγχος παράδοσης. Όταν λοιπόν το spf record είναι στημένο σωστά, τότε αποτελεί το πρώτο από τους 3 τρόπους αυθεντικοποίησης έτσι ώστε να προστατεύσει το domain σας από παραβιάσεις και να αυξήσει τη δημοτικότητα του ανάμεσα στους παρόχους inbox