安全控制:特权访问

特权访问包括用于保护对你的租户和资源的特权访问的控制措施,其中包括一系列用于避免管理模型、管理帐户和特权访问工作站面临有意和无意的风险的控制措施。

PA-1:隔离并限制高特权/管理员用户

CIS Controls v8 ID NIST SP 800-53 r4 ID PCI-DSS ID v3.2.1
5.4, 6.8 AC-2、AC-6 7.1, 7.2, 8.1

安全原则:确保识别所有对业务影响较大的帐户。 限制云控制平面、管理平面和数据/工作负荷平面中的特权/管理帐户数。


Azure 指导:必须通过对 Azure 托管资源的直接或间接管理访问权限来保护所有角色。

Azure Active Directory(Azure AD)是 Azure 的默认标识和访问管理服务。 Azure AD 中最重要的内置角色是全局管理员和特权角色管理员,因为分配给这两个角色的用户可以委派管理员角色。 使用这些权限,用户可以直接或间接读取和修改 Azure 环境中的每个资源:

  • 全局管理员/公司管理员:具有此角色的用户有权访问 Azure AD 中的所有管理功能以及使用 Azure AD 标识的服务。
  • 特权角色管理员:具有此角色的用户可以在 Azure AD 以及 Azure AD Privileged Identity Management(PIM)中管理角色分配。 此外,此角色允许管理 PIM 和管理单元的各个方面。

在 Azure AD 之外,Azure 具有内置角色,这些角色对于资源级别的特权访问至关重要。

  • 所有者:授予管理所有资源的完全访问权限,包括分配 Azure RBAC 中的角色的能力。
  • 参与者:授予管理所有资源的完全访问权限,但不允许在 Azure RBAC 中分配角色、管理 Azure 蓝图中的分配或共享映像库。
  • 用户访问管理员:允许管理用户对 Azure 资源的访问权限。

注意:如果在 Azure AD 级别或资源级别使用具有特定特权权限的自定义角色,则可能需要管理其他关键角色。

此外,还应限制在 Azure 企业协议 (EA) 门户中具有以下三个角色的用户,因为他们可用于直接或间接管理 Azure 订阅。

  • Account Owner(账户所有者):具有此角色的用户可以管理订阅,包括订阅的创建和删除。
  • 企业管理员:分配了此角色的用户可以管理 (EA) 门户用户。
  • 部门管理员:分配了此角色的用户可以更改部门内的账户所有者。

最后,确保您还限制其他管理、身份和安全系统中的特权账户,这些账户对您的业务关键型资产具有管理访问权限,例如 Active Directory 域控制器 (DC)、安全工具和系统管理工具,并在业务关键型系统上安装了代理。 入侵这些管理和安全系统的攻击者可以立即将其武器化,以入侵业务关键资产。

Azure 实现和额外背景信息:


AWS 指南:必须保护对 AWS 托管资源具有直接或间接管理访问权限的所有角色。

需要保护的权限/管理用户包括:

  • 根用户:根用户是 AWS 账户中最高级别的特权账户。 root 账户应受到严格限制,并且仅在紧急情况下使用。 请参阅 PA-5 中的紧急访问控制(设置紧急访问)。
  • 具有特权权限策略的 IAM 身份(用户、组、角色):分配了权限策略(如 AdministratorAccess)的 IAM 身份可以拥有对 AWS 服务和资源的完全访问权限。

如果使用 Azure Active Directory (Azure AD) 作为 AWS 的标识提供者,请参阅有关在 Azure AD 中管理特权角色的 Azure 指南。

确保您还限制其他管理、身份和安全系统中的特权账户,这些账户对您的业务关键型资产具有管理访问权限,例如 AWS Cognito、安全工具和系统管理工具,并在业务关键型系统上安装了代理。 入侵这些管理和安全系统的攻击者可以立即将其武器化,以入侵业务关键资产。

AWS 实现和其他上下文


GCP 指南:必须保护对 GCP 托管资源具有直接或间接管理访问权限的所有角色。

Google Cloud 中最关键的内置角色是超级管理员。 超级用户可以在 Admin Console 中执行所有任务,并拥有不可撤销的管理权限。 建议不要使用超级管理员帐户进行日常管理。

