Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
工具/GitHubGitHub/alteredsecurity/365-stealer
钓鱼攻击渗透测试云安全红队
GitHubalteredsecurity/365-stealer

365-Stealer

自动执行针对Azure/O365租户的非法同意授权攻击,窃取刷新令牌、外泄电子邮件/OneDrive数据,并通过CLI和Web管理门户创建恶意Outlook规则。

查看仓库
58411136个月前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

365-Stealer

365-Stealer

目录

  • 关于365-Stealer
  • 关于非法同意授权攻击
  • 365-Stealer的主要功能
  • 搭建攻击环境
    • 自动Azure应用注册
    • 手动Azure应用注册
    • 配置应用程序
      • 创建客户端密钥
      • 添加API权限
  • 设置365-Stealer
    • 在Apache服务器上启用SQLite3
  • 配置365-Stealer管理门户
    • 修改路径
    • 为365-Stealer管理门户启用IP白名单
  • OPSEC注意事项
  • 命令行帮助
  • 博客
  • Bug报告与功能请求
  • 贡献

关于

365-Stealer 是一个基于Python3的工具,旨在自动化非法同意授权攻击。当目标用户无意中授予攻击者应用程序权限时,攻击者即可获取受害者的刷新令牌。此刷新令牌随后可用于生成其他令牌,使攻击者能够访问敏感数据,如电子邮件、OneDrive中的文件以及笔记——无需受害者进一步操作。手动利用此漏洞可能耗时,但365-Stealer简化并自动化了这一过程。

365-Stealer提供两种界面:

  1. CLI(命令行界面) - 完全使用Python3构建,可直接访问工具的各项功能。
  2. Web UI(Web用户界面) - 使用PHP开发,Python3在后台执行命令。

理解非法同意授权攻击

非法同意授权攻击是指攻击者在Azure中注册一个恶意应用程序,请求访问敏感数据,如联系人、电子邮件或文档。攻击者通常以合法应用程序的面貌欺骗用户同意授权。一旦受害者点击“接受”,便无意中向攻击者授予了访问权限,攻击者即可代表受害者执行操作,而无需获取受害者的组织凭据。

更明确地说,一旦用户授予权限,Entra ID会向攻击者的服务器发送一个令牌。该令牌使攻击者能够读取邮件、发送邮件、访问OneDrive中的文件,以及利用受害者的凭据执行其他恶意活动。与依赖窃取密码的钓鱼攻击不同,非法同意授权攻击通过滥用云应用程序的权限系统完全绕过了身份验证。

365-Stealer的主要功能

  • 窃取刷新令牌: 该工具从受害者处捕获刷新令牌,这些令牌可用于生成新的访问令牌,有效期为至少90天,从而持续访问其账户。
  • 代受害者发送邮件: 365-Stealer可以在受害者不知情的情况下,从其账户向其他用户发送带附件的邮件。
  • 创建恶意Outlook规则: 该工具可以在受害者的Outlook中创建有害规则,例如将所有收到的邮件转发到攻击者控制的邮箱。
  • 上传文件到OneDrive: 该工具可以将任何文件上传到受害者的OneDrive账户。
  • 从OneDrive、OneNote和邮件中窃取数据: 365-Stealer可以从OneDrive、OneNote中提取文件,并转储受害者账户中的所有邮件(包括附件)。
  • 管理被盗数据: 365-Stealer管理门户允许攻击者管理所有被入侵的数据,包括刷新令牌、邮件、文件和用户信息。
  • 后门OneDrive文档: 该工具可以通过注入恶意宏并将文件扩展名替换为.doc来后门OneDrive中的.docx文件。
  • 存储被入侵数据: 所有收集到的信息,如刷新令牌、邮件、文件、受害者租户的用户数据以及配置,都存储在数据库中。
  • 可自定义的数据窃取延迟: 攻击者可以指定延迟时间(秒)以避免在窃取数据时被发现。
  • 托管钓鱼应用程序: 该工具可以通过终端中的--run-app命令或通过365-Stealer管理门户托管一个虚假应用程序,用于执行非法同意授权攻击。
  • 选择性令牌窃取: 使用--no-stealing标志,该工具可以仅窃取令牌而不执行进一步操作,允许攻击者稍后利用这些令牌。
  • 请求新的访问令牌: 该工具允许攻击者为被入侵租户中的所有用户或特定用户请求新的访问令牌。
  • 使用凭据生成访问令牌: 通过--refresh-token、--client-id和--client-secret标志,攻击者可以轻松获取新的访问令牌。
  • 自动化Azure应用注册: --app-registration标志自动化了Azure应用注册过程,无需手动干预即可轻松搭建攻击基础设施。
  • 选择性数据窃取: 使用--custom-steal标志,攻击者可以选择性地从特定来源(如OneDrive、Outlook等)窃取数据。
  • 共享数据: 所有被入侵的数据都保存在一个database.db文件中,可以与我们团队共享,以利用现有的被盗令牌和数据。

