12 KiB
Εισαγωγή Email
Χρησιμοποιήστε Trickest για να δημιουργήσετε εύκολα και να αυτοματοποιήσετε ροές εργασίας με τα πιο προηγμένα εργαλεία της παγκόσμιας κοινότητας.
Αποκτήστε πρόσβαση σήμερα:
{% embed url="https://trickest.com/?utm_source=hacktricks&utm_medium=banner&utm_campaign=ppc&utm_content=email-injections" %}
Μάθετε το χάκινγκ του AWS από το μηδέν μέχρι τον ήρωα με το htARTE (Ειδικός Κόκκινης Ομάδας AWS του HackTricks)!
Άλλοι τρόποι υποστήριξης του HackTricks:
- Αν θέλετε να δείτε την εταιρεία σας να διαφημίζεται στο HackTricks ή να κατεβάσετε το HackTricks σε μορφή PDF ελέγξτε τα ΣΧΕΔΙΑ ΣΥΝΔΡΟΜΗΣ!
- Αποκτήστε το επίσημο PEASS & HackTricks swag
- Ανακαλύψτε την Οικογένεια PEASS, τη συλλογή μας από αποκλειστικά NFTs
- Εγγραφείτε στη 💬 ομάδα Discord ή στη ομάδα τηλεγραφήματος ή ακολουθήστε μας στο Twitter 🐦 @carlospolopm.
- Μοιραστείτε τα χάκινγκ κόλπα σας υποβάλλοντας PRs στα HackTricks και HackTricks Cloud αποθετήρια του github.
Εισαγωγή σε απεσταλμένο email
Εισαγωγή Cc και Bcc μετά το όρισμα αποστολέα
From:sender@domain.com%0ACc:recipient@domain.co,%0ABcc:recipient1@domain.com
Το μήνυμα θα αποσταλεί στους λογαριασμούς παραλήπτη και παραλήπτη1.
Ενσωμάτωση ορίσματος
From:sender@domain.com%0ATo:attacker@domain.com
Ενσωμάτωση ορίσματος Θέματος
From:sender@domain.com%0ASubject:This is%20Fake%20Subject
Αλλαγή του περιεχομένου του μηνύματος
Εισαγάγετε ένα διπλό αλλαγή γραμμής, στη συνέχεια γράψτε το μήνυμά σας για να αλλάξετε το περιεχόμενο του μηνύματος.
From:sender@domain.com%0A%0AMy%20New%20%0Fake%20Message.
Εκμετάλλευση της συνάρτησης PHP mail()
# The function has the following definition:
php --rf mail
Function [ <internal:standard> function mail ] {
- Parameters [5] {
Parameter #0 [ <required> $to ]
Parameter #1 [ <required> $subject ]
Parameter #2 [ <required> $message ]
Parameter #3 [ <optional> $additional_headers ]
Parameter #4 [ <optional> $additional_parameters ]
}
}
Ο 5ος παράμετρος ($additional_parameters)
Αυτή η ενότητα θα βασιστεί στο πώς να καταχραστεί κάποιος αυτήν την παράμετρο υποθέτοντας ότι ένας επιτιθέμενος την ελέγχει.
Αυτή η παράμετρος θα προστεθεί στη γραμμή εντολών που το PHP θα χρησιμοποιήσει για να καλέσει το δυαδικό sendmail. Ωστόσο, θα γίνει αποσαφήνιση με τη συνάρτηση escapeshellcmd($additional_parameters)
.
Ένας επιτιθέμενος μπορεί να εισάγει εξαγωγή παραμέτρων για το sendmail σε αυτήν την περίπτωση.
Διαφορές στην υλοποίηση του /usr/sbin/sendmail
Η διεπαφή sendmail παρέχεται από το λογισμικό MTA email (Sendmail, Postfix, Exim κλπ.) που είναι εγκατεστημένο στο σύστημα. Αν και η βασική λειτουργικότητα (όπως οι παράμετροι -t -i -f) παραμένει ίδια για λόγους συμβατότητας, άλλες λειτουργίες και παράμετροι διαφέρουν σημαντικά ανάλογα με το MTA που είναι εγκατεστημένο.
Εδώ υπάρχουν μερικά παραδείγματα διαφορετικών σελίδων εγχειριδίων της εντολής/διεπαφής sendmail:
- Sendmail MTA: http://www.sendmail.org/~ca/email/man/sendmail.html
- Postfix MTA: http://www.postfix.org/mailq.1.html
- Exim MTA: https://linux.die.net/man/8/eximReferences
Ανάλογα με την προέλευση του δυαδικού sendmail έχουν ανακαλυφθεί διαφορετικές επιλογές για να τα καταχραστούμε και να διαρρεύσουμε αρχεία ή ακόμα και να εκτελέσουμε αυθαίρετες εντολές. Ελέγξτε πώς στο https://exploitbox.io/paper/Pwning-PHP-Mail-Function-For-Fun-And-RCE.html
Ενσωμάτωση στο όνομα του email
Αγνοημένα μέρη ενός email
Τα σύμβολα: +, - και {} σε σπάνιες περιπτώσεις μπορούν να χρησιμοποιηθούν για ετικετάρισμα και να αγνοηθούν από τους περισσότερους διακομιστές email
Σχόλια μεταξύ παρενθέσεων () στην αρχή ή στο τέλος θα αγνοηθούν επίσης
- Π.χ. john.doe(intigriti)@example.com → john.doe@example.com
Παράκαμψη λευκής λίστας
Εισαγωγικά
IPs
Μπορείτε επίσης να χρησιμοποιήσετε IPs ως ονόματα τομέα μεταξύ αγκύλων:
- john.doe@[127.0.0.1]
- john.doe@[IPv6:2001:db8::1]
Άλλες ευπάθειες
Τρίτο κόμμα SSO
XSS
Μερικές υπηρεσίες όπως github ή salesforce επιτρέπουν τη δημιουργία μιας διεύθυνσης email με XSS payloads. Αν μπορείτε να χρησιμοποιήσετε αυτούς τους παρόχους για να συνδεθείτε σε άλλες υπηρεσίες και αυτές οι υπηρεσίες δεν αποσαφηνίζουν σωστά το email, θα μπορούσατε να προκαλέσετε XSS.
Κατάληψη λογαριασμού
Αν μια υπηρεσία SSO σάς επιτρέπει να δημιουργήσετε ένα λογαριασμό χωρίς επαλήθευση της δοθείσας διεύθυνσης email (όπως salesforce) και στη συνέχεια μπορείτε να χρησιμοποιήσετε αυτόν τον λογαριασμό για σύνδεση σε μια διαφορετική υπηρεσία που εμπιστεύεται την salesforce, θα μπορούσατε να αποκτήσετε πρόσβαση σε οποιονδήποτε λογαριασμό.
Σημειώστε ότι η salesforce υποδεικνύει εάν η δοθείσα email ήταν επαληθευμένη ή όχι, οπότε η εφαρμογή θα πρέπει να λάβει υπόψη αυτήν την πληροφορία.
Απάντηση-Σε
Μπορείτε να στείλετε ένα email χρησιμοποιώντας Από: company.com και Απάντηση-Σε: attacker.com και αν σταλεί οποιαδήποτε αυτόματη απάντηση λόγω του ότι το email στάλθηκε από μια εσωτερική διεύθυνση, ο επιτιθέμενος μπορεί να λάβει αυτήν την απάντηση.
Ρυθμός Σκληρού Αναπηδήματος
Ορισμένες υπηρεσίες, όπως η AWS, εφαρμόζουν ένα κατώτατο όριο γνωστό ως Ρυθμός Σκληρού Αναπηδήματος, συνήθως ορισμένο στο 10%. Αυτό είναι ένα κρίσιμο μετρικό, ειδικά για υπηρεσίες παράδοσης email. Όταν αυτός ο ρυθμός υπερβαίνεται, η υπηρεσία, όπως η υπηρεσία email της AWS, μπορεί να αναστείλει ή να αποκλείσει την αποστολή email σας.
Ένα σκληρό αναπηδητικό αναφέρεται σε ένα email που έχει επιστραφεί στον αποστολέα επειδή η διεύθυνση του παραλήπτη είναι μη έγκυρη ή μη υπάρχουσα. Αυτό μπορεί να συμβεί για διάφορους λόγους, όπως το email να στάλθηκε σε μια μη υπάρχουσα διεύθυνση, ένα τομέα που δεν είναι πραγματικός ή η αρνητική απάντηση του διακομιστή παραλήπτη να δεχτεί τα emails.
Στο πλαίσιο της AWS, αν στείλετε 1000 emails και 100 από αυτά οδηγήσουν σε σκληρά αναπηδήματα (λόγω λανθασμένων διευθύνσεων ή τομέων), αυτό θα σήμαινε έναν ρυθμό σκληρού αναπηδήματος 10%. Η επίτευξη ή υπέρβαση αυτού του ρυθμού μπορεί να ενεργοποιήσει την αποκλεισμό ή την αναστολή της δυνατότητάς σας να στέλνετε email μέσω της AWS SES (Simple Email Service).
Είναι κρίσιμο να διατηρείτε ένα χαμηλό ρυθμό σκληρού αναπηδήματος για να εξασφαλίσετε αδιάκοπη υπηρεσία email και να διατηρήσετε τη φήμη του αποστολέα. Η παρακολούθηση και διαχείριση της ποιότητας των διευθύνσεων email στις λίστες αποστολής σας μπορεί να βοηθήσει σημαντικά στην επίτευξη αυτού.
Για περισσότερες λεπτομερείς πληροφορίες, μπορείτε να ανατρέξετε στην επίσημη τεκμηρίωση της AWS για τη διαχείριση αναπηδήσεων και παραπόνων AWS SES Bounce Handling.
Αναφορές
- https://resources.infosecinstitute.com/email-injection/
- https://exploitbox.io/paper/Pwning-PHP-Mail-Function-For-Fun-And-RCE.html
- https://drive.google.com/file/d/1iKL6wbp3yYwOmxEtAg1jEmuOf8RM8ty9/view
- https://www.youtube.com/watch?app=desktop&v=4ZsTKvfP1g0