基本角色是高度宽松的旧角色,建议不要在生产环境中使用基本角色,因为它会授予对所有 Google Cloud 资源的广泛访问权限。 基本角色包括 Viewer(查看者)、Editor (编辑者) 和 Owner (所有者) 角色。 相反,建议使用预定义角色或自定义角色。 值得注意的特权预定义角色包括:

  • 组织管理员:具有此角色的用户可以管理 IAM 策略并查看组织、文件夹和项目的组织策略。
  • 组织策略管理员:具有此角色的用户可以通过设置组织策略来定义组织希望对云资源的配置施加哪些限制。
  • Organization Role Administrator(组织角色管理员):具有此角色的用户可以管理组织及其下项目中的所有自定义角色。
  • 安全管理员:具有此角色的用户可以获取和设置任何 IAM 策略。
  • Deny Admin:具有此角色的用户有权读取和修改 IAM 拒绝策略。

此外,某些预定义角色包含组织、文件夹和项目级别的特权 IAM 权限。 这些 IAM 权限包括:

  • organization管理员
  • folderIAMAdmin
  • 项目IAMAdmin

此外,通过为不同项目的帐户分配角色,或利用 Google Kubernetes Engine 的二进制授权,实现职责分离。

最后,确保您还限制其他管理、身份和安全系统中的特权账户,这些账户对您的业务关键型资产具有管理访问权限,例如 Cloud DNS、安全工具和系统管理工具,并在业务关键型系统上安装了代理。 入侵这些管理和安全系统的攻击者可以立即将其武器化,以入侵业务关键资产。

GCP 实现和其他上下文


