
[![GitHub Release][github-release-img]][release] [![PSGallery Release][psgallery-release-img]][psgallery] [![CI Pipeline][ci-pipeline-img]][ci-pipeline] [![Functional Tests][functional-test-img]][functional-test] [![GitHub License][github-license-img]][license] [![GitHub Downloads][github-downloads-img]][release] [![PSGallery Downloads][psgallery-downloads-img]][psgallery] [![GitHub Issues][github-issues-img]][github-issues]
ScubaGear 是一款评估工具,用于验证 Microsoft 365 (M365) 租户的配置是否符合 Secure Cloud Business Applications(SCuBA)安全配置基线文档中所述的政策。
[!NOTE] 本文档可通过 GitHub Pages 阅读。
ScubaGear 面向希望依据 CISA 安全配置基线评估其租户环境的 M365 管理员。
ScubaGear 采用三步流程:

SCuBA 控制项已映射至 NIST SP 800-53 和 MITRE ATT&CK 框架。
SCuBA 现已包含图形用户界面,让创建和管理 YAML 配置文件比以往更加轻松。这一直观的工具可帮助降低手动编辑的复杂性,并简化组织的配置流程。 更多信息请参阅配置 UI 文档。
Start-ScubaConfigApp 启动非常适合偏好可视化界面而非命令行工具的用户。
在启动 ScubaGear 之前,务必确保你的环境已正确配置,包括具备必要的依赖项和权限。
请查看先决条件部分,确认你的系统满足所有要求。这有助于避免执行过程中出现错误,并确保使用 ScubaGear 时获得顺畅的体验。
[!NOTE] 在你的环境中安装 ScubaGear 后,当需要更新到最新版本时,我们建议使用内置的更新函数和功能。更多信息请参阅更新指南。
ScubaGear 可以多次运行,以便正确评估基线设置。
首次运行(无配置文件): 在不使用配置文件的情况下启动 ScubaGear。此次初始运行会生成你环境当前设置的基线模板。它不会做出任何更改,但有助于你了解默认状态。
后续运行(使用配置文件): 在查看并编辑生成的配置文件后,将配置文件作为输入再次运行 ScubaGear。这样 ScubaGear 便可将你的预期设置与实际环境进行对比,并相应地突出显示差异。
[!IMPORTANT] ScubaGear 有特定的先决条件,并依赖已定义的配置值来正确评估你的 Microsoft 365 租户。在完成初始评估运行后,请彻底审查结果。通过更新租户配置,或在 YAML 配置文件中使用排除项、注释或省略项记录风险接受情况,来解决任何已识别的差距。 详细指导请参阅以下各节。
这种迭代方法可确保 ScubaGear 与你的环境保持一致,并确保所有策略评估都基于你自定义的基线。
要从 PSGallery 安装 ScubaGear,请在 Windows 计算机上打开 PowerShell 5 终端并安装该模块:
# Install ScubaGear
Install-Module -Name ScubaGear
# Install the minimum required dependencies
Install-ScubaDependencies
# Check the version
Invoke-SCuBA -Version
[!IMPORTANT] 如果你正在运行 v2.0.0 并使用交互式登录连接非商业租户(例如 gcc 或 gcchigh),请包含 -M365Environment 参数。在未来的版本中,ScubaGear 将自动检测 M365 环境,届时将不再需要此操作。
# Assess all products (basic command)
Invoke-SCuBA -ProductNames *
ScubaGear 使用 YAML 配置文件来定义应如何评估你的环境。该文件具有以下几个重要作用:
[!IMPORTANT] 如果没有正确定义的 YAML 文件,ScubaGear 将采用默认配置,而该配置可能无法反映你组织的实际策略或风险状况。如果用途是 CISA 的约束性操作指令 (BOD) 25-01,则必须提供该文件
[!TIP] 已包含 full_config.yaml 以帮助你入门。在将其与 ScubaGear 模块配合使用之前,应自定义该文件以反映你租户的独特配置。
在为 BOD 25-01 提交运行 Invoke-SCuBA 时:
# Run with a configuration file
Invoke-SCuBA -ConfigFilePath "path/to/your/config.yaml" -Organization 'example.onmicrosoft.com'
对于所有其他实例:
# Run with a configuration file (no-BOD)
Invoke-SCuBA -ConfigFilePath "path/to/your/config.yaml" -SilenceBODWarnings
以下操作将更新 ScubaGear。
# The following will update ScubaGear to the latest version
Update-ScubaGear
以下内容将对所有 ScubaGear 依赖项进行基线化,请在运行前详细查阅更新指南。
# The follwing will remove and re-install all ScubaGear dependencies
Reset-ScubaGearDependencies