本文主要是介绍Jenkins CLI 任意文件读取漏洞复现(CVE-2024-23897),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
0x01 产品简介
Jenkins 是一个开源的自动化服务器软件,用于构建、测试和部署软件项目。它提供了一种强大的方式来自动化软件开发和交付流程,以提高开发团队的效率和生产力。
0x02 漏洞概述
漏洞成因
命令行接口文件读取: Jenkins内置的命令行接口(CLI)存在一个特性,允许在命令参数中用@字符后跟文件路径来替换为文件内容。这导致攻击者能够读取Jenkins控制器文件系统上的任意文件。
权限绕过: 拥有Overall/Read权限的攻击者可以读取完整文件,而没有该权限的攻击者也可以读取部分文件内容。
漏洞影响
任意文件读取:
拥有Overall/Read权限的攻击者可以读取整个文件。
(默认情况下)没有Overall/Read权限的攻击者可以读取文件的前几行。可读取的行数取决于可用的CLI命令。
远程代码执行及其它影响:
攻击依赖攻击者能通过漏洞读取到二进制形式密钥以及其它前提条件,虽然攻击者可以读取包含二进制数据的文件,但是由于功能限制,某些字节无法成功读取并被占位符值替换,导致攻击者在读取部分密钥后仍然需要推算一定数量的字节(字节数根据Jenkins » System Information中file.encoding值的不同而存在差异)。虽然条件较多,但是仍存在一定利用可能性。
利用特征
使用POST请求/cli接口,且包体中含有he
这篇关于Jenkins CLI 任意文件读取漏洞复现(CVE-2024-23897)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!