API NEWS | 三个Argo CD API漏洞

Posted starcross

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了API NEWS | 三个Argo CD API漏洞相关的知识,希望对你有一定的参考价值。

欢迎大家围观小阑精心整理的API安全最新资讯,在这里你能看到最专业、最前沿的API安全技术和产业资讯,我们提供关于全球API安全资讯与信息安全深度观察。

本周,我们带来的分享如下:

  • 关于三个Argo CD API漏洞的文章

  • Gartner对API安全的看法

  • 分布式标识是现代API安全的关键

 关于三个Argo CD API漏洞的文章

 Argo CD是Kubernetes中最受欢迎和增长最快的GitOps工具。当遵循GitOps部署模式时,Argo CD可以轻松定义一组应用程序,它们在存储库中具有所需的状态以及它们应该部署的位置。部署后,Argo CD会持续监控状态,甚至可以捕捉配置漂移。

一篇由Security Boulevard提供的漏洞文章,涵盖了Argo CD部署平台中的三个独立的API漏洞。

第一个漏洞 (CVE-2023-22736)是一个允许绕过授权的严重漏洞。Argo CD软件中存在一个漏洞,会使得恶意用户在没有得到授权的情况下,在系统允许范围外部署应用程序。这个漏洞只影响启用了“任何命名空间中的应用程序”功能的用户,并且从2.5.0版本开始就存在。但是,现在Argo CD发布了2.5.8和2.6.0-rc5补丁来修复这个问题。如果您使用的是Argo CD,请及时升级到最新版本以保护您的系统安全。

第二个漏洞 (CVE-2023-22482)是由不当授权导致的严重问题。由于Argo CD在验证令牌时没有检查受众声明,导致攻击者可以使用无效的令牌来获取权限。如果您使用的OIDC提供商同时为其他用户提供服务,那么您的系统将接受来自这些用户的令牌,并根据用户组权限授予对应的权限,这就非常危险了。该漏洞影响所有从v1.8.2开始的Argo CD版本。为了修复这个问题,Argo CD发布了版本2.6.0-rc5、2.5.8、2.4.20和2.3.14中的补丁,引入了一个新的功能——“允许受众”,允许用户指定他们想要允许的受众。如果您正在使用Argo CD,请尽快更新到最新版本并配置好“允许受众”,以保护您的系统。

第三个漏洞(CVE-2023-25163)是Argo CD软件中的一个问题,会导致存储库访问凭据泄露。这个漏洞的严重程度中等,会在未能正确清理输出时,泄露敏感信息。此问题影响所有从v2.6.0-rc1开始的Argo CD版本。如果您正在使用受影响的版本,建议尽快升级到更新的版本来修复这个漏洞,以保护您的系统安全。

 最近的这些漏洞再次强调了API安全性的重要性,也显示出公司必须高度关注保护其API。随着API在现代应用程序中的广泛使用,攻击者越来越频繁地利用API漏洞来入侵系统。因此,保护API已经成为任何组织安全策略中的至关重要的一部分,需要采取安全措施和最佳实践来确保数据和系统的安全。只有这样,才能保证企业在数字化时代获得最高水平的安全保障。

 

关于Gartner 对 API 安全的看法

 Gartner副总裁分析师兼软件工程研究主管Mark O\'Neill对最近发布的第4份年度API现状报告的看法,该报告收集了来自 850多名全球开发人员的意见。

 O\'Neill的第一个观察结果是,组织在其资产中部署多个API网关(及多个云提供商)。这使得API策略的集中管理成为一个复杂的问题,因为分布式环境缺乏良好的联合管理解决方案。因此,团队不得不独立管理多个网关。

  • O\'Neill的第二个观察结果是,API管理和安全性因使用的API类型种类繁多而变得复杂,比如:REST、Webhooks、Websockets、SOAP、GraphQL、Kafka、AsyncAPI、gRPC。从安全角度来看,特别值得注意的是GraphQL,它允许跨数据进行深入且广泛的查询,因此很难分辨要保护什么数据。另外,GraphQL也是无状态显示的,因此安全团队必须正确实施身份验证和授权。

 在资产中部署多个API网关可能会带来以下缺点:

  • 复杂性增加:多个API网关的部署可能会导致系统复杂性的增加,包括配置、管理、监控和维护等方面的复杂性,这可能会增加管理工作量,并可能导致更多的故障和问题。

  • 安全性降低:多个API网关的部署可能会增加安全风险。对于每个API网关的维护和更新都需要进行独立的安全审计和更新,这可能会导致遗漏漏洞或错误配置的情况出现,从而降低系统的整体安全性。

  • 性能受影响:多个API网关的部署可能会导致性能降低,因为每个API网关都需要处理网络和访问控制等方面的开销,这可能会增加延迟和资源消耗。

  • 难以维护:使用多个API网关也可能会使维护变得困难,因为不同的API网关可能使用不同的技术和配置方法,这可能会导致混乱和错误的配置。

 

O\'Neill对API安全有以下建议:

  • 确保管理者拥有组织内API的最新清单,这包括上游和下游API以及内部和外部 API。

  • 采用API标准(如开放银行计划)来改善整体安全状况。

 小阑解读,通过以下安全手段,可以改善提高系统的性能、可用性和安全性:

  • 优化架构:通过进行系统设计和架构优化,可以将多个API网关合并为一个更简单、更统一的API网关。这有利于降低复杂性、提高安全性、提升性能,并且更易于管理和维护。

  • 集中管理:使用集中式API管理工具,可以减少重复的配置和管理工作,以及统一审计和更新API网关。这样可以提高管理效率、降低出错率并加强整体安全性。

  • 实时监控:使用实时监控工具可以对所有API网关进行统一的监控和报告。这样可以快速发现和解决问题,从而提高系统的可用性和稳定性。

  • 强化安全:采取多层次的安全策略,包括防火墙、入侵检测、访问控制和数据加密等技术,可以增强系统的整体安全性。此外,还可以使用完备的安全审计和漏洞扫描等手段,确保系统的安全性得到全面保障。

 

