创建Java安全框架 避免Java漏洞被利用

转载 2012年03月22日 08:38:20
 

导读:据最近的报道,针对Java的袭击数量一直在稳步上升。在这篇文章,我们将谈到为什么Java容易成为攻击者的目标,以及企业应该如何创建Java安全框架,从而成功抵御基于Java的漏洞攻击。

虽然蠕虫病毒、Zeus僵尸网络和极光行动是去年的头条新闻,但是据Krebs On Security的Brian Krebs和微软的Holly Stewart最近的报道,针对Java的袭击数量一直在稳步上升。正如Stewart写道,针对Java的攻击和成功攻击的数量快速增加,最近甚至超过了针对PDF和其他目标的攻击。

在这篇文章,我们将谈到为什么Java容易成为攻击者的目标,以及企业应该如何创建Java安全框架,从而成功抵御基于Java的漏洞攻击。

Java的现状

Java运行时环境(Java Runtime Environment),也称为JRE或就简称为Java,安装在各种不同类型的设备上,包括大多数PC机、苹果电脑和Linux台式机,以及智能手机和其他嵌入式设备。在这些设备上,PDF阅读器和Flash播放器同Java的普及水平相似,但Java本身比较特殊,因为它被设计成为可以一次编写、到处运行的环境,包括你可能想不到的嵌入式系统。

Java既是一种编程语言,也是一种需要安装从而支持Java程序运行的软件,它还具有额外的保护,这是其他编程语言没有的,然而最近的攻击却都绕开了这些保护。甲骨文公司凭借收购Sun微系统公司从而拥有了Java,虽然其频繁发布Java更新以便控制漏洞,且Java本身也包括自动升级功能,但是这个功能并不是那么可靠,无法保证运行的是JRE最新版本。另外,苹果公司也发布了自己的Java版本,其通常落后于安全修补过程,这就使得Java整体的安全问题更加严峻了。

因此,Java JRE对于攻击者而言,是很有吸引力的目标。Stewart报告说,在过去一年中,三个Java的漏洞累计遭到350万次攻击,近200万台电脑受到攻击,这使得Java成为最易受到攻击的软件之一。

Krebs报告说,针对Java的攻击已经包含到了漏洞利用程序包中,从而允许攻击者可以对该编程语言的攻击进行自动化。另外,使用PC机的企业不是唯一应该担心的,最近针对Java的攻击有些甚至包括了Mac电脑。从事Mac安全的Intego公司最近报道称,一个恶意的Java applet超链接

http://blog.intego.com/2010/10/27/intego-security-memo-trojan-horse-osxkoobface-a-affects-mac-os-x-mac-koobface-variant-spreads-via-facebook-twitter-and-more/被命名为Koobface,其已经感染了苹果的操作系统。由于缺少Java补丁,很多被感染的电脑已经被黑客控制,而最近针对Flash或PDF的袭击,台式电脑上防恶意软件的安全措施已经不起作用了。不管怎样,要想在网络层上检测Java的袭击,对IPS/IDS提供商而言已经更加困难了,因为任何潜在的恶意Java程序都需要进行运行测试,以检查恶意代码,而这需要耗费大量的计算资源。

企业防御策略

企业可以通过创建一个Java的安全框架来减少与Java相关的风险。首先,企业应该预判自己是否需要在台式机或者服务器上安装Java,如果不需要的话,请卸载Java或者从一开始就不安装Java。用户应该只在有应用程序需要时,或台式机需要Java程序支持的情况下,才安装Java。这是基本的建议,因为如果Java不存在,它就不可能被黑客进行漏洞利用。

接下来,检查以确保只有最新版本的Java安装在客户机上。这些检测可以用企业管理软件、脚本版本检测、或手动访问Java下载页面来完成,这将报告已安装的Java是哪一版本。以我的经验来看,老版本经常遗留在系统中以保证向后的兼容性,特别是自己编写的应用程序。如果安装了Java,它可以配置成每天自动检查更新,但是这只对用户可以自己更新软件的家庭电脑有用。企业应该把对Java打补丁的优先级同微软或Adobe保持一致。对Java的一些特定安全选项进行调查也是可取的,用户通过使用Java控制面板就可以进行,比如禁止用户给来自不受信任的认证授予访问权限,或检查证书以防止潜在的恶意 Java程序的运行。你可能还需要启动日志记录,以便发现恶意Java程序是否已经运行。如果你的企业使用Firefox,还可以利用NoScript插件的白名单功能来批准Java程序,以限制恶意Java程序的风险。