搭建攻击环境

自动Azure应用注册

要使用提供的Python脚本自动在Azure中注册应用程序,请按照以下步骤操作:

  1. 确保您的机器上已安装Python3。

  2. 克隆365-Stealer仓库:

    root@kitploit:~
    git clone https://github.com/AlteredSecurity/365-Stealer.git
    cd 365-Stealer
    
  3. 安装所需的Python模块:

    root@kitploit:~
    pip install -r requirements.txt
    
  4. 运行自动Azure应用注册脚本:

    root@kitploit:~
    python 365-Stealer.py --app-registration
    
  • 脚本将提示您提供Azure租户ID、应用程序名称以及重定向URI。
  • 您还需要选择认证方式(OAuth与客户端密钥或设备代码流)并设置API权限(默认为LowImpact或自定义权限)。
  • 按照提示完成应用注册过程。

手动Azure应用注册

如果您更喜欢手动注册Azure应用程序,请按照以下步骤操作:

  1. 登录Azure门户: 访问 https://portal.azure.com 并使用您的账户登录。
  2. 导航到Microsoft Entra ID: 在门户中,导航到Microsoft Entra ID。
  3. 进入应用注册: 在左侧菜单中单击应用注册。
  4. 创建新注册: 单击新注册开始注册新应用程序。
  5. 提供应用程序详细信息:
    • 名称: 为您的应用程序输入一个名称。此名称将在同意过程中显示给用户。
    • 支持的账户类型: 选择任何组织目录中的账户(任何Microsoft Entra ID租户 - 多租户)。
  6. 设置重定向URI:
    • 提供指向您365-Stealer钓鱼页面的重定向URI。格式应为 https://<域名/IP>:<端口>/login/authorized,其中您的域名或IP对应您将托管365-Stealer应用程序的位置。
  7. 完成注册:
    • 输入所有详细信息后,单击注册以创建应用程序。

应用注册 应用注册

配置应用程序

创建客户端密钥

  1. 导航到证书和密钥:
    • 在Azure门户中,进入注册应用程序下的证书和密钥部分。
  2. 创建新的客户端密钥:
    • 单击新客户端密钥,提供密钥描述,然后单击添加。
  3. 保存密钥值:
    • 创建后,复制密钥值并保存在安全位置,因为离开页面后将无法再次检索。
客户端密钥

添加API权限

  1. 转到API权限:
    • 在Azure门户中,单击应用程序下的API权限选项卡。
  2. 添加权限:
    • 单击添加权限以开始选择必要的权限。
  3. 选择Microsoft Graph:
    • 在可用的API下,选择Microsoft Graph。
  4. 选择委托权限:
    • 下一步中,单击委托权限以分配将代表已登录用户操作的权限。
  5. 选择所需权限:
    1. Contacts.Read
    2. Mail.Read
    3. Notes.Read.All
    4. Mailboxsettings.ReadWrite
    5. Files.ReadWrite.All
    6. Mail.Send
    7. User.ReadBasic.All
客户端密钥

设置365-Stealer

分步说明

  1. 克隆365-Stealer仓库:

    git clone https://github.com/AlteredSecurity/365-Stealer.git

  2. 安装所需应用程序:

    Python3

    XAMPP

  3. 解压并保存文件:

    • 克隆后,复制365-Stealer文件夹并将其放置在C:\xampp\htdocs\中,这样您可以托管PHP应用程序并运行Python。
  4. 安装Python依赖: 运行以下命令以安装必要的Python库。

    root@kitploit:~
    cd C:\xampp\htdocs\365-Stealer
    pip install -r requirements.txt
    
  5. 遵循其他设置说明: 安装所需应用程序和依赖后,请确保遵循yoursVictims/Readme.md文件中的说明。这将指导您设置365-Stealer正常运行所需的数据库和表。

配置365-Stealer管理门户

修改路径

  1. 调整脚本路径:

    • 如有必要,请在C:/xampp/htdocs/yourvictims/下的index.php文件中修改365-Stealer.py、数据库和python3的路径。
