invictus-ir/Microsoft-Extractor-Suite

GitHub: invictus-ir/Microsoft-Extractor-Suite

面向 Microsoft 365 和 Azure 环境的 PowerShell 取证模块,用于在安全事件响应中批量采集审计日志、邮箱配置、身份与安全策略等各类租户数据。

Stars: 792 | Forks: 117

![替换文本](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/8a8f048add180343.jpg) ![语言](https://img.shields.io/badge/Language-Powershell-blue) [![文档](https://img.shields.io/badge/Read%20the%20Docs-Documentation-blue)](https://microsoft-365-extractor-suite.readthedocs.io/en/latest/) [![最新版本](https://img.shields.io/powershellgallery/v/Microsoft-Extractor-Suite?label=Latest%20Version&color=brightgreen)](https://www.powershellgallery.com/packages/Microsoft-Extractor-Suite) ![GitHub stars](https://img.shields.io/github/stars/invictus-ir/Microsoft-Extractor-Suite?style=social) ![贡献者](https://img.shields.io/github/contributors/invictus-ir/Microsoft-Extractor-Suite) ![PS Gallery 下载量](https://img.shields.io/powershellgallery/dt/Microsoft-Extractor-Suite?label=PS%20Gallery%20Downloads) ![维护状态](https://img.shields.io/badge/Maintenance%20Level-Actively%20Developed-brightgreen) # Microsoft-Extractor-Suite 入门指南 要开始使用 Microsoft-Extractor-Suite,请查看 [Microsoft-Extractor-Suite 文档。](https://microsoft-365-extractor-suite.readthedocs.io/en/latest/) ## 关于 Microsoft-Extractor-Suite Microsoft-Extractor-Suite 是一个功能全面且积极维护的 Powershell 工具,旨在简化从 Microsoft 内部的各种来源收集所有必要数据和信息的过程。 支持以下 Microsoft 数据源: * Unified Audit Log * Admin Audit Log * Mailbox Audit Log * Mailbox Rules * Transport Rules * Message Trace Logs * Entra ID Sign-In Logs * Entra ID Audit Logs * Azure Activity Logs * Azure Directory Activity Logs 除了上述日志来源之外,该工具还能够检索其他相关信息: * Entra ID 中注册的 OAuth 应用程序 * 所有用户的 MFA 状态 * 所有用户的创建时间和上次密码更改日期 * 风险用户 * 风险检测 * 条件访问策略 * 管理员目录角色及其用户 * 特定的电子邮件或附件列表 * Microsoft 365 中所有邮箱的委派权限 * 有关在 Entra ID 中注册的所有设备的信息 * Microsoft 365 中所有邮箱的审计状态和设置 * 旨在收集组信息的函数 * 旨在收集许可证信息的函数 * 检索角色活动信息 * 生成所有 Privileged Identity Management (PIM) 角色分配的概览 * 安全警报 Microsoft-Extractor-Suite 由 Joey Rentenaar 和 Korstiaan Stam 创建,并由 [Invictus IR](https://www.invictus-ir.com/) 团队维护。 ## 使用方法 要开始使用 Microsoft-Extractor-Suite 工具,请确保满足相关要求。如果您尚未安装 Connect-ExchangeOnline、AZ module 或 connect-mggraph,请查看[安装指南](https://microsoft-365-extractor-suite.readthedocs.io/en/latest/installation/Installation.html)。 安装 Microsoft-Extractor-Suite 工具包: 导入 Microsoft-Extractor-Suite: 在运行这些函数之前,您必须根据您的用例登录到 Microsoft 365 或 Azure。要登录,请使用以下 cmdlet 之一: ## 可用函数 ### 统一 Audit Log - `Get-UAL` - 收集所有 Unified Audit Logs - `Get-UALStatistics` - 显示每个 Record Type 的 Unified Audit Logs 的总日志数 - `Get-MailboxAuditLog` - 收集 Mailbox Audit Logs - `Get-AdminAuditLog` - 收集 Admin Audit Logs ### 邮箱和传输规则 - `Show-MailboxRules` - 显示邮箱规则 - `Get-MailboxRules` - 导出邮箱规则 - `Get-TransportRules` - 导出传输规则 - `Show-TransportRules` - 显示传输规则 ### 邮件和邮件追踪 - `Get-MessageTraceLog` - 收集邮件追踪日志 - `Get-Email` - 下载特定或批量电子邮件 - `Show-Email` - 显示电子邮件内容 - `Get-Attachment` - 下载电子邮件附件 - `Get-Sessions` - 收集与 MailItemsaccessed 事件相关的会话信息 - `Get-MessageIDs` - 从 MailItemsaccessed 事件中提取 Message ID ### 登录与审计日志 - `Get-GraphEntraSignInLogs` - 收集登录日志 - `Get-GraphEntraAuditLogs` - 收集审计日志 ### 活动日志 - `Get-ActivityLogs` - 收集活动日志 - `Get-DirectoryActivityLogs` - 收集目录活动日志 ### OAuth 应用 - `Get-OAuthPermissionsGraph` - 通过 Graph API 收集 OAuth 应用程序权限 ### 用户相关 - `Get-Users` - 收集用户信息 - `Get-AdminUsers` - 收集具有管理权限的用户 - `Get-MFA` - 收集用户的 MFA 状态 - `Get-RiskyUsers` - 收集风险用户 - `Get-RiskyDetections` - 收集风险检测事件 ### 条件访问策略 - `Get-ConditionalAccessPolicies` - 收集条件访问策略 ### 设备管理 - `Get-Devices` - 收集设备注册信息 ### 权限和审计设置 - `Get-MailboxAuditStatus` - 收集邮箱审计配置 - `Get-MailboxPermissions` - 收集委派邮箱权限 ### 许可证管理 - `Get-Licenses` - 收集租户中的所有许可证以及保留时间和高级许可证指标 - `Get-LicenseCompatibility` - 检查是否存在 E5、P2、P1 和 E3 许可证并通知功能限制 - `Get-EntraSecurityDefaults` - 检查 Entra ID 安全默认值的状态 - `Get-LicensesByUser` - 收集租户中所有用户的许可证分配情况 ### 组管理 - `Get-Groups` - 收集组织中的所有组,包括组 ID 和显示名称等详细信息 - `Get-GroupMembers` - 收集每个组的所有成员及其相关详细信息 - `Get-DynamicGroups` - 收集所有动态组及其成员身份规则 ### 角色管理 - `Get-PIMAssignments` - 生成一份关于 Entra ID 中所有 Privileged Identity Management (PIM) 角色分配的报告。 - `Get-AllRoleActivity` - 检索所有目录角色成员身份以及用户的上次登录信息。 ### 安全管理 - `Get-SecurityAlerts` - 检索安全警报 ### 自动收集所需的所有内容 - `Get-AllEvidence` - 自动收集所有(几乎)可用的证据类型 - `Start-MESTriage` - 使用可自定义的模板对特定用户执行快速分类 ### 身份验证与会话管理 - `Connect-M365` - 连接到 Microsoft 365 服务 - `Connect-AzureAZ` - 使用 Az 模块连接 - `Disconnect-M365` - 断开与 Microsoft 365 服务的连接 - `Disconnect-AzureAZ` - 断开 Az 模块会话 ## 相关项目 为了增强您的分析能力,可以考虑探索由 LETHAL FORENSICS 开发的 [Microsoft-Analyzer-Suite](https://github.com/LETHAL-FORENSICS/Microsoft-Analyzer-Suite)。该套件提供了一系列专为分析 Microsoft 365 和 Microsoft Entra ID 数据而设计的 PowerShell 脚本,这些数据可以使用 Microsoft-Extractor-Suite 进行提取。
标签:AI合规, Azure, Entra ID, IPv6, Libemu, MFA状态, Microsoft 365, Microsoft-Extractor-Suite, OAuth应用监控, OpenCanary, PowerShell, 安全取证, 审计日志, 库, 应急响应, 开源安全工具, 数字取证, 数据提取, 数据泄露, 日志收集, 统一审计日志, 网络安全, 自动化脚本, 逆向工程平台, 隐私保护