CVE-2024-23897 Jenkins 未授权任意文件读取漏洞分析

admin 2024年3月4日00:11:34评论41 views字数 1271阅读4分14秒阅读模式
CVE-2024-23897 Jenkins 未授权任意文件读取漏洞分析

感谢师傅 · 关注我们

CVE-2024-23897 Jenkins 未授权任意文件读取漏洞分析

由于,微信公众号推送机制改变,现在需要设置为星标才能收到推送消息。大家就动动发财小手设置一下呗!啾咪~~~

CVE-2024-23897 Jenkins 未授权任意文件读取漏洞分析

CVE-2024-23897 Jenkins 未授权任意文件读取

漏洞描述

Jenkins 是基于 Java 开发的一种持续集成工具。2024年1月25日,Jenkins 官方披露 CVE-2024-23897 Jenkins CLI 任意文件读取漏洞。Jenkins 受影响版本中使用 args4j 库解析CLI命令参数,攻击者可利用相关特性读取 Jenkins 控制器文件系统上的任意文件(如加密密钥的二进制文件),并结合其他功能等可能导致任意代码执行。

影响版本

Jenkins weekly <= 2.441
Jenkins LTS <= 2.426.2

环境搭建

docker 起

docker pull bitnami/jenkins:2.426.2-debian-11-r3  
docker run -e "JAVA_OPTS=-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=0.0.0.0:5005" -d --name jenkins -p 8081:8080 -p 8777:5005 bitnami/jenkins:2.426.2-debian-11-r3

管理员账号密码为:user/bitnami

漏洞分析

官方通告 https://www.jenkins.io/security/advisory/2024-01-24/

在处理 CLI 命令时,Jenkins 使用 args4j 库来解析 Jenkins 控制器上的命令参数和选项。这个命令解析器有一个功能,可以用文件的内容(expandAtFiles)替换参数中的 @ 字符和文件路径。此功能默认启用

接下来看一下 Jenkins 的 CLI 命令是什么 https://www.jenkins.io/zh/doc/book/managing/cli/

CVE-2024-23897 Jenkins 未授权任意文件读取漏洞分析

这里基本上已经可以打了,很简单的一个洞

java -jar jenkins-cli.jar -s http://192.168.80.139:8081 who-am-i '@/etc/passwd'

patch

https://github.com/jenkinsci/jenkins/compare/jenkins-2.441...jenkins-2.442#diff-5918f52b773cba16c7e0a74e139d637ae4b4f59e18435f1f1dc137979a46ae4c

断点下在CLICommand#getCmdLineParser

CVE-2024-23897 Jenkins 未授权任意文件读取漏洞分析

先获取到参数,往下看,判断了当前的指令类型

CVE-2024-23897 Jenkins 未授权任意文件读取漏洞分析

跟进parseArgument()对参数进行处理,getAtSyntax 默认为 true,跟进expandAtFiles方法

CVE-2024-23897 Jenkins 未授权任意文件读取漏洞分析

后面就很明显了,判断参数是否为@符号开头,随后任意文件读取

CVE-2024-23897 Jenkins 未授权任意文件读取漏洞分析

CVE-2024-23897 Jenkins 未授权任意文件读取漏洞分析

小结

很简单的一个洞,因为是库的问题,所以其他很多系统中也有相同的问题

原文始发于微信公众号(黑客白帽子):CVE-2024-23897 Jenkins 未授权任意文件读取漏洞分析

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年3月4日00:11:34
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   CVE-2024-23897 Jenkins 未授权任意文件读取漏洞分析http://cn-sec.com/archives/2542799.html

发表评论

匿名网友 填写信息