最小特权原则

摘抄 https://tailscale.com/learn/principle-of-least-privilege#why-do-you-need-principles-of-least-privilege


企业网络是企业每个部门都会用到的。确保员工能够访问所需的资源至关重要,但过多的访问权限可能会导致严重的安全风险。在本指南中,您将了解最小特权原则的含义以及它如何帮助保护企业系统的安全

处理数据的组织拥有众多工具和资源,但他们需要注意数据安全。确保数据安全的一个重要方法是遵循最小特权原则 (PoLP)——有时也称为最小访问原则或最小权限原则。

有了 PoLP,员工只能访问其工作所必需的数字资源。这降低了未经授权访问或滥用数据的风险。根据 2021 年的一项研究,美国和英国各行各业94% 的组织都曾遭遇过内部人员引发的数据泄露事件。这些泄露事件大多是人为失误造成的,但也有一些是蓄意破坏。

在本文中,您将了解有关 PoLP 的更多信息以及如何在您的组织中实施它。

为什么需要最小特权原则?

遵循 PoLP 实践可确保数字平台用户拥有足够的权限来执行其日常功能。例如:在一家拥有强大开发团队并遵循 PoLP 的科技公司中,软件工程师无法访问部署服务器。然而,DevOps 工程师可以访问部署服务器,但不能访问数据库,因为数据库属于数据库管理团队的职责。而数据库管理团队只能访问数据库服务器。

PoLP 鼓励将权限划分为描述不同用户职责的角色。不过,它确实提供了一定的灵活性。您可以根据需要临时提升用户的权限,以便在需要时解决特定挑战。

最小特权原则面临哪些挑战?

PoLP 的实施可能不完善或不恰当,从而导致更大的问题。以下是不良权限管理的一些弊端:

  • 最低权限可能会过于严格。虽然您需要保护公司,但您也需要秉持诚信原则,授予足够的权限,确保员工能够完成工作。找到合适的平衡点需要审查公司的职位描述,并信任员工会以组织的最佳利益行事。
  • 过多的权限可能会造成过度使用。设置很少或没有限制可能会导致员工将广泛的访问权限视为理所当然,如果团队成员受到损害或心怀不满,这可能会造成持久的损害。在极少数情况下,团队成员的角色定义不明确,并且会随着业务需求的变化而变化,您可以实施临时权限并探索重组这些角色以避免此类问题。
  • PoLP 可能会助长微观管理。如果员工晋升但仍继续担任之前的职务,他们可能会继续参与低级别员工的活动,从而剥夺这些员工对工作的归属感。为了避免微观管理,您的组织应该强制执行特定的结构并明确界定角色。
  • PoLP 可能会造成不必要的瓶颈。拥有更多权限和更少限制的高级员工往往会占用更多时间。如果低级员工在完成某些任务之前需要获得许可或批准,PoLP 可能会造成瓶颈,从而抑制公司的生产力。确保负责核心任务审批或审核权限的员工能够妥善处理这些工作。

最小特权原则如何帮助您的组织?

以下是 PoLP 对您的应用程序很重要的一些原因:

  • 用户只能访问他们需要的内容。不受限制的员工数据访问可能会危及客户的安全,并使您的组织容易受到安全漏洞的攻击。仅授予员工他们需要的访问权限,可以显著降低发生问题的可能性。
  • 员工可以使用具有不同权限级别的不同账户。您的组织或许能够提供基于环境的权限,并赋予不同级别的权限。例如,使用虚拟专用网络 (VPN) 或虚拟私有云 (VPC) 的用户比未使用 VPN 或 VPC 的用户拥有更多权限,或者,有权访问测试环境的用户比没有此类访问权限的用户拥有更多操作权限。
  • 用户只运行必要的应用程序。用户不能运行与其工作无关的应用程序。这减少了对资源密集型应用程序或限制活跃用户数量的应用程序的需求。
  • 您的数字环境更加稳定。由于建立这些边界意味着需要修改代码和文档的员工更少,您可以更好地控制产品质量。
  • 您的安全性更强。权限划分确保只有更高级别的人员才能访问敏感数据或执行广泛的操作。
  • 您可以更轻松地部署变更。使用明确的规则来规定谁执行哪些任务有助于减少歧义。具有特定权限的用户角色将负责执行特定的任务,从而简化部署。
  • 您可以更准确地调查数据泄露事件。明确的用户角色可以识别哪些用户可以执行特定操作,从而在发生数据泄露时更快地进行审计和调查。
  • 低级别用户无法造成大规模违规。对低级别用户的限制可以限制任何疏忽或恶意行为对公司造成的损害程度。
  • 您可以更好地监督修改。一套具有多级审批机制的架构,确保对数据库或代码库的更改无法轻易撤销。

关于基于权限的攻击

然而,为用户角色分配权限的一个风险是,恶意攻击者可能会利用这些角色窃取公司数据或破坏基础设施。以下是一些常见的基于权限的攻击类型,您应该予以防范。

