Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
Go365 — Uma ferramenta de ataque a usuários do Office365 | Kitploit
Ferramentas/GitHubGitHub/optiv/go365
Ataques de SenhaColeta de InformaçõesTestes de PenetraçãoAutenticação
GitHuboptiv/go365

Go365

Uma ferramenta de ataque a usuários do Office365

Ver Repositório
652102há 4 anosRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Go365 v2.0

  • Corrigidos problemas com o gateway AWS (obrigado h0useh3ad!)
  • Não morre mais quando as conexões do servidor proxy falham
  • Adicionado o endpoint graph

Por favor, leia todo este README antes de usar o Go365!

Go365 é uma ferramenta projetada para realizar enumeração de usuários* e ataques de adivinhação de senhas em organizações que usam Office365 (agora/em breve Microsoft365). Go365 usa um endpoint único da API SOAP em login.microsoftonline.com que a maioria das outras ferramentas não usa. Quando consultado com um endereço de e-mail e senha, o endpoint responde com um código de Autenticação e Autorização do Azure AD. Esse código é então processado pelo Go365 e o resultado é exibido na tela ou em um arquivo de saída.

* A enumeração de usuários é realizada em conjunto com uma tentativa de adivinhação de senha. Portanto, não há uma flag ou funcionalidade específica para realizar apenas a enumeração de usuários. Em vez disso, realize seu primeiro ataque de adivinhação de senha e então analise os resultados para encontrar usuários válidos.

Leia estes três tópicos!
  • Esta ferramenta pode não funcionar em todos os domínios que usam o365. Testes mostram que funciona com a maioria dos domínios federados. Alguns domínios reportarão apenas usuários válidos, mesmo que uma senha válida também seja fornecida. Seus resultados podem variar!
  • Os domínios nos quais esta ferramenta foi testada mostraram que ela não bloqueou contas após múltiplas falhas de senha. Seus resultados podem variar!
  • Esta ferramenta destina-se a ser usada por profissionais de segurança autorizados a "atacar" a instância o365 da organização alvo.

Obtendo

Opção 0

Baixe um binário pré-compilado para seu SO AQUI.

Opção 1

Baixe o código-fonte e compile localmente.

  1. Instale o Go.
  2. Clone o repositório.
  3. Navegue até o repositório e compile, seu bobalhão.
root@kitploit:~
go build Go365.go
  1. Execute o binário resultante

Usage

root@kitploit:~
$ ./Go365

  ██████         ██████   ██████  ██████
 ██                   ██ ██       ██
 ██  ███   ████   █████  ███████  ██████
 ██    ██ ██  ██      ██ ██    ██      ██
  ██████   ████  ██████   ██████  ██████

 Version: 2.0
 Authors: paveway3, h0useh3ad, S4R1N, EatonChips

Usage:

  -h                            Shows this stuff


  Required - Endpoint:

    -endpoint [rst or graph]    Specify which endpoint to use
                                : (-endpoint rst)   *Classic Go365!* login.microsoftonline.com/rst2.srf. SOAP XML request with XML response
                                : (-endpoint graph)  login.microsoft.com/common/oauth2/token. HTTP POST request with JSON Response

  Required - Usernames and Passwords:

    -u <string>                 Single username to test
                                : Username with or without "@domain.com"
                                : Must also provide -d flag to specify the domain
                                : (-u [email protected])

    -ul <file>                  Username list to use (overrides -u)
                                : File should contain one username per line
                                : Usernames can have "@domain.com"
                                : If no domain is specified, the -d domain is used
                                : (-ul ./usernamelist.txt)

    -p <string>                 Password to attempt
                                : Enclose in single quotes if it contains special characters
                                : (-p password123)  or  (-p 'p@s$w0|2d')

    -pl <file>                  Password list to use (overrides -p)
                                : File should contain one password per line
                                : -delay flag can be used to include a pause between each set of attempts
                                : (-pl ./passwordlist.txt)

    -up <file>                  Userpass list to use (overrides all the above options)
                                : One username and password separated by a ":" per line
                                : Be careful of duplicate usernames!
                                : (-up ./userpasslist.txt)

  Required/Optional - Domain:

    -d <string>                 Domain to test
                                : Use this if the username or username list does not include "@targetcompany.com"
                                : (-d targetcompany.com)

  Optional:

    -w <int>                    Time to wait between attempts in seconds.
                                : Default: 1 second. 5 seconds recommended.
                                : (-w 10)

    -delay <int>                Delay (in seconds) between sprays when using a password list.
                                : Default: 60 minutes (3600 seconds) recommended.
                                : (-delay 7200)

    -o <string>                 Output file to write to
                                : Will append if file exists, otherwise a file is created
                                : (-o ./Go365output.out)

    -proxy <string>             Single SOCKS5 proxy server to use
                                : IP address and Port separated by a ":"
                                : SOCKS5 proxy
                                : (-proxy 127.0.0.1:1080)

    -proxyfile <string>         A file with a list of SOCKS5 proxy servers to use
                                : IP address and Port separated by a ":" on each line
                                : Randomly selects a proxy server to use before each request
                                : (-proxyfile ./proxyfile.txt)

    -url <string>               Endpoint to send requests to
                                : Amazon API Gateway 'Invoke URL'
                                : Highly recommended that you use this option. Google it, or
                                : check this out: https://bigb0sss.github.io/posts/redteam-rotate-ip-aws-gateway/
                                : (-url https://notrealgetyourown.execute-api.us-east-2.amazonaws.com/login)

    -debug                      Debug mode.
                                : Print xml response

Examples

root@kitploit:~
  ./Go365 -endpoint rst -ul ./user_list.txt -p 'coolpasswordbro!123' -d pwnthisfakedomain.com
  ./Go365 -endpoint graph -ul ./user_list.txt -p 'coolpasswordbro!123' -d pwnthisfakedomain.com -w 5
  ./Go365 -endpoint rst -up ./userpass_list.txt -delay 3600 -d pwnthisfakedomain.com -w 5 -o Go365output.txt
  ./Go365 -endpoint graph -u legituser -p 'coolpasswordbro!123' -d pwnthisfakedomain.com -w 5 -o Go365output.txt -proxy 127.0.0.1:1080
  ./Go365 -endpoint rst -u legituser -pl ./pass_list.txt -delay 1800 -d pwnthisfakedomain.com -w 5 -o Go365output.txt -proxyfile ./proxyfile.txt
  ./Go365 -endpoint graph -ul ./user_list.txt -p 'coolpasswordbro!123' -d pwnthisfakedomain.com -w 5 -o Go365output.txt -url https://notrealgetyourown.execute-api.us-east-2.amazonaws.com/login

  You can even schedule out your entire password guessing campaign using the -pl and -delay flags :)
  ./Go365 -endpoint rst -ul ./user_list.txt -d pwnthisfakedomain.com -w 5 -o Go365output.txt -url https://notrealgetyourown.execute-api.us-east-2.amazonaws.com/login -proxyfile listofprox.txt -pl listofpasswords.txt -delay 7200

  *Protip: If you get a lot of "Account locked out" responses, then you might wanna proxy or use an AWS Gateway.

