Java:不用就卸载吧!

开发 后端
Secunia公司在发布的2010年上半年安全报告中报道:89%的计算机中都安装了Java,糟糕的是微软未在Windows Update中添加Java更新,Google在Chrome浏览器中将来还会添加Java,这都是非常大的安全缺口。外国的开发者Michael Horowitz惊呼:“Java不用就卸载吧!”

编者按:在《2010年10月编程语言排行榜》里我们详细向大家介绍了Java的混乱。尽管混乱的Java政治世界已经让我们厌烦,但是不可否认,Java依旧是最受关注的编程语言,Java的前景依旧被很多人看好,尤其是互联网巨头们:10月13日,Oracle和IBM这对老冤家宣布将在OpenJDK方面进行合作。这两家公司表示,它们要使OpenJDK社区成为开源软件“Java企业版”的主要开发阵地。两家公司的合作将集中在Java语言、Java开发工具和Java运行时间环境等方面。但是Java已经万无一失了吗?Java在各版本的更新及时吗?一名外国的开发者Michael Horowitz在自己的博客中告诉你:“Java不用就卸载吧!”全部译文如下:

我前两天曾写过一篇文章探讨了在计算机上安装Java的好处和不利影响,我并没有任何偏见,只是为了分享我的一点经验而已,任何将Java视为一杯咖啡的人都不应该在他们的计算机上安装它。

最重要的一点是,那些不怀好意的人喜欢利用旧版本Java中的漏洞在你的计算机上安装恶意软件,微软的Holly Stewart在她们的恶意软件保护中心博客上发文表示,Java漏洞利用达到了前所未有的频繁程度,微软发现的Java漏洞经常被利用,即使很久以前就发布了修复补丁,但很多人却置之不理。

Secunia公司发布的2010年上半年安全报告写道:

“许多厂商提供的部署和更新机制非常有限,包括流行厂商在内,在很大程度上忽略了最终用户PC上的程序升级,粗暴地将问题甩给最终用户,大多数厂商没有采取切实有效的措施保护他们的用户,一般都会等到爆发大规模攻击时才会提供帮助,但殊不知这时行动会大大地影响到企业的声誉。”

“通常,用户要么不知道升级,要么被复杂的升级过程和频繁程度所吓倒。从攻击者角度看,针对第三方程序的攻击被证明是一种有效的途径,并且被发现的几率很小,给黑客活动留下了充足的时间,因此逐渐成为攻击者的最爱,那些原以为给系统打上所有补丁就安全的用户大错特错,第三方软件的漏洞还未引起人们的足够重视。”

糟糕的是Oracle和微软未联手在Windows Update中包含Java更新,在Linux世界中,软件更新机制非常简单,就是一条规则,但这在Windows中是不可想象的。

Google在它的Chrome浏览器中嵌入了Flash和PDF阅读器,据说将来还会将Java也添加进来,这无疑是开放了一个更大的安全缺口。

在这份报告中,Secunia发现他们分析的计算机中89%都安装了Java,难怪有人会攻击它,正所谓树大招风。

攻击者使用Java作为他们的攻击目标另一个原因是,Java小程序是在Web页面中运行的,这就意味着浏览一个网页就有可能被感染,攻击者并不需要诱骗受害者打开附件或安装伪装的解码器。

我看过Java利用的一手资料,在我写完前一篇博客时,有人给了我一台已感染的Windows XP计算机,让我帮助清除其中的病毒和木马,根据ESET的在线病毒扫描结果显示,其中一个恶意程序叫做“Java/TrojanDownloader.Agent.NBU trojan.”,如下图所示。

ESET扫描结果
图 1 ESET扫描结果

ESET扫描结果显示,恶意软件位于C:\Documents and Settings\userid\Application Data\Sun\Java\Deployment\cache\6.0\文件夹,这台计算机安装了两个旧版本Java,可见未打补丁的Java是很容易被瞄上的。

Java可以自助更新,但默认情况下,每个月才检查一次更新,你应该将其改为每天或每周检查。

在这台Windows XP电脑上,我将所有旧版本全部卸载,然后全新安装最新版本的Java(Java 6 update 22),但我发现其自动更新居然是每月的0号进行,如下图所示。

Java自动更新设置
图 2 Java自动更新设置

最重要的是,检查更新的程序(jusched.exe)已不再随系统启动而启动,因此谈自动更新是一件荒谬的事,如果连升级程序都不启动,谈何更新呢?

如果你安装了Java,请检查版本是否低于Java 6 update 22,不知道怎么检查,那直接访问JavaTester.org这个网站吧。

使用Java的Mac用户在这方面就处于不利地位了,因为Oracle通常只会发布Windows和Linux版本的Java更新,至于为什么我也不明白,只有苹果自己为Mac发布Java更新,但从历史上看,其更新速度远远落后于Oracle。

至此,如果你想保护好计算机,那最好卸载Java,如果你需要它,你可以随时重新安装它。

如果你的软件需要某个版本的Java支持,最好考虑仔细一点,因为你可能正在朝危险走去,特别是越旧的版本,危险越大。

原文出处:http://blogs.computerworld.com/17191/java_use_it_or_lose_it

原文名:Java: use it or lose it

作者:Michael Horowitz

【51CTO译稿,非经授权谢绝转载,合作媒体转载请注明原文出处、作者及51CTO译稿和译者!】

【编辑推荐】

  1. IBM加入OpenJDK 将联手Oracle发展Java技术
  2. 对于Java,Oracle的下一步打算是什么?
  3. 2010年10月编程语言排行榜:Java的混乱之治
责任编辑:佚名 来源: 51CTO独家译稿
相关推荐

2023-04-27 13:25:22

索引合并MySQL

2021-04-27 15:24:22

安卓手机ROOT卸载

2018-02-27 08:13:15

Windows10黑科技电脑

2022-12-05 13:52:14

2022-09-06 15:49:48

AIMeta

2018-06-28 08:40:23

Raid机械硬盘

2023-09-14 07:10:04

2023-01-02 09:58:54

cdn响应X-Cache​​

2012-10-23 09:47:01

MapReduceJavaHadoop

2013-04-12 11:16:28

2021-11-02 23:00:35

机器学习JAVA编程

2020-12-14 13:39:19

QQ已读功能聊天软件

2017-04-19 14:25:21

唱吧

2018-11-23 15:16:58

iOS前端开发

2020-12-30 08:35:59

Linux运维Linux系统

2022-04-06 13:53:21

微软Windows 11Windows 10

2018-05-04 11:22:21

APP运营pushapp卸载

2023-04-12 07:52:12

安卓系统卸载自动归档

2019-06-19 13:11:00

华为

2020-07-21 15:00:49

Java 8并行流Java
点赞
收藏

51CTO技术栈公众号