CVE-2024-23897:通过@字符劫持 Jenkins 服务器

admin 2024-02-04 14:41:34 AnQuanKeInfo 来源:ZONE.CI 全球网 0 阅读模式

用户迫切需要采取推荐的安全措施来保持对系统的控制。

用于自动化 CI/CD 流程(持续集成/持续交付)的流行开源软件 Jenkins 的开发人员 已修复 9 个 安全漏洞,其中包括一个关键漏洞 – CVE-2024-23897,该漏洞会导致远程代码执行 ( RCE )。

CVE-2024-23897 被描述为通过本机命令行界面 (Jenkins CLI ) 的任意文件读取漏洞。Jenkins 中使用的命令解析器的一个功能是,如果命令参数中的文件路径遵循该符号,则用文件的内容替换“@”符号。此功能在 Jenkins 版本 2.441 及更早版本以及 LTS 2.426.2 及更早版本中默认启用,直到最近才被禁用。

利用该漏洞,攻击者可以使用控制器进程的标准字符编码读取 Jenkins 控制器文件系统中的任意文件。如果攻击者拥有“总体/读取”权限,他可以读取整个文件,但如果没有此权限,他只能读取文件的前 3 行,具体取决于 CLI 命令。

此外,该缺陷可被利用来读取包含加密密钥的二进制文件,尽管有一定的限制。提取秘密为各种攻击打开了大门:

通过资源根 URL 远程执行代码;

  • 通过“记住我”cookie 远程执行代码;
  • 通过构建日志使用XSS攻击(跨站脚本,XSS) 远程执行代码;
  • 通过绕过CSRF(跨站请求伪造)保护来远程执行代码;
  • 解密 Jenkins 中存储的秘密;
  • 删除Jenkins中的任何元素;
  • 下载Java堆转储。

Checkmarx 安全研究员Yaniv Nizri 因发现并报告该漏洞而受到赞誉,该漏洞已通过禁用命令解析功能在 Jenkins 版本 2.442 和 LTS 2.426.3 中修复。作为应用修复之前的临时解决方法,建议您禁用 CLI 访问。

weinxin
版权声明
本站原创文章转载请注明文章出处及链接,谢谢合作!
评论:0   参与:  0