
monkey365 v0.99
基于 PowerShell 的 Microsoft 365、Azure 和 Entra ID 安全评估框架。扫描错误配置、CIS 基准合规性和云安全态势,并提供结构化报告。
Monkey365 是一个面向 Microsoft 365、Azure 和 Microsoft Entra ID 的开源安全评估框架。它帮助安全专业人员、顾问、管理员和事件响应人员识别错误配置、审查云安全态势,并依据行业安全最佳实践和合规标准评估环境。
Monkey365 简化了 Microsoft 云安全评估,无需用户学习复杂的 API、安装多个 Microsoft 模块或浏览多个管理门户。
功能特性
- 自带依赖的自包含 PowerShell 模块
- 不依赖外部 Microsoft 模块或工具,包括 ExchangeOnlineManagement、Az PowerShell / Azure CLI 或 Microsoft Graph PowerShell SDK
- 安全态势评估,支持:
- Microsoft 365
- Azure
- Microsoft Entra ID
- 覆盖主要的 Microsoft 365 工作负载,包括:
- Exchange Online
- SharePoint Online
- Microsoft Teams
- Microsoft Purview
- Microsoft Fabric
- 支持多种身份验证方法,包括:
- 交互式身份验证
- 启用 MFA 的身份验证
- 服务主体
- 基于证书的身份验证
- 直接访问令牌身份验证
- CIS 基准和合规性检查
- 结构化 HTML、JSON 和 CSV 报告,适用于自动化和分析工作流
- 支持 Azure 公有云、中国云和政务云环境
- 基于收集器的可扩展架构
- 可轻松部署到工作站、跳板机、自动化流水线和评估环境
快速开始
安装 Monkey365 PowerShell 模块并开始评估您的环境。
零配置,无需外部 Microsoft 模块。
Install-Module -Name monkey365 -Scope CurrentUser
Import-Module monkey365
$options = @{
Instance = 'Microsoft365'
Collect = @('ExchangeOnline', 'SharePointOnline')
PromptBehavior = 'SelectAccount'
IncludeEntraID = $true
ExportTo = 'HTML'
}
Invoke-Monkey365 @options
[!NOTE] Monkey365 包含捆绑的依赖项,不需要额外的 Microsoft PowerShell 模块。
简介
Monkey365 是一个基于收集器的 PowerShell 安全评估框架,以自包含模块的形式分发,帮助评估云环境的安全态势。它会扫描 Microsoft 365、Azure 和 Microsoft Entra ID,查找潜在的安全问题、配置弱点以及与安全最佳实践的偏差。
该框架提供建议,帮助组织强化云安全态势并提升合规就绪度。
身份验证
Monkey365 支持多种身份验证方法,适用于交互式评估和自动化评估。
支持的身份验证工作流包括:
- 交互式身份验证
- 启用 MFA 的身份验证
- 服务主体
- 基于证书的身份验证
- 直接访问令牌身份验证
身份验证文档:
-
身份验证概述
https://silverhack.github.io/monkey365/authentication/overview/ -
访问令牌身份验证
https://silverhack.github.io/monkey365/authentication/access_token/
基本用法
显示可用的命令选项:
Get-Help Invoke-Monkey365
显示用法示例:
Get-Help Invoke-Monkey365 -Examples
显示详细的帮助信息:
Get-Help Invoke-Monkey365 -Detailed
评估示例:
$options = @{
Instance = 'Microsoft365'
Collect = @('ExchangeOnline','MicrosoftFabric','MicrosoftTeams','SharePointOnline')
PromptBehavior = 'SelectAccount'
IncludeEntraID = $true
ExportTo = 'HTML'
}
Invoke-Monkey365 @options
如果未提供凭据,Monkey365 会提示进行身份验证。
在国家或政府云环境中运行 Monkey365
使用 Invoke-Monkey365 的 -Environment 参数来指定目标云环境。
支持的环境:
AzurePublic(默认)AzureChinaAzureUSGovernment
示例:
$options = @{
Environment = 'AzureUSGovernment'
Instance = 'Microsoft365'
Collect = @('ExchangeOnline', 'SharePointOnline')
PromptBehavior = 'SelectAccount'
IncludeEntraID = $true
ExportTo = @('JSON', 'HTML')
}
Invoke-Monkey365 @options
监管合规性检查
Monkey365 包含数百项内置检查,与 Microsoft 云环境的行业安全最佳实践和合规框架保持一致。
该框架帮助组织:
- 识别安全差距
- 审查云配置态势
- 验证租户加固
- 分析身份与访问控制
- 评估合规就绪度
评估报告包含结构化发现和修复指导,便于快速分析和验证。
支持的标准
默认情况下,HTML 报告会显示针对 Microsoft Azure 和 Microsoft 365 环境的 CIS(互联网安全中心)基准映射。
当前支持的标准包括:
- CIS Microsoft Azure Foundations Benchmark v6.0.0
- CIS Microsoft Azure Database Services Benchmark v2.0.0
- CIS Microsoft Azure Compute Services Benchmark v2.0.0
- CIS Microsoft 365 Foundations Benchmark v7.0.0
未来的版本可能会添加更多标准和框架,包括:
- NIST
- HIPAA
- GDPR
- PCI-DSS
文档
详细的安装指南、高级用法示例、配置参考和其他文档可在以下位置获取:
https://silverhack.github.io/monkey365/
[!TIP] 给我们点个 Star 吧! 如果您觉得 Monkey365 有用,请考虑在 GitHub 上给该仓库点个 Star。这有助于提升项目可见度,并支持持续开发。