11 KiB
143,993 - Pentesting IMAP
{% hint style="success" %}
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Check the subscription plans!
- Join the ЁЯТм Discord group or the telegram group or follow us on Twitter ЁЯРж @hacktricks_live.
- Share hacking tricks by submitting PRs to the HackTricks and HackTricks Cloud github repos.
рдЗрдВрдЯрд░рдиреЗрдЯ рд╕рдВрджреЗрд╢ рдкрд╣реБрдВрдЪ рдкреНрд░реЛрдЯреЛрдХреЙрд▓
рдЗрдВрдЯрд░рдиреЗрдЯ рд╕рдВрджреЗрд╢ рдкрд╣реБрдВрдЪ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ (IMAP) рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдХрд┐рд╕реА рднреА рд╕реНрдерд╛рди рд╕реЗ рдЕрдкрдиреЗ рдИрдореЗрд▓ рд╕рдВрджреЗрд╢реЛрдВ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдирд╛ рд╣реИ, рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдЗрдВрдЯрд░рдиреЗрдЯ рдХрдиреЗрдХреНрд╢рди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗред рдореВрд▓ рд░реВрдк рд╕реЗ, рдИрдореЗрд▓ рдПрдХ рд╕рд░реНрд╡рд░ рдкрд░ рдмрдирд╛рдП рд░рдЦреЗ рдЬрд╛рддреЗ рд╣реИрдВ рдмрдЬрд╛рдп рдЗрд╕рдХреЗ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рдП рдФрд░ рдХрд┐рд╕реА рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдЙрдкрдХрд░рдг рдкрд░ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рдПред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЬрдм рдХрд┐рд╕реА рдИрдореЗрд▓ рдХреЛ рдПрдХреНрд╕реЗрд╕ рдпрд╛ рдкрдврд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдпрд╣ рд╕рд░реНрд╡рд░ рд╕реЗ рд╕реАрдзреЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдХреНрд╖рдорддрд╛ рдХрдИ рдЙрдкрдХрд░рдгреЛрдВ рд╕реЗ рдИрдореЗрд▓ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреА рд╕реБрд╡рд┐рдзрд╛ рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИ, рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддреЗ рд╣реБрдП рдХрд┐ рдХрд┐рд╕реА рднреА рдЙрдкрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдкрд░ рдХреЛрдИ рд╕рдВрджреЗрд╢ рдЫреВрдЯ рди рдЬрд╛рдПред
рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, IMAP рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рджреЛ рдкреЛрд░реНрдЯ рдкрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ:
- рдкреЛрд░реНрдЯ 143 - рдпрд╣ рдбрд┐рдлрд╝реЙрд▓реНрдЯ IMAP рдЧреИрд░-рдПрдиреНрдХреНрд░рд┐рдкреНрдЯреЗрдб рдкреЛрд░реНрдЯ рд╣реИ
- рдкреЛрд░реНрдЯ 993 - рдпрд╣ рд╡рд╣ рдкреЛрд░реНрдЯ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЖрдкрдХреЛ IMAP рдХреЛ рд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░рдирд╛ рд╣реИ
PORT STATE SERVICE REASON
143/tcp open imap syn-ack
рдмреИрдирд░ рдЧреНрд░реИрдмрд┐рдВрдЧ
nc -nv <IP> 143
openssl s_client -connect <IP>:993 -quiet
NTLM Auth - рдЬрд╛рдирдХрд╛рд░реА рдХрд╛ рдЦреБрд▓рд╛рд╕рд╛
рдпрджрд┐ рд╕рд░реНрд╡рд░ NTLM рдкреНрд░рдорд╛рдгреАрдХрд░рдг (Windows) рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рддреЛ рдЖрдк рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рдЬрд╛рдирдХрд╛рд░реА (рд╕рдВрд╕реНрдХрд░рдг) рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
root@kali: telnet example.com 143
* OK The Microsoft Exchange IMAP4 service is ready.
>> a1 AUTHENTICATE NTLM
+
>> TlRMTVNTUAABAAAAB4IIAAAAAAAAAAAAAAAAAAAAAAA=
+ TlRMTVNTUAACAAAACgAKADgAAAAFgooCBqqVKFrKPCMAAAAAAAAAAEgASABCAAAABgOAJQAAAA9JAEkAUwAwADEAAgAKAEkASQBTADAAMQABAAoASQBJAFMAMAAxAAQACgBJAEkAUwAwADEAAwAKAEkASQBTADAAMQAHAAgAHwMI0VPy1QEAAAAA
рдпрд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░реЗрдВ nmap рдкреНрд▓рдЧрдЗрди imap-ntlm-info.nse
рдХреЗ рд╕рд╛рде
IMAP рдмреНрд░реВрдЯрдлреЛрд░реНрд╕
рд╕рд┐рдВрдЯреИрдХреНрд╕
IMAP рдХрдорд╛рдВрдб рдХреЗ рдЙрджрд╛рд╣рд░рдг рдпрд╣рд╛рдВ рд╕реЗ:
Login
A1 LOGIN username password
Values can be quoted to enclose spaces and special characters. A " must then be escape with a \
A1 LOGIN "username" "password"
List Folders/Mailboxes
A1 LIST "" *
A1 LIST INBOX *
A1 LIST "Archive" *
Create new Folder/Mailbox
A1 CREATE INBOX.Archive.2012
A1 CREATE "To Read"
Delete Folder/Mailbox
A1 DELETE INBOX.Archive.2012
A1 DELETE "To Read"
Rename Folder/Mailbox
A1 RENAME "INBOX.One" "INBOX.Two"
List Subscribed Mailboxes
A1 LSUB "" *
Status of Mailbox (There are more flags than the ones listed)
A1 STATUS INBOX (MESSAGES UNSEEN RECENT)
Select a mailbox
A1 SELECT INBOX
List messages
A1 FETCH 1:* (FLAGS)
A1 UID FETCH 1:* (FLAGS)
Retrieve Message Content
A1 FETCH 2 body[text]
A1 FETCH 2 all
A1 UID FETCH 102 (UID RFC822.SIZE BODY.PEEK[])
Close Mailbox
A1 CLOSE
Logout
A1 LOGOUT
рд╡рд┐рдХрд╛рд╕
apt install evolution
CURL
рдмреБрдирд┐рдпрд╛рджреА рдиреЗрд╡рд┐рдЧреЗрд╢рди CURL рдХреЗ рд╕рд╛рде рд╕рдВрднрд╡ рд╣реИ, рд▓реЗрдХрд┐рди рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рд╡рд┐рд╡рд░рдг рдореЗрдВ рд╣рд▓реНрдХрд╛ рд╣реИ рдЗрд╕рд▓рд┐рдП рд╕рдЯреАрдХ рд╡рд┐рд╡рд░рдг рдХреЗ рд▓рд┐рдП рд╕реНрд░реЛрдд рдХреА рдЬрд╛рдВрдЪ рдХрд░рдирд╛ рдЕрдиреБрд╢рдВрд╕рд┐рдд рд╣реИред
- рдореЗрд▓рдмреЙрдХреНрд╕ рдХреА рд╕реВрдЪреА рдмрдирд╛рдирд╛ (imap рдХрдорд╛рдВрдб
LIST "" "*"
)
curl -k 'imaps://1.2.3.4/' --user user:pass
- рдПрдХ рдореЗрд▓рдмреЙрдХреНрд╕ рдореЗрдВ рд╕рдВрджреЗрд╢реЛрдВ рдХреА рд╕реВрдЪреА рдмрдирд╛рдирд╛ (imap рдХрдорд╛рдВрдб
SELECT INBOX
рдФрд░ рдлрд┐рд░SEARCH ALL
)
curl -k 'imaps://1.2.3.4/INBOX?ALL' --user user:pass
рдЗрд╕ рдЦреЛрдЬ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд╕рдВрджреЗрд╢ рдЕрдиреБрдХреНрд░рдореЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд╣реИред
рдпрд╣ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдЦреЛрдЬ рд╢рд░реНрддреЗрдВ рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рднреА рд╕рдВрднрд╡ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдореЗрд▓ рдмреЙрдбреА рдореЗрдВ рдкрд╛рд╕рд╡рд░реНрдб рдХреЗ рд╕рд╛рде рдбреНрд░рд╛рдлреНрдЯ рдХреЗ рд▓рд┐рдП рдЦреЛрдЬ рдХрд░рдирд╛:
curl -k 'imaps://1.2.3.4/Drafts?TEXT password' --user user:pass
рдПрдХ рдЕрдЪреНрдЫрд╛ рдЕрд╡рд▓реЛрдХрди рд╕рдВрднрд╛рд╡рд┐рдд рдЦреЛрдЬ рд╢рд░реНрддреЛрдВ рдХрд╛ рдпрд╣рд╛рдБ рд╕реНрдерд┐рдд рд╣реИред
- рдПрдХ рд╕рдВрджреЗрд╢ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдирд╛ (imap рдХрдорд╛рдВрдб
SELECT Drafts
рдФрд░ рдлрд┐рд░FETCH 1 BODY[]
)
curl -k 'imaps://1.2.3.4/Drafts;MAILINDEX=1' --user user:pass
The mail index рд╡рд╣реА рдЗрдВрдбреЗрдХреНрд╕ рд╣реЛрдЧрд╛ рдЬреЛ рдЦреЛрдЬ рдСрдкрд░реЗрд╢рди рд╕реЗ рд╡рд╛рдкрд╕ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдпрд╣ рд╕рдВрджреЗрд╢реЛрдВ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рд▓рд┐рдП UID
(рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЖрдИрдбреА) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рднреА рд╕рдВрднрд╡ рд╣реИ, рд╣рд╛рд▓рд╛рдБрдХрд┐ рдпрд╣ рдХрдо рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЦреЛрдЬ рдХрдорд╛рдВрдб рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдлреЙрд░реНрдореЗрдЯ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП
curl -k 'imaps://1.2.3.4/INBOX' -X 'UID SEARCH ALL' --user user:pass
curl -k 'imaps://1.2.3.4/INBOX;UID=1' --user user:pass
рдпрд╣ рднреА рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдПрдХ рд╕рдВрджреЗрд╢ рдХреЗ рдХреЗрд╡рд▓ рдХреБрдЫ рд╣рд┐рд╕реНрд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ, рдЬреИрд╕реЗ рдкрд╣рд▓реЗ 5 рд╕рдВрджреЗрд╢реЛрдВ рдХрд╛ рд╡рд┐рд╖рдп рдФрд░ рдкреНрд░реЗрд╖рдХ (рд╡рд┐рд╖рдп рдФрд░ рдкреНрд░реЗрд╖рдХ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП -v
рдЖрд╡рд╢реНрдпрдХ рд╣реИ):
$ curl -k 'imaps://1.2.3.4/INBOX' -X 'FETCH 1:5 BODY[HEADER.FIELDS (SUBJECT FROM)]' --user user:pass -v 2>&1 | grep '^<'
рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╢рд╛рдпрдж рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рдлреЙрд░ рд▓реВрдк рд▓рд┐рдЦрдирд╛ рдЕрдзрд┐рдХ рд╕рд╛рдл рд╣реИ:
for m in {1..5}; do
echo $m
curl "imap://1.2.3.4/INBOX;MAILINDEX=$m;SECTION=HEADER.FIELDS%20(SUBJECT%20FROM)" --user user:pass
done
Shodan
port:143 CAPABILITY
port:993 CAPABILITY
HackTricks рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЖрджреЗрд╢
Protocol_Name: IMAP #Protocol Abbreviation if there is one.
Port_Number: 143,993 #Comma separated if there is more than one.
Protocol_Description: Internet Message Access Protocol #Protocol Abbreviation Spelled out
Entry_1:
Name: Notes
Description: Notes for WHOIS
Note: |
The Internet Message Access Protocol (IMAP) is designed for the purpose of enabling users to access their email messages from any location, primarily through an Internet connection. In essence, emails are retained on a server rather than being downloaded and stored on an individual's personal device. This means that when an email is accessed or read, it is done directly from the server. This capability allows for the convenience of checking emails from multiple devices, ensuring that no messages are missed regardless of the device used.
https://book.hacktricks.xyz/pentesting/pentesting-imap
Entry_2:
Name: Banner Grab
Description: Banner Grab 143
Command: nc -nv {IP} 143
Entry_3:
Name: Secure Banner Grab
Description: Banner Grab 993
Command: openssl s_client -connect {IP}:993 -quiet
Entry_4:
Name: consolesless mfs enumeration
Description: IMAP enumeration without the need to run msfconsole
Note: sourced from https://github.com/carlospolop/legion
Command: msfconsole -q -x 'use auxiliary/scanner/imap/imap_version; set RHOSTS {IP}; set RPORT 143; run; exit'
{% hint style="success" %}
рд╕реАрдЦреЗрдВ рдФрд░ AWS рд╣реИрдХрд┐рдВрдЧ рдХрд╛ рдЕрднреНрдпрд╛рд╕ рдХрд░реЗрдВ:HackTricks Training AWS Red Team Expert (ARTE)
рд╕реАрдЦреЗрдВ рдФрд░ GCP рд╣реИрдХрд┐рдВрдЧ рдХрд╛ рдЕрднреНрдпрд╛рд╕ рдХрд░реЗрдВ: HackTricks Training GCP Red Team Expert (GRTE)
HackTricks рдХрд╛ рд╕рдорд░реНрдерди рдХрд░реЗрдВ
- рд╕рджрд╕реНрдпрддрд╛ рдпреЛрдЬрдирд╛рдПрдБ рджреЗрдЦреЗрдВ!
- рд╣рдорд╛рд░реЗ рд╕рд╛рде рдЬреБрдбрд╝реЗрдВ ЁЯТм Discord рд╕рдореВрд╣ рдпрд╛ рдЯреЗрд▓реАрдЧреНрд░рд╛рдо рд╕рдореВрд╣ рдпрд╛ рд╣рдореЗрдВ Twitter ЁЯРж @hacktricks_live** рдкрд░ рдлреЙрд▓реЛ рдХрд░реЗрдВред**
- рд╣реИрдХрд┐рдВрдЧ рдЯреНрд░рд┐рдХреНрд╕ рд╕рд╛рдЭрд╛ рдХрд░реЗрдВ рдФрд░ HackTricks рдФрд░ HackTricks Cloud рдЧрд┐рдЯрд╣рдм рд░рд┐рдкреЛрдЬрд┐рдЯрд░реА рдореЗрдВ PRs рд╕рдмрдорд┐рдЯ рдХрд░реЗрдВред