预计未来的API管理工具将会继续解决身份验证和授权方面的挑战,同时还会出现API特定的“扫描和发现”工具。此外,安全工具还可以提供运行时保护功能,微网关则可以在一定程度上防止API攻击。换句话说,未来开发API时,需要使用一些专门的工具来解决涉及身份验证、授权、安全等问题,从而提高API的安全性和可靠性。同时,通过使用这些特定的工具和技术,可以更好地发现和解决API中存在的安全漏洞或问题,确保API系统稳定、可靠、安全。

 

关于分布式标识是现代API安全的关键

 来自Curity的分享,是一篇关于分布式标识的文章。分布式标识确实是现代API安全的关键之一。其主要作用是为了确保API调用者的身份验证和授权。传统的单点登录方案已经不能满足云计算、微服务、容器化等复杂环境下API的安全需求。

 在分布式系统中,API调用者身份的认证和授权需要跨越多个服务边界进行验证,因此需要一个支持分布式场景的标识体系。具体而言,分布式标识需要包括以下几个方面:

  • 全局唯一性:分布式标识必须是全局唯一的,这意味着每个请求都必须带有唯一标识以便于统计、审计和识别。

  • 安全性:分布式标识必须是安全的,不可伪造的,以保证认证和授权的合法性。例如,使用OAuth 2.0协议可以通过令牌机制提供安全的认证和授权服务。

  • 可扩展性:分布式标识必须是可扩展的,在系统规模扩大的情况下,它能够无缝地融入到整个系统中,以满足业务需求。

 身份分配在实践中存在一些挑战,其中包括:

  • 复杂的身份管理:身份分配通常涉及到复杂的身份管理工作,例如用户帐号和角色定义、权限管理等。这些管理工作需要定期更新和维护,以确保系统的安全性和完整性。

  • 身份认证难度:身份分配需要执行正确的身份认证,但不同类型的身份认证可以有不同的挑战。例如,基于口令的认证可能面临密码泄露或者强度不足等问题,而基于生物特征的认证可能面临误识别和欺骗攻击等问题。

  • 信任建立:身份分配需要建立各个系统间的信任关系,并确保身份信息的传递是可靠和安全的。这需要使用合适的加密措施以及可靠的身份验证和授权协议。

  • 风险管理:身份分配面临一些风险,例如,身份被盗用、身份信息泄露、未经授权访问等。因此,身份分配需要结合风险管理策略,采取多种安全措施来防范这些风险的出现。

  • 相互兼容:在多个系统或应用程序间实现身份共享和分配时,需要保证各系统之间的互操作性和数据兼容性。这需要使用标准化身份协议和API接口,以确保不同系统之间能够良好地交互和共享身份信息。

 分发标识的最佳实践:

  • 采用身份和访问管理(IAM)工具来管理身份:使用IAM工具可以帮助您自动化身份分配和权限控制,从而提高效率和安全性。此外,IAM 工具还支持身份验证、多因素认证、网关和应用程序防火墙等功能。

  • 采用安全标识协议:使用安全标识协议来加强对分发标识的安全性,例如OAuth2.0,OpenID Connect等。这些协议可以帮助您确保分发的标识是可靠、安全的,而不会泄露出去。

  • 推行最小化权限策略:在分发标识时,一定要遵循最小化原则,只分配必需的权限,以减少攻击面。这可以通过基于角色进行权限管理来实现,并使用多层次的安全策略确保分发的身份是具有限制的。

  • 使用公钥加密技术来保护数据:使用公钥加密技术来加密和存储分发标识数据可以保证数据安全,使攻击者更难突破和泄漏。

  • 实现审计与监控: 需要实施审计与监控解决方案来跟踪和记录身份和访问管理活动,以便及时发现并回应安全事件和威胁。

  • 建立标准流程和规范:建立分发标识的流程和规范,包括身份验证、授权程序等,可以帮助保证认证和授权的一致性和完整性。

 

感谢 APIsecurity.io 提供相关内容

 

关于星阑

星阑科技基于AI深度感知和强大的自适应机器学习技术,帮助用户迅速发现并解决面临的安全风险和外部威胁,并凭借持续的创新理念和以实战攻防为核心的安全能力,发展成为国内人工智能、信息安全领域的双料科技公司。为解决API安全问题,公司从攻防能力、大数据分析能力及云原生技术体系出发,提供全景化API识别、API高级威胁检测、复杂行为分析等能力,构建API Runtime Protection体系。

星阑科技产品——萤火 (API Intelligence) 拥有不同应用场景的解决方案,适配服务器、容器集群、微服务架构以及云平台等多种架构。通过API资产梳理、漏洞管理、威胁监测、开放式数据平台、运营与响应能力,解决企业API漏洞入侵、行为异常、数据泄露等核心风险。

Tekton 与 Argo CD 结合实现 GitOps

,但是 CD 是在 Tekton 的任务中去完成的,现在我们使用 GitOps 的方式来改造我们的流水线,将 CD 部分使用 Argo CD 来完成。

这里我们要先去回顾下前面的 Tekton 实战部分的内容,整个流水线包括 clone、test、build、docker、deploy、rollback 几个部分的任务,最后的 deploy 和 rollback 属于 CD 部分,我们只需要这部分使用 Argo CD 来构建即可。