AI实践哪家强?来 AICon, 解锁技术前沿,探寻产业新机! 了解详情
写点什么

OpenJDK Docker 镜像存在错误版本漏洞

  • 2019-06-25
  • 本文字数:1177 字

    阅读完需:约 4 分钟

OpenJDK Docker 镜像存在错误版本漏洞

OpenJDK 邮件列表在五月确认,OpenJDK的官方Docker镜像中包含错误标记版本号,这表明部分 JRE 应包含的安全补丁实际上并不存在。该问题已经通过 OpenJDK 和 Debian 间的跨社区协作得以解决


该“官方”版本是由 Docker 和其他方制作的,因为 OpenJDK 社区没有创建镜像或生成构建。在GitHub issue 320中,充分讨论了该镜像构建是由谁创建的、该“官方”镜像的意义、参与镜像的各方包括谁等问题。该 Docker 镜像已被下载超过一千万次。


问题的核心与构建开发层的检查时间和使用时间相关。该版本于 2019 年 3 月 27 日生成,并标记版本号为 8u212 和 11.0.3。其中的安全补丁直到 2019 年 4 月 16 日才发布。按 Azul 首席技术官 Gil Tene 的说法,“按一些人的说法,这些累积起来的’合理’选择最终导致数百万人在 Docker 上运行的默认 OpenJDK 事实上完全是块‘神秘之肉’(mystery meat),并不完整的、暴露的构建,虽然看起来似乎推荐的是 8u212 或 11.0.3 的一个 Java 版本”。Tene 最早在 OpenJDK 邮件列表上报告了这个问题。 “神秘之肉”(mystery meat)一词是指难以确定来源的标签项。该术语并不意味着内容不安全,只是表示它们不为人知。


InfoQ 与 jClarity 首席执行官兼伦敦 JUG 联合牵头人 Martijn Verburg 探讨了这个问题。这次混乱源自版本控制系统中最近引入的标签,其中添加了后缀“-ga”。该标签向 Debian 志愿者维护者等第三方标明了构建应何时提供 GA 版。该标记晚于各 JVM 供应商的“开放获取时滞期”(embargo period)之后应用,以确保以安全的方式将安全更新分发给所有 JVM 提供商。如果没有开放获取时滞期,那么黑客会定期反编译安全补丁,找出可攻击的位置,然后利用该工具包攻击尚未修补漏洞的版本。Debian 项目提供了超过 51,000 个 Linux 软件包,难以合理地参与每个项目去理解版本的复杂性。这包括 OpenJDK,其中“-ga”标记是 JDK 7 和 JDK 8 的新版本和以前版本之间跳过的数字。


Docker 镜像中的该版本号表明应该包含CVE-2019-2602CVE-2019-2684补丁,但实际并未包含。在镜像发布过程中,至少给出了六个应该加入Docker镜像的安全补丁。 版本不匹配可能会增加下游软件组合分析(Software Composition Analysis)工具的复杂性,这些分析工具根据版本分析软件的补丁情况。它们帮助组织识别哪里具有已知 CVE 的过期软件,以便组织做出适当的修补或降低风险。许多工具根据该版本号,错误地确定这些 JRE 不易受到攻击。由于许多 Java 供应商每季度发布一次安全补丁,因此开放获取时滞期可能会很短。例如,Oracle 计划下一次重要补丁更新将在 2019 年 7 月 16 日推出。那时,目前的 Java 版本号将被视为不安全,由新的安全基线取而代之。


该问题已由 Apache 软件基金会的 Emanuel Bourg 完成修复,并做了补救工作以防止其再次发生。


查看英文原文: OpenJDK Docker Image Served Mis-Labeled Vulnerable JDK


2019-06-25 08:006411
用户头像

发布了 391 篇内容, 共 148.3 次阅读, 收获喜欢 257 次。

关注

评论

发布
暂无评论
发现更多内容

架构训练营-模块三作业

Sam

架构实战营

Date & Time组件(上)

芯动大师

Android Studio DATE类型 time

读懂深度学习,走进“深度学习+”阶段

脑极体

深度学习 百度 #飞桨#

ROS常用指令

Geek_7ubdnf

ROS

架构作业4-千万级学生管理系统的考试试卷存储方案

梁山伯

剖析容器网络Flannel VXLAN模式工作原理

flannel #Kubernetes# #k8s

Tapdata Cloud 场景通关系列:数据入湖仓之 MySQL → Doris,极简架构,更实时、更简便

tapdata

PowerShell 中运行 maven 参数无法识别

HoneyMoose

SpringBoot配置文件application

Geek_7ubdnf

Java

AIGC神器CLIP:技术详解及应用示例

Baihai IDP

人工智能 AI AIGC CLIP

GEAR框架: Tractian的敏捷工程文化

俞凡

敏捷 大厂实践

架构训练营第10期模块四作业

Geek_4db2d5

Design a limited-time offers e-commerce system

David

架构实战营

拆分电商系统为微服务

闲人Eric

#架构实战营

兼容东西,贯通南北:超聚变的“四水归堂”

脑极体

科技 算力 超聚变

2023-01-14:给定一个二维数组map,代表一个餐厅,其中只有0、1两种值 map[i][j] == 0 表示(i,j)位置是空座 map[i][j] == 1 表示(i,j)位置坐了人 根据防

福大大架构师每日一题

算法 rust Solidity 福大大

醉爱江南,2023走进双山香山

科技大数据

基于幂等表思想的幂等实践

小小怪下士

Java 程序员

模块九-设计电商秒杀系统

李某人

架构训练营

2022年终总结:今年学完的付费课程

石云升

学习 知识付费 年终总结 1月月更

如何进行秒杀场景下的异步下单实现

风铃架构日知录

Java 数据库 程序员 后端 IT

PyTorch指定GPU进行训练

Geek_7ubdnf

Python

谈一谈有关 MySQL 数据库数据安全问题

风铃架构日知录

Java MySQL 程序员 后端 IT

【Dubbo3终极特性】「云原生三中心架构」带你探索Dubbo3体系下的配置中心和元数据中心、注册中心的原理及开发实战(上)

码界西柚

云原生 注册中心 配置中心 Dubbo3 元数据中心

ETL 引擎 engine 适配 elasticsearch

weigeonlyyou

oracle Prometheus ETL Elastic Search InfluxDB Cluster

PyCharm创建Jupyter Notebook

IT蜗壳-Tango

Python

#45 A002-B端产品经理小A故事-走进客户2

非典型产品经理笔记

个人成长 产品经理 b端产品经理

#46 A003-B端产品经理小A故事-你是在画猫吗?

非典型产品经理笔记

个人成长 产品经理 b端产品经理

MASA Stack 1.0 发布会 倒计时一天

MASA技术团队

.net MASA

Java中时间戳的使用

Geek_7ubdnf

Java

ROS教程(Xavier)

Geek_7ubdnf

ROS

OpenJDK Docker 镜像存在错误版本漏洞_软件工程_Erik Costlow_InfoQ精选文章