客户安全利益干系人(了解详细信息

PA-2:避免对用户帐户和权限进行长期访问

CIS Controls v8 ID NIST SP 800-53 r4 ID PCI-DSS ID v3.2.1
AC-2

安全原则:使用实时 (JIT) 机制为不同的资源层分配特权访问权限,而不是创建长期特权。


Azure 指南:使用 Azure AD Privileged Identity Management (PIM) 启用对 Azure 资源和 Azure AD 的实时 (JIT) 特权访问。 JIT 是一种模型,用户可以接收临时权限来执行特权任务,从而防止恶意用户或未经授权的用户在权限过期后获取访问权限。 只有在用户需要的情况下,才会授予访问权限。 当 Azure AD 组织中存在可疑或不安全的活动时,PIM 还可以生成安全警报。

使用 Microsoft Defender for Cloud 的实时 (JIT) 访问功能限制敏感虚拟机(VM)管理端口的入站流量。 这可确保仅在用户需要时授予对 VM 的特权访问权限。

Azure 实现和额外背景信息:


AWS 指南:使用 AWS Security Token Service (AWS STS) 创建临时安全凭证,以便通过 AWS API 访问资源。 临时安全凭证的工作方式与 IAM 用户可以使用的长期访问密钥凭证几乎相同,但存在以下差异:

  • 临时安全凭证的生命周期较短,从几分钟到几小时不等。
  • 临时安全凭证不与用户一起存储,而是动态生成,并在请求时提供给用户。

AWS 实现和其他上下文


GCP 指南:使用 IAM 条件访问,通过允许策略中的条件角色绑定创建对资源的临时访问权限,该策略已授予 Cloud Identity 用户。 配置日期/时间属性以强制实施基于时间的控制以访问特定资源。 临时访问可能具有短期寿命,从几分钟到几小时,或者可以根据一周中的天数或小时授予。

GCP 实现和其他上下文


客户安全利益干系人(了解详细信息

PA-3:管理身份和权限生命周期

CIS Controls v8 ID NIST SP 800-53 r4 ID PCI-DSS ID v3.2.1
6.1, 6.2 AC-5、AC-6 7.1, 7.2, 8.1

安全原则:使用自动化流程或技术控制来管理标识和访问生命周期,包括请求、评审、审批、预配和取消预配。


Azure 指南:使用 Azure AD 权利管理功能自动执行访问请求工作流(适用于 Azure 资源组)。 这使 Azure 资源组的工作流能够管理访问分配、评审、过期和双重或多阶段审批。

使用权限管理来检测、自动调整大小并持续监控分配给多云基础架构中用户和工作负载身份的未使用和过多权限。

Azure 实现和额外背景信息:


AWS 指南:使用 AWS Access Advisor 提取用户账户的访问日志和资源的权利。 构建手动或自动工作流以与 AWS IAM 集成,以管理访问权限分配、审核和删除。

注意:AWS Marketplace 上提供了用于管理身份和权利生命周期的第三方解决方案。

AWS 实现和其他上下文


GCP 指南:使用 Google 的 Cloud Audit Logs 拉取用户帐户和资源权利的管理员活动和数据访问审核日志。 构建手动或自动工作流以与 GCP IAM 集成,以管理访问权限分配、审核和删除。

使用 Google Cloud Identity Premium 提供核心身份和设备管理服务。 这些服务包括自动用户配置、应用程序白名单和自动移动设备管理等功能。

注意:Google Cloud Marketplace 上提供了用于管理身份和权利生命周期的第三方解决方案。

GCP 实现和其他上下文


客户安全利益干系人(了解详细信息

PA-4:定期查看和协调用户访问

CIS Controls v8 ID NIST SP 800-53 r4 ID PCI-DSS ID v3.2.1
5.1, 5.3, 5.5 AC-2、AC-6 7.1、7.2、8.1、A3.4

安全原则:定期审查特权帐户权利。 确保授予账户的访问权限对于控制平面、管理平面和工作负载的管理有效。


Azure 指南:查看 Azure 中的所有特权帐户和访问权限,包括 Azure 租户、Azure 服务、VM/IaaS、CI/CD 流程以及企业管理和安全工具。

使用 Azure AD 访问评审来评审 Azure AD 角色、Azure 资源访问角色、组成员身份和对企业应用程序的访问权限。 Azure AD 报告还可以提供日志来帮助发现过时的帐户或一段时间未使用的帐户。

此外,可以将 Azure AD Privileged Identity Management 配置为在特定角色创建过多的管理员帐户时发出警报,并确定过期或配置不当的管理员帐户。

Azure 实现和额外背景信息:


AWS 指南:查看所有特权账户和 AWS 中的访问权利,包括 AWS 账户、服务、VM/IaaS、CI/CD 流程以及企业管理和安全工具。

使用 IAM Access Advisor、Access Analyzer 和 Credential Reports 查看资源访问角色、组成员资格和对企业应用程序的访问。 IAM 访问分析器和凭证报告还可以提供日志,以帮助发现过时的账户或一段时间未使用的账户。

如果您使用 Azure Active Directory (Azure AD) 作为 AWS 的身份提供商,请使用 Azure AD 访问审核定期审核特权账户和访问权利。

AWS 实现和其他上下文


GCP 指南:查看 Google Cloud 中的所有特权帐户和访问权限,包括 Cloud Identity 帐户、服务、VM/IaaS、CI/CD 流程以及企业管理和安全工具。

使用 Cloud Audit Logs 和 Policy Analyzer 查看资源访问权限、角色和群组成员资格。 在 Policy Analyzer 中创建分析查询,以了解确定哪些委托人可以访问特定资源。

如果您使用 Azure Active Directory (Azure AD) 作为 Google Cloud 的身份提供商,请使用 Azure AD 访问审核定期审核特权帐户和访问权利。

此外,可以将 Azure AD Privileged Identity Management 配置为在特定角色创建过多的管理员帐户时发出警报,并确定过期或配置不当的管理员帐户。

GCP 实现和其他上下文


客户安全利益干系人(了解详细信息

PA-5:设置紧急访问

CIS Controls v8 ID NIST SP 800-53 r4 ID PCI-DSS ID v3.2.1
AC-2

安全原则:设置紧急访问,以确保在紧急情况下不会意外地将关键云基础结构 ((例如标识和访问管理系统) )锁定。

应很少使用紧急访问帐户,如果遭到入侵,则可能会对组织造成严重损害,但对于少数需要访问帐户的情况而言,其可用性也至关重要。


Azure 指南:为了防止意外地被锁定在 Azure AD 组织之外,请设置一个紧急访问帐户(例如,具有全局管理员角色的帐户),以便在无法使用普通管理帐户时进行访问。 紧急访问帐户通常拥有较高的权限,因此请不要将其分配给特定的个人。 紧急访问帐户只能用于紧急情况或“破窗式”情况,即不能使用正常管理帐户时。

应确保妥善保管紧急访问帐户的凭据(例如密码、证书或智能卡),仅将其告诉只能在紧急情况下有权使用它们的个人。 您还可以使用其他控制措施,例如双重控制措施(例如,将凭证分成两部分并将其提供给不同的人)来增强此过程的安全性。 您还应监控登录和审核日志,以确保仅在获得授权时使用紧急访问账户。

Azure 实现和额外背景信息:


AWS 指南:AWS“根”账户不应用于常规管理任务。 由于 “root” 帐户具有很高的权限,因此不应将其分配给特定个人。 它的使用应仅限于无法使用正常管理帐户的紧急情况或“破窗”方案。 对于日常管理任务,应使用单独的特权用户账户,并通过 IAM 角色分配适当的权限。

您还应确保根账户的凭证(例如密码、MFA 令牌和访问密钥)保持安全,并且只有有权在紧急情况下使用它们的个人才知道。 应为根账户启用 MFA,您还可以使用其他控制措施,例如双重控制措施(例如,将凭证分成两部分并将其提供给不同的人员)来增强此过程的安全性。

您还应该监控 CloudTrail 或 EventBridge 中的登录和审计日志,以确保仅在获得授权时使用根访问账户。

AWS 实现和其他上下文


GCP 指南:不应将 Google Cloud Identity 超级管理员帐户用于常规管理任务。 由于超级管理员帐户具有很高的权限,因此不应将其分配给特定个人。 它的使用应仅限于无法使用正常管理帐户的紧急情况或“破窗”方案。 对于日常管理任务,应使用单独的特权用户账户,并通过 IAM 角色分配适当的权限。

您还应确保超级管理员账户的凭证(例如密码、MFA 令牌和访问密钥)是安全的,并且只有只有在紧急情况下才有权使用它们的个人知道。 应为超级管理员账户启用 MFA,并且您还可以使用其他控制措施,例如双重控制措施(例如,将凭证分成两部分并将其提供给不同的人员)来增强此过程的安全性。

您还应该监控 Cloud Audit Logs 中的登录和审核日志,或查询 Policy Analyzer,以确保仅在获得授权的情况下使用超级管理员帐户。

GCP 实现和其他上下文


客户安全利益干系人(了解详细信息

PA-6:使用特权访问工作站

CIS Controls v8 ID NIST SP 800-53 r4 ID PCI-DSS ID v3.2.1
12.8, 13.5 AC-2、SC-2、SC-7

安全原则:安全、隔离的工作站对于敏感角色(如管理员、开发人员和关键服务作员)的安全至关重要。


Azure 指南:使用 Azure Active Directory、Microsoft Defender 和/或 Microsoft Intune 在本地或 Azure 中部署特权访问工作站 (PAW) 以执行特权任务。 PAW 应集中管理以强制实施安全配置,包括强身份验证、软件和硬件基线,以及受限的逻辑和网络访问。

还可以使用 Azure Bastion,它是可在虚拟网络中预配的完全平台管理的 PaaS 服务。 Azure Bastion 允许使用 Web 浏览器直接从 Azure 门户通过 RDP/SSH 连接到您的虚拟机。

Azure 实现和额外背景信息:


AWS 指南:使用 AWS Systems Manager 中的会话管理器创建访问 EC2 实例的访问路径(连接会话)或指向 AWS 资源的浏览器会话,以执行特权任务。 会话管理器允许通过端口转发将 RDP、SSH 和 HTTPS 连接到您的目标主机。

您还可以选择部署通过 Azure Active Directory、Microsoft Defender 和/或 Microsoft Intune 集中管理的特权访问工作站 (PAW)。 中央管理应强制实施安全配置,包括强身份验证、软件和硬件基准以及受限的逻辑和网络访问。

AWS 实现和其他上下文


GCP 指南:使用 Identity-Aware Proxy (IAP) Desktop 为特权任务创建指向计算实例的访问路径(连接会话)。 IAP Desktop 允许通过端口转发将 RDP 和 SSH 连接到您的目标主机。 此外,面向外部的 Linux 计算实例可以通过 Google Cloud 控制台的浏览器中的 SSH 进行连接。

您还可以选择部署通过 Google Workspace Endpoint Management 或 Microsoft 解决方案(Azure Active Directory、Microsoft Defender 和/或 Microsoft Intune)集中管理的特权访问工作站 (PAW)。 中央管理应强制实施安全配置,包括强身份验证、软件和硬件基准以及受限的逻辑和网络访问。

您还可以创建堡垒主机,以便使用定义的参数安全访问受信任的环境。

GCP 实现和其他上下文


客户安全利益干系人(了解详细信息

PA-7:遵循足够的管理(最低特权)原则

CIS Controls v8 ID NIST SP 800-53 r4 ID PCI-DSS ID v3.2.1
3.3, 6.8 AC-2、AC-3、AC-6 7.1, 7.2

安全原则:遵循恰到好处的管理 (最低特权) 原则在精细级别管理权限。 使用基于角色的访问控制(RBAC)等功能通过角色分配管理资源访问。


Azure 指南:使用 Azure 基于角色的访问控制 (Azure RBAC) 通过角色分配来管理 Azure 资源访问。 通过 RBAC,您可以将角色分配给用户、组、服务主体和托管身份。 某些资源有预定义的内置角色,可以通过 Azure CLI、Azure PowerShell 和 Azure 门户等工具来列出或查询这些角色。

通过 Azure RBAC 分配给资源的权限应始终限于角色所需的权限。 有限特权将补充 Azure AD Privileged Identity Management(PIM)的实时(JIT)方法,应定期审查这些特权。 如果需要,您还可以使用 PIM 定义有时限的分配,这是角色分配中的一个条件,用户只能在指定的开始和结束日期内激活角色。

注意:使用 Azure 内置角色分配权限,并仅在需要时创建自定义角色。

Azure 实现和额外背景信息:


AWS 指南:使用 AWS 策略管理 AWS 资源访问。 有六种类型的策略:基于身份的策略、基于资源的策略、权限边界、AWS Organizations 服务控制策略 (SCP)、访问控制列表和会话策略。 您可以将 AWS 托管策略用于常见的权限使用案例。 但是,您应该注意,托管策略可能带有不应分配给用户的过多权限。

您还可以使用 AWS ABAC(基于属性的访问控制)根据附加到 IAM 资源(包括 IAM 实体(用户或角色)和 AWS 资源)的属性(标签)分配权限。

AWS 实现和其他上下文


GCP 指南:使用 Google Cloud IAM 策略通过角色分配来管理 GCP 资源访问。 您可以将 Google Cloud 的预定义角色用于常见的权限用例。 但是,您应该注意,预定义角色可能带有不应分配给用户的过多权限。

此外,将策略智能与 IAM Recommender 结合使用,以识别和删除账户中的过多权限。

GCP 实现和其他上下文


客户安全利益干系人(了解详细信息

PA-8 确定云服务提供商支持的访问流程

CIS Controls v8 ID NIST SP 800-53 r4 ID PCI-DSS ID v3.2.1
6.1, 6.2 AC-4、AC-2、AC-3

安全原则:建立审批流程和访问路径,用于请求和批准供应商支持请求,并通过安全通道临时访问您的数据。


Azure 指南:在 Microsoft 需要访问数据的支持方案中,使用客户密码箱查看并批准或拒绝 Microsoft 发出的每个数据访问请求。

Azure 实现和额外背景信息:


AWS 指南:在 AWS Support 团队需要访问您的数据的支持场景中,请在 AWS Support 门户中创建一个账户以请求支持。 查看可用选项,例如提供只读数据访问,或让 AWS Support 访问您的数据的屏幕共享选项。

AWS 实现和其他上下文


GCP 指南:在 Google Cloud 客户关怀团队需要访问您的数据的支持场景中,使用访问审批来查看并批准或拒绝 Cloud 客户关怀团队发出的每个数据访问请求。

GCP 实现和其他上下文


客户安全利益干系人(了解详细信息