SMTP Smuggling

Reading time: 3 minutes

tip

Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Μάθετε & εξασκηθείτε στο Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Υποστηρίξτε το HackTricks

Basic Information

Αυτός ο τύπος ευπάθειας ανακαλύφθηκε αρχικά σε αυτή την ανάρτηση όπου εξηγείται ότι είναι δυνατό να εκμεταλλευτεί κανείς τις διαφορές στον τρόπο που ερμηνεύεται το πρωτόκολλο SMTP κατά την ολοκλήρωση ενός email, επιτρέποντας σε έναν επιτιθέμενο να λαθρέψει περισσότερα emails στο σώμα του νόμιμου, επιτρέποντας την ταυτοποίηση άλλων χρηστών του επηρεαζόμενου τομέα (όπως admin@outlook.com) παρακάμπτοντας άμυνες όπως το SPF.

Why

Αυτό συμβαίνει επειδή στο πρωτόκολλο SMTP, τα δεδομένα του μηνύματος που θα σταλεί στο email ελέγχονται από έναν χρήστη (επιτιθέμενο) ο οποίος θα μπορούσε να στείλει ειδικά κατασκευασμένα δεδομένα εκμεταλλευόμενος τις διαφορές στους αναλυτές που θα λαθρέψουν επιπλέον emails στον παραλήπτη. Ρίξτε μια ματιά σε αυτό το εικονογραφημένο παράδειγμα από την αρχική ανάρτηση:

https://sec-consult.com/fileadmin/user_upload/sec-consult/Dynamisch/Blogartikel/2023_12/SMTP_Smuggling-Overview__09_.png

How

Για να εκμεταλλευτεί αυτή την ευπάθεια, ένας επιτιθέμενος πρέπει να στείλει κάποια δεδομένα που ο Outbound SMTP server νομίζει ότι είναι μόνο 1 email αλλά ο Inbound SMTP server νομίζει ότι υπάρχουν αρκετά emails.

Οι ερευνητές ανακάλυψαν ότι διαφορετικοί Inbound servers θεωρούν διαφορετικούς χαρακτήρες ως το τέλος των δεδομένων του μηνύματος email που οι Outbound servers δεν το κάνουν.
Για παράδειγμα, ένα κανονικό τέλος των δεδομένων είναι \r\n.\r. Αλλά αν ο Inbound SMTP server υποστηρίζει επίσης \n., ένας επιτιθέμενος θα μπορούσε απλά να προσθέσει αυτά τα δεδομένα στο email του και να αρχίσει να υποδεικνύει τις εντολές SMTP ενός νέου για να το λαθρέψει όπως στην προηγούμενη εικόνα.

Φυσικά, αυτό θα μπορούσε να λειτουργήσει μόνο αν ο Outbound SMTP server δεν θεωρεί επίσης αυτά τα δεδομένα ως το τέλος των δεδομένων του μηνύματος, γιατί σε αυτή την περίπτωση θα δει 2 emails αντί για 1, οπότε στο τέλος αυτή είναι η αποσυγχρονισμένη κατάσταση που εκμεταλλεύεται αυτή η ευπάθεια.

Πιθανά δεδομένα αποσυγχρονισμού:

  • \n.
  • \n.\r

Σημειώστε επίσης ότι το SPF παρακάμπτεται γιατί αν λαθρέψετε ένα email από admin@outlook.com από ένα email από user@outlook.com, ο αποστολέας είναι ακόμα outlook.com.

References

tip

Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Μάθετε & εξασκηθείτε στο Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Υποστηρίξτε το HackTricks