结论

过时的Java版本所构成的威胁不容低估,Java补丁应该与微软或Adobe更新拥有同样的优先权。甲骨文负责Java的更新,如同微软对其产品负责一样,甲骨文应该有同样的标准。所以,如果有可能,你可以向甲骨文公司报告因恶意软件袭击Java而引起的任何问题。

企业应该在其客户端系统中增加更新Java的优化措施,以防止系统被黑客利用漏洞。他们也应该以此作为警钟,更仔细地评估什么软件应该安装在客户端电脑上,并确保定期更新,防止黑客凭借应用软件来控制系统。虽然这可能还有一场硬仗要打,但这也相应的推动了企业去更好的理解安全,即除了打补丁以外还可以有更多的具有前瞻性的办法,比如使用应用程序白名单功能,从而在第一时间防止恶意软件的运行。

java安全框架-Shiro学习笔记(一)-入门小案例

Apache Shiro是一个强大且易用的Java安全框架,执行身份验证、授权、密码学和会话管理。 我们先来输出一个hello word。 1、创建maven项目 2、将依赖jar包引入项目中,包括...
  • qq_26504875
  • qq_26504875
  • 2016年06月26日 11:29
  • 1993

web安全框架Spring Security

在 Web 应用开发中,安全一直是非常重要的一个方面。安全虽然属于应用的非功能性需求,但是应该在应用开发的初期就考虑进来。如果在应用开发的后期才考虑安全的问题,就可能陷入一个两难的境地:一方面,应用存...
  • u013516966
  • u013516966
  • 2015年06月29日 23:40
  • 2441

Java Web:主动和被动方式检测安全的框架

对于某些敏感的系统例如支付、交易需要为其加固,有必要将可能的攻击情况考虑进来加以防范,于是有了这么一个简易的安全框架。在前辈的代码上(https://github.com/zhwj184/webSec...
  • zhangxin09
  • zhangxin09
  • 2017年02月05日 20:39
  • 2122

Java安全框架—Shiro

Apache 的孵化器项目Shiro其前身是JSecurity,是一个强大,灵活的java安全框架。用于简洁地处理身份验证,授权,企业多个系统会话管理,加密服务等。       其系统框架如下: ...
  • peterwanghao
  • peterwanghao
  • 2010年01月26日 18:24
  • 9325

PHP如何避免 $_SERVER["PHP_SELF"] 被黑客利用

$_SERVER["PHP_SELF"]是超级全局变量,返回当前正在执行脚本的文件名,与 document root相关。 当黑客使用跨网站脚本的HTTP链接来攻击时,$_SERVER["P...
  • txqd1989
  • txqd1989
  • 2017年06月16日 10:16
  • 308

高效Java05:避免创建不必要的对象

就像我们大部分人所知道的,最好能重用对象,而不是每次都重复创建一个功能相同的新对象,下面举几个例子说明这个点。重用不可变对象如果对象是不可变的,那么它就始终可以被重用。对于同时提供了静态工厂方法和构造...
  • digvwell
  • digvwell
  • 2017年03月20日 23:03
  • 153

java安全框架

JODE                                                                                                ...
  • lhooouuu
  • lhooouuu
  • 2010年09月18日 20:18
  • 3510

如何避免SQL注入漏洞

使用String来拼装SQL语句,会容易产生注入漏洞。而使用参数来传递SQL参数值,则可以避免注入漏洞,这个和用什么工具框架没有关系。在JAVA里,可以使用preparedStatement来避免的:...
  • sdbany
  • sdbany
  • 2007年12月09日 00:20
  • 1593

悬镜安全丨Java 反序列化任意代码执行漏洞分析与利用

利用国内的漏洞利用工具
  • Anprou
  • Anprou
  • 2016年11月14日 10:15
  • 3498

spring_security安全框架详解

本文是在项目中用到Spring Security3来进行登录验证时才进行学习的,写的比较片面,请大家提出问题。 首先要在web.xml中配置 contextConfigLocation clas...
  • u012959829
  • u012959829
  • 2014年09月05日 16:21
  • 5784
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:创建Java安全框架 避免Java漏洞被利用
举报原因:
原因补充:

(最多只允许输入30个字)