Conta Bloqueada! (Defesas de Domínio)

dica profissional: Você provavelmente não está realmente bloqueando contas.

Após um certo número de consultas contra um domínio alvo, os resultados podem começar a reportar que as contas estão bloqueadas.

Uma vez que essa defesa é acionada, a enumeração de usuários se torna não confiável, pois requisições para usuários válidos e inválidos reportarão aleatoriamente que suas contas foram bloqueadas.

root@kitploit:~
...
[-] User not found: [email protected]
[-] User not found: [email protected]
[-] Valid user, but invalid password: [email protected]
[!] Account Locked Out: [email protected]
[-] Valid user, but invalid password: [email protected]
[!] Account Locked Out: [email protected]
[!] Account Locked Out: [email protected]
[-] Valid user, but invalid password: [email protected]
[-] Valid user, but invalid password: [email protected]
[!] Account Locked Out: [email protected]
...

Este é um mecanismo defensivo acionado pelo número de consultas de usuários válidos contra o domínio alvo dentro de um certo período de tempo. O número de tentativas e o período de tempo variarão dependendo do domínio alvo, pois os limites podem ser personalizados pela organização alvo.

Contornando Defesas

Tempo de espera

O mecanismo defensivo é baseado em tempo e endereço IP. Go365 oferece opções para incluir um tempo de espera entre as requisições e opções de proxy para distribuir a origem das requisições. Para contornar os mecanismos defensivos em seu domínio alvo, use um tempo de espera longo e vários servidores proxy.

Recomenda-se um tempo de espera de PELO MENOS 15 segundos. -w 15

Proxies SOCKS5

Se você ainda receber respostas de "conta bloqueada", comece a usar proxies em suas requisições. As opções de proxy foram testadas apenas em proxies dinâmicos SSH SOCKS5 (ssh -D <port> user@proxyserver)

Crie vários proxies SOCKS5 no DO, AWS, Vultr ou qualquer outro e crie um arquivo que se pareça com isso:

root@kitploit:~
127.0.0.1:8081
127.0.0.1:8082
127.0.0.1:8083
127.0.0.1:8084
127.0.0.1:8085
127.0.0.1:8086
...

A ferramenta irá iterar aleatoriamente pelos servidores proxy fornecidos e esperar o tempo especificado entre as requisições.

-w 15 -proxyfile ./proxies.txt

Amazon API Gateway

Além disso, uma URL de endpoint pode ser especificada para que esta ferramenta possa interagir com o Amazon API Gateway. Configure um gateway para apontar para o endpoint https://login.microsoftonline.com/rst2.srf, então defina o parâmetro -url para a Invoke URL fornecida. Seu IP deve ser rotacionado a cada requisição.

-url https://justanexample.execute-api.us-east-2.amazonaws.com/login

Baixar ferramenta