Google Workspace API 访问权限通过全域委派授予
编辑Google Workspace API 访问权限通过全域委派授予编辑
检测到向服务帐号授予全域委派权限的情况。可以配置全域委派以授予第三方和内部应用程序访问 Google Workspace 用户数据的权限。攻击者可能会配置全域委派以保持对目标数据的访问权限。
规则类型:查询
规则索引:
- filebeat-*
- logs-google_workspace*
严重性:中等
风险评分: 47
每隔:5 分钟运行一次
从以下时间开始搜索索引:now-9m(日期数学格式,另请参见 其他回溯时间
)
每次执行的最大警报数: 100
参考:
标签:
- 域:云
- 数据源:Google Workspace
- 用例:身份和访问审计
- 资源:调查指南
- 策略:持久性
版本: 206
规则作者:
- Elastic
规则许可证:Elastic 许可证 v2
调查指南编辑
分类和分析
调查通过全域委派授予的 Google Workspace API 访问权限
全域委托是一项功能,允许应用访问组织的 Google Workspace 环境中的用户数据。只有超级管理员可以管理全域委托,并且他们必须指定应用程序可以访问的每个 API 范围。在使用应用程序的 OAuth2 客户端 ID 建立全域委托后,Google Workspace 服务将拥有可以进行交互的所有 API。通常,会创建启用 Google Workspace API 的 GCP 服务帐号和应用程序,从而允许应用程序访问 Google Workspace 中的资源和服务。
通过 API 授权与 Google Workspace 资源和服务进行交互的应用程序具有广泛的功能,具体取决于应用的范围。如果在设置 API 范围时没有遵循最小权限原则 (PoLP),则如果应用程序遭到破坏,威胁行为者可能会滥用其他权限。创建并授予 API 访问权限的新应用程序可能表明威胁行为者试图将他们的恶意应用程序注册到 Google Workspace 域,以试图建立命令和控制立足点。
此规则识别出应用程序何时获得授权的 API 客户端访问权限。
可能的调查步骤
- 通过查看预警中的
user.name
或user.email
字段来识别关联的用户帐号。 - 只有拥有超级管理员权限的用户才能授权 API 客户端访问权限。
- 通过查看预警中的
google_workspace.admin.api.client.name
字段来识别 API 客户端名称。 - 如果已提取 GCP 审核日志,则转向查看与服务帐号 ID 相关的过去 48 小时的活动。
- 在
gcp.audit.resource_name
字段中使用通配符搜索google_workspace.admin.api.client.name
值。 - 搜索 API 客户端名称和
event.action
上的聚合结果,以确定服务帐号在 GWS 中的用途。 - 在识别出相关用户后,验证超级管理权限以访问全域委托设置。
误报分析
- 对全域委托进行更改需要超级管理员权限。向用户确认这些更改是否为预期更改。
- 查看与预期 API 访问更改相关的计划维护说明。
响应和补救
- 根据分类结果启动事件响应流程。
- 查看 Google Workspace 中授权的 API 客户端访问权限的范围。
- 在调查和响应期间禁用或限制该帐户。
- 识别事件的可能影响并按优先级排序;以下操作可以帮助你获得上下文
- 识别云环境中的帐户角色。
- 评估受影响服务和服务器的重要性。
- 与你的 IT 团队合作,识别并最大程度减少对用户的影响。
- 识别攻击者是否横向移动并危害其他帐户、服务器或服务。
- 识别与该活动相关的任何监管或法律后果。
- 调查攻击者危害或使用的系统上的凭据泄露情况,以确保识别出所有受危害的帐户。根据需要重置密码或删除 API 密钥,以撤销攻击者对环境的访问权限。在执行这些操作期间,与你的 IT 团队合作,最大程度减少对业务运营的影响。
- 查看分配给相关用户的权限,以确保遵循最小特权原则。
- 实施 Google 概述的安全最佳实践。
- 确定攻击者滥用的初始媒介,并采取措施防止通过同一媒介重新感染。
- 使用事件响应数据,更新日志记录和审计策略,以缩短平均检测时间 (MTTD) 和平均响应时间 (MTTR)。
有关 Google Workspace 事件延迟时间的重要信息
- 根据 Google 的文档,Google Workspace 管理员可能会观察到事件发生时间与事件在 Google Workspace 管理员/审计日志中可见之间从数分钟到 3 天不等的延迟时间。
- 为了降低误报风险,请考虑缩短 Google Workspace(以前称为 G Suite)Filebeat 模块轮询 Google 报告 API 以获取新事件的时间间隔。
- 默认情况下,
var.interval
设置为 2 小时 (2h)。考虑将此间隔更改为较低的值,例如 10 分钟 (10m)。 - 有关更多信息,请参见以下参考
- https://support.google.com/a/answer/7061566
- https://elastic.ac.cn/guide/en/beats/filebeat/current/filebeat-module-google_workspace.html
设置编辑
Google Workspace Fleet 集成、Filebeat 模块或类似结构的数据必须与此规则兼容。
规则查询编辑
event.dataset:google_workspace.admin and event.provider:admin and event.category:iam and event.action:AUTHORIZE_API_CLIENT_ACCESS and event.outcome:success
框架:MITRE ATT&CKTM
-
策略
- 名称:持久性
- ID:TA0003
- 参考 URL:https://attack.mitre.org/tactics/TA0003/
-
技术
- 名称:帐户操作
- ID:T1098
- 参考 URL:https://attack.mitre.org/techniques/T1098/