开源自动化服务器软件 Jenkins 被曝严重漏洞,可泄露敏感信息

 聚焦源代码安全,网罗国内外最新资讯!

编译:奇安信代码卫士团队

本周一,热门开源自动化服务器软件 Jenkins 发布安全公告称,Jetty web 服务器中存在一个严重漏洞,可导致内存损坏并导致机密信息被盗。

该漏洞的编号为 CVE-2019-17638,CVSS 评分为9.4,影响Eclipse Jetty9.4.27.v20200227至9.4.29.v20200521 版本。Elipse Jetty 是一款全功能工具,为软件框架提供 Java HTTP 服务器和 web 容器。

该安全公告指出,“当开始使用 java-jar Jenkins.war时,Jenkins 捆绑围绕 Jetty 的封装 Winstone-Jetty,当作 HTTP 和 servlet服务器。这是使用任何安装程序或软件包时运行 Jenkins 的方式,而不是使用诸如 Tomcat 之类的 servlet 容器运行时的方式。”

安全公告指出,“该漏洞可导致未认证攻击者获取可能包含其它用户敏感数据的 HTTP响应标头。”该漏洞影响 Jetty 和 Jenkins Core,似乎在 Jetty 版本9.4.27 中引入。该版本中增加了处理大型 HTTP 响应标头并阻止缓冲区溢出的机制。

Jetty 的项目主管 Greg Wilkins 表示,“这个问题存在于缓冲区溢出中,我们发布了标头缓冲区但字段不是null。”为此,Jetty 抛出一个异常生成 HTTP 431 错误,导致HTTP响应标头两次被发布到缓冲区池,从而造成内存损坏和信息泄露。

为此,由于双重发布,两个线程能够在同一时间从池中获得相同的缓冲区,并可能导致请求访问由另外一个线程编写的响应,其中可能包括会话标识符、认证凭据和其它敏感信息。

换言之,“虽然thread1将使用 ByteBuffer 编写 response1数据,thread2 以response2 数据填充 ByteBuffer。Thread1 继续编写包含 response2 数据的缓冲区。这就导致发布 request1 和希望响应的 client1 看到可能包含属于 client2 敏感数据的 response2。”

在其中一种情况下,内存损坏使得客户端有可能在会话中间移动,因此具有跨账户访问权限,由于一个用户的响应认证 cookie 被发送给另外一个用户,因此导致用户A插入用户B的会话中。

漏洞影响披露后,该漏洞已于上个月发布的 Jetty9.4.30.v20200611 版本中修复。通过一个命令行接口 Winstone 绑定 Jetty的Jenkins 已在昨天发布的 Jenkins 2.243和 Jenkins LTS2.235.5 中修复这个缺陷。

建议 Jenkins 用户将软件更新至最新版本以缓解该缓冲区损坏缺陷。

Jenkins 安全公告请见:

https://www.jenkins.io/security/advisory/2020-08-17/#descriptions

推荐阅读

开源服务器 Jenkins 曝漏洞,可用于发动 DDoS 攻击

开源的 Jenkins 服务器配置不当或导致著名机构敏感数据遭泄露

原文链接

https://thehackernews.com/2020/08/jenkins-server-vulnerability.html

题图:Pixabay License

本文由奇安信代码卫士编译,不代表奇安信观点。转载请注明“转自奇安信代码卫士 www.codesafe.cn”。

奇安信代码卫士 (codesafe)

国内首个专注于软件开发安全的

产品线。

    觉得不错,就点个 “在看” 吧~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值