写点什么

本月起 Oracle 将不再提供 Java 6 的安全更新

  • 2013-02-05
  • 本文字数:1663 字

    阅读完需:约 5 分钟

Java 6 公开发行的最后一个版本将于 2013 年 2 月 19 日发布。之后 Java SE 6 运行时和 SDK 的所有新的安全更新、补丁和修复将只能通过 My Oracle Support 获取,因而只有使用 Oracle 商业许可的用户才能获取。

考虑到这一点,Oracle 在去年年底就开始通过自动更新用 Java SE 7 来自动替换 Java SE 6 了。Oracle 在公告中宣称,他们

……将于 2012 年 12 月开始把 Windows 32 位 Java 运行时环境(JRE)的用户从 JRE 6 升级到 JRE 7。

Java 自动更新机制是为让 Java 用户保持更新到最新的安全修复而设计的。为实现该目标,依赖 Java 自动更新机制的 Windows 用户的 JRE 6 将被替换为 JRE 7。 Oracle 将于 2012 年 12 月开始挑选部分用户进行从 JRE 6 到 JRE 7 的自动更新,以评估自动更新机制、用户体验和无缝迁移。之后,随着 Java 的更新版本 Java SE 7 Update 11(Java SE 7u11)在 2013 年 2 月发布,Oracle 会开始将所有 Windows 32 位用户的 JRE 6 升级到 JRE 7。

这种迁移是存在争议的。JNBridge(主要业务是 Java/NET 的互操作)的 CTO Wayne Citrin 在一篇博客文章中写道:

这太让人吃惊了。Oracle 已经做出决定,为修复广泛报道的安全问题,他们不只会更新 Java 7(他们最新的 Java 版本),还将彻底删除一个完全独立的产品。没错,Java 6 就是独立于 Java 7 的产品。它们可以同时安装,而且很多用户的机器上就是同时安装了 Java 6 和 Java 7。有些应用依赖 Java 6,而其他应用可能依赖 Java 7,这些依赖通常是硬编码的,或者通过配置指向了正确却又不同的文件位置。你能想象微软在发布.NET 4.0 的更新的同时把.NET 2.0 移除掉吗?问题就是这么严重。

更糟糕的是,看来他们是要站在自己的立场上将安装的 Java 6 替换为 Java 7,哪怕用户的机器上只安装了 Java 6。

因此他这样说,“你应该坚定地考虑关闭 Java 的自动更新”。

InfoQ 请 Citrin 谈了一下他的态度。“实际上我认为用户最好的选择是把浏览器插件升级到最新的 Java 7,”他对我们说,“或者简单地在浏览器中禁止 Java。”关于 Oracle 应该如何处理目前这种状况,他也提了很多建议:

a. 从支持同时安装转变为替换式安装,也就是用 Java 7 替换 Java 6,这需要严格向后兼容较老的版本,如此用户才不会注意到。此时这或许并非很好的选择,但从长期来看可能是最好的解决方案。

b. Java 6 的更新至少再继续提供一段时间。当然这只是拖延时间,无法最终解决问题。

c. 作为 Java 7 更新的一部分,检查用户的 Java 浏览器插件是不是 Java 7。如果不是的话,就切换到 Java 7。这可能是全面解决问题的最好方案。大多数攻击都是通过浏览器进来的,不过大部分人并没有注意到这一点。这种方式有可能什么都不破坏。

事实上 Oracle 已经对更新进程采取了一些防范措施。对企业级用户而言,Java 自动更新进程只更新用户 Windows 机器上最新安装的 Java 版本,这是最重要的。也就是说,如果安装了多个 Java 版本,只有最近安装的那个会被替换掉。此外,在由企业代表用户对 Java 的版本进行管理的地方,通常关闭自动更新,因此他们不会受到影响。即便如此,尽管企业客户应该不会受自动更新的影响,Citrin 也提到,“我们与客户交流时得知,作为独立软件开发商,他们也有些客户报告问题”。