权限提升攻击

在权限提升攻击中,攻击者利用应用程序或系统中的错误或缺陷来访问更高级别的资源。权限提升攻击分为两种类型:垂直提升攻击和水平提升攻击。

垂直权限提升

在垂直权限提升攻击中,攻击者利用应用程序中的漏洞或 PoLP 规则和策略中的边缘情况,以访问比分配给攻击者用于渗透系统的角色的更高级别的公司资源。

水平权限提升

在水平提权攻击中,攻击者会劫持具有类似角色的用户的凭证,以访问其资源或入侵公司。这种攻击有时是人为错误而非社会工程技术造成的。一种常见的社会工程方法被称为“肩窥”,即在受害者输入凭证时对其进行监视。

特洛伊木马攻击

特洛伊木马攻击是一种恶意软件,它在下载或安装时隐藏其真实目的,然后劫持或破坏数字基础设施。

凭证泄露

攻击者可以通过员工共享凭证或通过肩窥等社会工程方法获取员工的凭证。

凭证被盗

凭证可以通过多种方法被窃取,包括数据泄露、设备盗窃、包含用户凭证的文件盗窃或将利益相关者凭证暴露给攻击者的网络安全漏洞。

恶意内部人员

心怀不满的员工或用户试图破坏公司业务尤其危险,因为大多数网络安全措施都无法保护您免受内部敌人的侵害。您可以运用适当的规划、公司政策和 PoLP 来降低这种威胁。

网络钓鱼

网络钓鱼会诱骗用户提供个人信息或登录凭证。网络钓鱼攻击可能通过受感染同事的电子邮件、域名抢注社交媒体挑战进行。网络钓鱼可能难以防御;至少,您应该确保您的员工保持警惕,始终确认他们在常规沟通渠道之外收到的消息的真实性。

如何实施最小特权原则

以下是一些可用于实施 PoLP 实践同时降低攻击风险的最佳实践:

  • 识别每个用户的所有权限。这是实施 PoLP 的第一步。通过识别单个权限,您可以评估这些权限是否处于适当的级别。
  • 消除不必要的管理权限。低级别员工不应拥有数据或其他数字资源的管理权限。
  • 为管理员创建不同的账户。多个员工不应共享同一个管理员账户的登录凭据,因为这样很难识别入侵公司账户的人员。每个用户都应该拥有一个单独的账户,并根据需要分配相应的管理员权限。
  • 安全存储管理员帐户凭据。管理员帐户凭据不应处于未加密或未屏蔽状态。请使用密码管理器和身份验证器应用程序进行管理。
  • 设置临时权限提升。为了满足业务需求,可能需要临时为用户分配更多权限。这应该有时间限制,并经常进行审核。权限提升可以指授予用户对服务器的临时访问权限,或提供一次性密码。
  • 监控系统中的可疑活动,尤其是管理员配置文件。 [用户活动监控软件](https://www.trustradius.com/user-activity-monitoring#:~:text=Best User Activity Monitoring Software)可以有效地实时监控管理员帐户。简单的检查,例如管理员登录时的 GPS 位置,可以帮助发现一系列潜在的有害操作。您还可以限制来自无法识别的 IP 地址的管理员帐户访问,以及其他锁定协议
  • 轮换密钥和凭证。定期生成新的访问密钥有助于最大程度地降低凭证被盗用的可能性。您可以通过现成的应用程序来实现此目的,也可以将此功能添加到内部应用程序中。如果您使用第三方解决方案,请在使用轮换之前咨询您的供应商,以便正确处理。
  • 定期重新评估用户权限。每年至少召开两次以用户权限为重点的管理会议,了解是否有任何角色需要添加或删除访问权限。这些会议还应考虑您的业务需求以及公司运营所在国家/地区的法律。
  • 在必要时创建基于属性的权限。可以访问特定服务器和数据库的测试环境或沙盒可以帮助强制执行基于属性的权限。
  • 设置密码过期规则。自动过期密码可确保用户定期更新其凭证,从而降低被盗风险。大多数情况下,此功能可通过管理设置轻松实现。
  • 实施多因素身份验证。生物特征身份验证和一次性密码 (OTP) 等方法有助于限制凭证被盗、网络钓鱼和凭证泄露,同时确保员工使用特定凭证访问您的数字环境。

结论

实施 PoLP 是贵组织防范安全漏洞最有效的方法之一。虽然有些用户可能会抵制这些做法,或者认为您不信任他们,但请向他们保证,PoLP 确实会强化贵公司的架构和运营。

您可以使用许多工具来帮助您维护 PoLP 实践。例如,Tailscale是一项去中心化的 VPN 服务,它可以让您直接与团队成员连接,而无需配置内部网络。您可以使用访问控制列表来确保用户只获得他们需要的访问权限。Tailscale 还会加密连接,以便只有您组织网络上的设备才能连接和通信。