github.com/argoproj/argo-cd 中的跨站点请求伪造 (CSRF) (CVE-2024-22424)

admin 2024-01-22 11:01:11 Ali_nvd 来源:ZONE.CI 全球网 0 阅读模式
github.com/argoproj/argo-cd 中的跨站点请求伪造 (CSRF) (CVE-2024-22424)

CVE编号

CVE-2024-22424

利用情况

暂无

补丁情况

N/A

披露时间

2024-01-19
漏洞描述
Argo CD是一个基于声明式的GitOps持续交付工具,用于Kubernetes。在2.10-rc2、2.9.4、2.8.8和2.7.15之前的Argo CD API存在跨服务器请求伪造(CSRF)攻击漏洞,在攻击者能够向与Argo CD同一父域的页面编写HTML时会受到影响。CSRF攻击通过诱使经过身份验证的Argo CD用户加载一个包含调用受害者帐户的Argo CD API端点代码的网页来进行。例如,攻击者可以向Argo CD用户发送一个看似无害的页面链接,但在后台调用Argo CD API端点来创建运行恶意代码的应用程序。Argo CD使用“宽松”SameSite Cookie策略来防止攻击者控制外部域的CSRF攻击。恶意外部网站可以尝试调用Argo CD API,但是Web浏览器会拒绝发送带有请求的Argo CD验证令牌。许多公司将Argo CD托管在内部子域中。如果攻击者能够在例如https://test.internal.example.com/上放置恶意代码,他们仍然可以执行CSRF攻击。在这种情况下,“宽松”SameSite Cookie无法防止浏览器发送身份验证Cookie,因为目标是Argo CD API的父域。通常,浏览器通过对具有敏感内容类型的敏感请求应用CORS策略来阻止此类攻击。特别是,浏览器将针对内容类型为“application/json”的POST请求发送“预检请求”,询问目标API“是否允许接受来自我的域的请求?”如果目标API没有回答“是”,浏览器将阻止该请求。在修补版本之前,Argo CD没有验证请求是否包含正确的内容类型头。因此,攻击者可以通过将内容类型设置为被认为是“不敏感”的内容,例如“text/plain”,绕过浏览器的CORS检查。浏览器不会发送预检请求,Argo CD将愉快地接受内容(实际上仍然是JSON)并执行所请求的操作(例如运行恶意代码)。此漏洞的修补程序已在以下Argo CD版本中发布:2.10-rc2、2.9.4、2.8.8和2.7.15。修补程序包含了破坏性的API更改。Argo CD API将不再接受未指定application/json作为其Content-Type的非GET请求。可接受的内容类型列表可以配置,并且可以(但不建议)完全禁用内容类型检查。建议用户升级。此漏洞没有已知的解决方法。
解决建议
建议您更新当前系统或软件至最新版,完成漏洞的修复。
参考链接
https://github.com/argoproj/argo-cd/issues/2496
https://github.com/argoproj/argo-cd/pull/16860
https://github.com/argoproj/argo-cd/security/advisories/GHSA-92mw-q256-5vwg
CVSS3评分 8.3
  • 攻击路径 网络
  • 攻击复杂度 高
  • 权限要求 无
  • 影响范围 已更改
  • 用户交互 需要
  • 可用性 高
  • 保密性 高
  • 完整性 高
CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:H
CWE-ID 漏洞类型
- avd.aliyun.com
weinxin
版权声明
本站原创文章转载请注明文章出处及链接,谢谢合作!
N/A Ali_nvd

N/A

N/ACVE编号 CVE-2024-9120利用情况 暂无补丁情况 N/A披露时间 2024-09-23漏洞描述Use after free in Dawn
评论:0   参与:  0