Jenkins Git Client插件远程号令执行缝隙安全公告

颁布功夫 2019-09-18

●缝隙编号和级别


CVE编号:CVE-2019-10392 ,危险级别:高危 ,CVSS分值:8.8


●影响版本


受影响的版本


Git Client Plugin <= 2.8.4


●缝隙概述


Jenkins Git Client插件中发现远程号令执行缝隙 。Git Client插件为Jenkins插件提供了git利用法式编程接口(API) 。 它能够获取 ,签出 ,分支 ,列表 ,归并和象征存储库 。 Git Client接口提供git接见的重要入口点 。 它支持Jenkins痛处插件提供的用户名/密码痛处和私钥凭证 。这个插件据官方数据装置量有24万多 ,装置量比力大 。


该缝隙源于Git客户端插件接受用户指定的值作为挪用git ls-remote的参数 ,以验证指定URL处是否存在Git存储库 。 这是以允许拥有作业/配置权限的攻击者在Jenkins主服务器上执行肆意系统号令作为Jenkins过程在运行的OS用户的方式实现的 。由于接管用户输入Repository URL而没有做过滤 ,导致了与git ls-remote号令拼接 ,执行了用户可控的号令 。


●缝隙验证


EXP:https://iwantmore.pizza/posts/cve-2019-10392.html 。


●建复建议


升级Git Client Plugin:


https://plugins.jenkins.io/git-client 。


●参考链接


https://jenkins.io/security/advisory/2019-09-12/#SECURITY-1534