前几天的安全电话会议也讨论了 Java 默默进行自动更新的问题。当然,并非真是默默更新,但正如 Ask 工具栏(译者注:这是 Java 安装程序中提供的默认搜索功能工具栏)的安装一样,用户往往没有仔细阅读就在安装程序中点击通过了,Citrin 在与我们交流时也表达了这种观点。考虑到这一点,回顾一下 Donald Smith 关于自动更新的评论是很有意思的事情:

当然,你会遇到挑战:如果新出现的特性与历史悠久的生态系统中的这一特性工作方式不同,突然就会有很多人问这个问题,“我应该如何避免这种情况发生呢?”

随着 Java 日益成为恶意软件和病毒作者的目标,对 Oracle 来说,鼓励用户更新到最新状态一定是个挑战。

InfoQ 联系了 Oracle 希望得到解答,但他们拒绝发表评论。

查看英文原文 Oracle Will Stop Providing Security Updates for Java 6 Next Month

2013-02-05 02:331865
用户头像
臧秀涛 略懂技术的运营同学。

发布了 300 篇内容, 共 142.9 次阅读, 收获喜欢 35 次。

关注

评论

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

Sa-Token 单点登录 SSO模式二 URL重定向传播会话示例

Java 登录验证 SaToken

[Day46]-[数组]-三数之和

方勇(gopher)

数组 双指针 LeetCode

全链路压测(十四):生产全链路压测SOP

老张

性能测试 全链路压测 稳定性保障

Crypto巨头们纷纷聚焦“Building platonic”,PlatoFarm会是解决方案吗?

西柚子

架构实战营模块2课后作业

Geek_53787a

值得收藏:当向数据库导入大量数据时,mysql主键唯一键重复插入,如何丝滑操作并不导入重复数据呢

迷彩

MySQL 数据库 大数据运维 5月月更

为什么人工智能需要可解释性?

博文视点Broadview

JAVA什么是反射?

源字节1号

软件开发

客观的聊一聊,裁员这件糟心事

互联网 职场 裁员

GitOps自问自答

俞凡

最佳实践 研发效能 gitops

OpenMLDB 实时引擎性能测试报告

第四范式开发者社区

人工智能 机器学习 数据库 性能分析 特征平台

JAVA SPI机制

源字节1号

【LeetCode】检查句子中的数字是否递增Java题解

Albert

LeetCode 5月月更

LabVIEW控制Arduino实现RGB调色灯(基础篇—6)

不脱发的程序猿

单片机 LabVIEW Arduino LIAT RGB调色灯

模块2作业

Geek_701557

云图说丨每个成功的业务系统离不开API网关(APIG)的保驾护航

华为云开发者联盟

云计算 华为云 API网关 业务系统 APIG

微信朋友圈的复杂度

爱晒太阳的大白

今天爬,明天没,天津市XX网 详情页加密逻辑拆解,文中关键字已经加密

梦想橡皮擦

5月月更

使用 Provider 搞定 Flutter 的局部刷新

岛上码农

flutter ios 前端 安卓开发 5月月更

什么是区块哈希?哈希趣投娱乐竞猜游戏开发逻辑(成熟源码)

开发微hkkf5566

带你认识String类

开发微hkkf5566

带你读顶会论文丨基于溯源图的APT攻击检测

华为云开发者联盟

安全

贪心算法:Dota2 参议院 🏯

空城机

LeetCode 5月月更

助力传统游戏转型GameFi,Web3Games推动游戏发展新航向

One Block Community

区块链 黑客马拉松 gamefi Web3.0

对于编程思想和能力有重大提升的书有哪些?

宇宙之一粟

书单推荐 编程思想 5月月更

哈希能作弊吗?哈希竞猜游戏防作弊系统开发逻辑(稳定运营)

开发微hkkf5566

leetcode 153. Find Minimum in Rotated Sorted Array 寻找旋转排序数组中的最小值(中)

okokabcd

LeetCode 查找

高性能 PHP 应用容器之 Workerman

CRMEB

三、KVM管理工具

穿过生命散发芬芳

kvm 5月月更

解析数仓lazyagg查询重写优化规则

华为云开发者联盟

数据库

借势双碳东风:干“实事”的“虚拟”电厂

脑极体

本月起Oracle将不再提供Java 6的安全更新_安全_Charles Humble_InfoQ精选文章