管理配置
  1. 处理文件路径中的空格:

    • 如果Python安装在包含空格的目录中(例如“Program Files”),请确保将路径用引号括起来。例如: "C:/Program Files/Python/python.exe"
管理配置

为365-Stealer管理门户启用IP白名单

  1. 默认白名单:

    • 默认情况下,IP白名单已启用,管理门户仅可从本地主机访问。
  2. 添加远程IP:

    • 如果要允许从远程IP访问,可以在配置中添加所需的IP地址。
  3. 禁用IP白名单:

    • 如果要完全禁用IP白名单,请在配置文件中设置$enableIpWhiteList = false;。
管理配置

OPSEC注意事项

访问限制: 出于安全考虑,请始终将365-Stealer管理门户的访问限制在您控制的基础设施内。

避免公开暴露: 切勿将365-Stealer管理门户直接暴露在互联网上。确保只有通过安全的私有网络才能访问,以避免潜在入侵。

命令行帮助

root@kitploit:~
usage: 365-Stealer.py [-h] [--app-registration] [--set-config] [--get-config] [--code CODE] [--token TOKEN] [--client-id CLIENT_ID]
                      [--client-secret CLIENT_SECRET] [--refresh-token REFRESH_TOKEN] [--token-path TOKEN_PATH]
                      [--refresh-all] [--refresh-user REFRESH_USER] [--redirect-url REDIRECT_URL]
                      [--database-path DATABASE_PATH] [--no-stealing] [--upload UPLOAD] [--create-rules CREATE_RULES]
                      [--send-mail SEND_MAIL] [--delete-all-data] [--delete-user-data DELETE_USER_DATA] [--run-app]
                      [--no-ssl] [--port PORT] [--disable-logs]
                      [--injection]
                      [--custom-steal {listusers,checklicence,outlook,onedrive,onenote} [{listusers,checklicence,outlook,onedrive,onenote} ...]]
                      [--delay DELAY]
optional arguments:
  -h, --help            显示此帮助消息并退出
  --app-registration    Azure应用注册
  --set-config          设置365-Stealer配置
  --get-config          获取365-Stealer配置
  --code CODE           提供授权码
  --token TOKEN         提供访问令牌
  --client-id CLIENT_ID
                        提供应用程序客户端ID
  --client-secret CLIENT_SECRET
                        提供应用程序客户端密钥
  --refresh-token REFRESH_TOKEN
                        提供刷新令牌
  --token-path TOKEN_PATH
                        提供访问令牌文件路径
  --refresh-all         重新窃取所有用户的数据。
  --refresh-user REFRESH_USER
                        重新窃取特定用户的数据。(提供邮箱地址)
  --redirect-url REDIRECT_URL
                        重定向URL
  --database-path DATABASE_PATH
                        提供数据库路径
  --no-stealing         仅窃取令牌
  --upload UPLOAD       将文件添加到受害者的OneDrive中(提供文件路径)
  --create-rules CREATE_RULES
                        提供包含Outlook规则的JSON文件
  --send-mail SEND_MAIL
                        提供用于发送邮件的JSON文件
  --delete-all-data     从数据库中删除所有数据!
  --delete-user-data DELETE_USER_DATA
                        从数据库中删除特定用户的数据!
  --run-app             托管钓鱼应用程序
  --no-ssl              使用http(端口80)
  --port PORT           提供自定义端口以托管钓鱼应用程序
  --disable-logs        禁用所有HTTP访问日志
  --custom-steal {listusers,checklicence,outlook,onedrive,onenote} [{listusers,checklicence,outlook,onedrive,onenote} ...]
                        窃取特定数据
  --injection           启用宏注入
  --delay DELAY         在窃取时通过指定时间(秒)延迟请求

博客

Azure中的初始访问攻击 – 2025年理解与执行非法同意授权攻击

关于365-Stealer新版本的博客文章,这是对旧版本的彻底重写。本文探讨了非法同意授权(ICG)攻击在Microsoft 365中的工作原理。

旧博客文章 - 365-Stealer介绍

Bug报告与功能请求

如果遇到Bug或有功能请求,请提出问题。

贡献

如果您想为项目做出贡献并使其变得更好,非常欢迎您的帮助。

下载工具
  • 搜索和过滤邮件: 攻击者可以通过关键字、主题、用户邮箱地址搜索特定邮件,或使用365-Stealer管理门户过滤带附件的邮件。
  • 导出用户数据: 该工具允许攻击者从被入侵的租户中转储用户信息,并将数据导出为CSV文件,以便进一步分析或使用。