当微软、Okta等巨头接连因"非人类身份"漏洞遭黑客攻陷,一场无声的安全危机正在全球企业蔓延——据OWASP最新报告,企业网络中非人类身份数量是人类的10-50倍,而它们正成为黑客最爱的"后门"。2024年多起史诗级数据泄露事件背后,竟都藏着这些不会说话的"数字员工"。
非人类身份(NHI)近年来成为网络安全领域热议话题,这背后有其充分理由——据估计,在企业网络中,每1000名人类用户就对应着10000个非人类连接或凭证。
一些估计甚至将该比例定得更高,认为非人类身份的数量是人类身份数量的10至50倍。鉴于凭证仍是安全漏洞中的主要攻击途径(根据Verizon的数据泄露调查报告),我们不难理解为何这会成为一个问题。
因此,OWASP首次发布非人类身份十大关键风险清单,旨在提高人们对NHI相关安全挑战的认识,提供针对关键NHI风险的可操作见解,并帮助组织优先实施相关最佳实践,这具有重要意义。
为了强调NHI带来的安全挑战,OWASP指出了几个近期发生的显著事件,如微软2024年的Midnight Blizzard数据泄露事件、互联网档案馆2024年的Zendesk支持平台数据泄露事件,以及2023年的Okta支持系统数据泄露事件,这些事件均涉及NHI。
OWASP的NHI风险第1位:不当的离职处理
我们都熟悉员工、承包商和资源进入组织、获得账户和访问权限,然后角色变更或离开组织的情况。在许多情况下,他们的账户会无限期地留在系统中,成为孤立账户或环境中残留的凭证。
这种情况同样发生在NHI上,且如前所述,其规模远超人类身份。在这种情况下,凭证通常与应用程序、服务、自动化工作流和系统相关联,这些实体被授予NHI凭证以便开展活动,但在相关应用程序、服务和实体停止使用或特定凭证不再需要时,却未得到清理。
缓解措施
为了缓解与不当离职处理相关的风险,OWASP建议实施标准化的离职处理流程,以审查与离职员工、应用程序、服务等可能不再需要的所有NHI。
为确保这些活动得到执行,建议尽可能自动化离职处理步骤,并定期审计活跃的NHI,以识别其使用情况并阻止潜在的滥用。这也有助于确定使用基线,并根据已知活动调整凭证及其相关权限。
NHI风险第2位:秘密泄露
列表中的第二位是秘密泄露。秘密通常用于描述API密钥、令牌、加密密钥等实体。有许多与秘密泄露相关的高调事件,如影响Codecov、三星和其他几家公司的事件,以及代码仓库、基础设施即代码(IaC)清单和CI/CD系统等秘密泄露源。
秘密泄露在2025年仍然是一个主要问题,这在OWASP列表中其排名第二即可见一斑。OWASP列举了Azure SAS令牌泄露和Delinea管理API密钥泄露导致事件发生的例子。
缓解措施
建议采取以下步骤来缓解秘密泄露的风险:使用临时凭证、部署秘密管理工具、自动化秘密检测以及定期轮换秘密。鉴于现代云原生开发环境中秘密数量庞大,组织无法手动执行这些活动,因此提供这些功能的秘密管理工具和供应商至关重要。
NHI风险第3位:易受攻击的第三方NHI
列表中的第三位是第三方NHI及其在集成开发环境(IDE)、扩展、第三方SaaS应用程序等方面的作用。2024年,安全研究人员发现,Visual Studio Code市场已被用于通过数千个恶意扩展感染数百万个安装。
如OWASP所指出的,这些扩展通常需要对开发者的机器进行大量访问,进而访问他们与之交互的资源和系统。他们引用的外部系统和服务示例包括版本控制系统、数据库、虚拟机和云环境。
因此,第三方通常会被提供API密钥、访问令牌和SSH密钥。这些凭证可能被恶意使用,以影响环境、进行横向移动、将受感染的代码引入软件开发生命周期(SDLC)等。
缓解措施
为了缓解第三方NHI的风险,OWASP建议采取以下活动:审查和限制第三方集成、监控和检测第三方行为,以及使用临时凭证或至少定期轮换它们。
NHI风险第4位:不安全的认证
在此,OWASP强调了开发人员与内部和外部服务的集成,包括SaaS应用程序和云环境。如其所指出的,这些各种内部和外部服务支持并使用各种认证方法,其中一些可能已过时、存在漏洞或不安全。OWASP建议开发人员使用标准化协议,如OAuth 2.1和OpenID Connect(OIDC)。
然后,OWASP提供了涉及不安全认证风险的示例攻击场景,如已弃用的OAuth流程、应用程序密码绕过多因素认证(MFA),以及不使用现代安全标准(如OAuth)的旧版认证协议。
缓解措施
OWASP建议采取缓解措施,以防止不安全认证带来的风险,例如采用现代认证标准(如OAuth 2.1和OIDC)、利用无凭证方法、标准化OAuth实现,以及对正在使用的认证方法进行定期安全审计,以逐步淘汰已弃用或不安全的实现和配置。
NHI风险第5位:过度特权的NHI
自网络安全早期以来,一直困扰身份和访问管理的一个基本问题是缺乏最小权限访问控制。尽管最近由于零信任等趋势以及NIST 800-207等来源的关注而日益受到重视,但最小权限访问一直是长期以来的网络安全最佳实践。
然而,云计算等技术趋势非但没有改善这一问题,反而使其愈发严重。对跨数万云环境和数百家组织的数十万个身份进行的分析发现,99%的云身份权限设置过于宽松。
鉴于我们历史上一直在这个挑战上挣扎,因此在OWASP(开放Web应用安全项目)NHI(非人类身份)十大风险中看到它也就不足为奇了。与人类身份相比,NHI的数量呈指数级增长,这使得问题更加严重。
正如OWASP所述,为NHI合理设置权限既困难又耗时。因此,组织不太可能持续监控这些权限,尤其是在没有足够工具和能力协助的情况下。
问问自己:如果我们将多个风险结合起来,比如长期存在的、权限设置过于宽松的NHI的不当撤销,这些NHI极易被恶意行为者利用,那么这对组织来说会有什么后果?
后果不容乐观。
这会导致一种情况,即这些NHI一旦被攻破,可能会对攻击范围、横向移动、敏感数据访问等产生巨大影响。
OWASP提供了示例攻击场景,包括权限过高的Web服务器用户、虚拟机、OAuth应用程序和具有过多权限的服务账户。
缓解措施
OWASP建议的缓解措施包括实施最小权限原则、定期审计和审查权限、建立预防性护栏以及利用即时(JIT)访问。
这一问题的欺骗性在于,表面上看实施最小权限原则似乎很简单,但任何从业者都知道,在拥有多个身份提供者、数千个身份和凭证的大型复杂环境中,做到这一点绝非易事,这也正是自网络安全诞生以来就一直影响其的问题所在。
NHI风险第6项:不安全的云部署配置
对于在云环境或周边工作的人来说,不安全的配置构成重大风险,并且这一风险已经存在相当一段时间了,这早已不是新闻。包括Gartner在内的组织都表示,99%的云安全事件是由于客户配置错误造成的。
当我们查看云中的重大事件时,这通常由于存储、存储桶、加密、公开暴露的资产等问题而得到证实。
OWASP对这一问题的处理方法很有趣,因为它被称为不安全的云部署配置,但重点却放在了CI/CD(持续集成/持续交付)管道上。尽管如此,它讨论了与代码库、日志或配置文件相关联的凭证如何通过CI/CD环境存储/传输,并可能被攻破和滥用,以绕过多因素认证(MFA)、进行横向移动等。OWASP强调了更安全的选项,如OIDC(开放身份连接),以允许CI/CD管道获取短期动态生成的令牌进行身份验证,而不是使用静态的长期凭证。
缓解措施
建议的缓解措施包括使用OIDC进行安全身份验证、从静态凭证转向通过OIDC动态生成的令牌、为CI/CD管道实施最小权限、限制IAM(身份和访问管理)角色中的信任关系、避免硬编码凭证,而是使用AWS Secrets Manager和Azure Key Vault等工具,以及最后定期扫描存储库以查找暴露的凭证。
NHI风险第7项:长期存在的秘密
NHI通常涉及秘密数据,如API密钥、令牌、加密密钥和证书。长期存在的秘密是指没有过期日期或过期日期过长的秘密。OWASP提到,这些秘密有助于组织内部服务和资源的应用程序身份验证和集成。
任何形式的长期凭证都是有问题的,因为它们可能成为攻击者的诱人目标,秘密也不例外。它们可能导致通过过时和被盗的访问令牌进行权限提升,以及通过被盗的长期Cookie进行会话劫持,并且它们还构成了另一个等待被攻破和滥用的目标。
缓解措施
OWASP建议启用自动化密钥轮换、实施短期凭证、采用零信任原则,以及实施最小权限原则。这种缓解措施的组合使秘密更加短暂和动态,并增强了架构,以在秘密被攻破时限制攻击范围。
NHI风险第8项:缺乏环境隔离
除了实施零信任原则外,环境隔离还可以减轻涉及NHI的事件(如果发生)的影响。
环境隔离是安全软件开发和网络安全中常见的实践,NIST(美国国家标准与技术研究院)安全软件开发框架(SSDF)等其他来源也提到了这一点。
虽然不同组织和开发团队的环境可能有所不同(例如,开发环境、测试环境、生产环境等),但环境隔离的基本原理是普遍适用的。
OWASP建议为每个环境使用单独的NHI,应用最小权限原则,实施环境特定的访问控制,并定期审计和监控NHI的未经授权访问尝试。遵循这些原则可以限制一个环境中的攻破或事件对其他环境的影响。
缓解措施
除了上述缓解措施外,OWASP还建议采取特定的缓解措施,包括严格隔离NHI的环境、应用最小权限原则、实施环境特定的访问控制,以及为敏感资源隔离基础设施。同样,这里的主题是通过这些缓解控制和措施减轻系统性影响,并将其限制在特定环境中。
NHI风险第9项:重用NHI
凭证重用一直是从业者所警告的问题,但尽管如此,它还是进入了各种合规框架、最佳实践指南等。因此,在这里看到它被列为NHI的风险因素也就不足为奇了。
如上文表格所述,为每个NHI定制细粒度权限可能很复杂,因此组织可能会默认重用权限广泛的NHI。这使得它们成为具有广泛影响攻击后果的诱人目标。
OWASP讨论了NHI(如服务账户、API密钥和机器凭证)对于现代应用程序、服务、身份验证和授权的重要性。
假设组织在多个应用程序和服务中重用NHI,那么其潜在影响是显著的——如果重用的其中一个NHI被攻破,尤其是如果它权限过高(NHI5),并且缺乏环境隔离(NHI8),这可能导致漏洞/攻击链,并对组织产生广泛影响。
OWASP提供了示例,如重用Kubernetes服务账户、在应用程序之间共享API密钥,以及在不同服务和资源中重用云凭证(如AWS IAM角色)。
缓解措施
为了缓解这些风险,OWASP建议为每个应用程序或服务及其环境分配唯一的NHI,实施最小权限原则,并审计和审查NHI的使用。
NHI风险第10项:人类使用NHI
NHI(如服务账户、API令牌、工作负载身份和秘密)使程序能够访问应用程序和服务。然而,正如OWASP所讨论的,开发人员或用户滥用NHI进行手动任务,而非其原本意图的自动化活动和工作流,这种情况并不少见。
这带来了多种风险,因为人类活动可能被视为程序化活动,从而限制了审计和监控,掩盖了良性内部人员的活动,甚至可能掩盖内部威胁,以及最值得注意的是,潜在攻击者。
OWASP列举了示例场景,如管理员使用服务账户凭证、开发人员使用NHI执行命令、团队成员之间共享API令牌,甚至攻击者利用NHI进行持久化攻击。
缓解措施
OWASP NHI十大风险中最后一项风险的缓解措施包括使用专用身份、审计和监控NHI活动(我们已多次看到这一点)、使用上下文感知访问控制,以及教育开发人员和管理员了解人类使用NHI的风险。这些措施提供了技术和文化控制,以限制人类使用NHI及其相关风险。