阿里云「飞天发布时刻」2024来啦!新产品、新特性、新能力、新方案,等你来探~ 了解详情
写点什么

本月起 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:331538
用户头像
臧秀涛 略懂技术的运营同学。

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

关注

评论

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

「2021中国峰会同行记」第二回 | 探索店匠从0到1出海的技术密码

亚马逊云科技 (Amazon Web Services)

建信金科大咖访谈:地方特色产业互联网建设思考与实践

金科优源汇

ZooKeeper实战

CodeWithBuff

Java zookeeper

Linux之less命令

入门小站

Linux

【源码篇】Flutter Provider的另一面(万字图文+插件)

小呆呆666

flutter ios android 大前端

毕业论文被不小心删除了,有什么方法可以恢复?

淋雨

EasyRecovery 文件恢复 硬盘数据恢复

人工智能应用架构的思考

金科优源汇

谈一谈Java的网络编程

CodeWithBuff

Java 网络io

研发管理工具 ONES 完成3亿人民币 B1 B2 轮融资,继续领跑研发管理赛道

万事ONES

项目管理 融资 研发管理工具 ONES

趣谈Java类加载器

程序猿阿星

Java ClassLoader 类加载器

lockSupport怎么玩

卢卡多多

锁机制 6月日更

python 连接钉钉传输工作数据监控

百里丶落云

如果非要在多线程中使用 ArrayList 会发生什么?(第二篇)

看山

Java 并发编程

Rust从0到1-函数式编程-迭代器

rust 函数式编程 Iterator 迭代器

密码学系列之:twofish对称密钥分组算法

程序那些事

加密解密 密码学 程序那些事

数据结构——顺序栈

若尘

数据结构 6月日更

三个维度,透视5G价值的持续点亮之旅

脑极体

详解Redis主从复制原理

蘑菇睡不着

Java redis

【源码篇】Flutter Bloc背后的思想,一篇纠结的文章

小呆呆666

flutter ios android 大前端

Dapr:我不是Service Mesh!我只是长得很像

中原银行

云原生 Service Mesh istio Multi-Architecture dapr

领域驱动设计101 - 模块

luojiahu

领域驱动设计 DDD

我是如何用 ThreadLocal 虐面试官的?

陈皮的JavaLib

Java 面试 多线程 ThreadLocal

[译] R8 优化: Lambda Groups

Antway

6月日更

ONLYOFFICE-基本组成及工作原理

一个需求

onlyoffice

react native实践总结与思考

碗盆

android 跨平台 React Native

百度关于EMP的探索:落地生产可用的微前端架构

百度Geek说

德勤基于Amazon WAF 云原生安全服务为客户交付价值

亚马逊云科技 (Amazon Web Services)

迪士尼将亚马逊云科技作为首选的公有云基础设施供应商,支持 Disney+ 全球扩展

亚马逊云科技 (Amazon Web Services)

过一过Java“锁”事

CodeWithBuff

Java 并发 同步

成为你想要看到的改变,首先就是让正确的事情持续的发生。

叶小鍵

推荐一个MySQL宝藏网站

Simon

MySQL 网站

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