Java、fileless恶意软件威胁桌面安全
工作原理:用户访问一个受侵的网站,不小心下载了最新类型的恶意软件。如果你的杀毒软件运行良好的话,就会阻止下载,至少能够检测到并隔离硬盘上的入侵文件。但是如果硬盘上没有文件监测呢?如果恶意软件只入侵内存,运行在受信任的进程中呢? 这正是在今年年初发生在俄罗斯的事情。超过3万台计算机感染了一种独特类型的恶意软件—— fileless僵尸程序。在僵尸程序肆无忌惮地感染几个月后,卡巴斯基实验室声明已经发现了一个罕见的感染,通过俄罗斯在线信息资源进行传播。广告由 AdFox(一个第三方广告网络)提供给网站,Java恶意软件包含其中,通过浏览器从网络罪犯控制的服务器下载。 fileless僵尸程序入侵原理 第一步:用户访问受感染的网站。用户甚至不需要干其他的事情,便不知不觉地被重定向到罪犯的服务器上,我们称之为“主服务器”。 第二步:主服务器将一个加密的动态链接库(DLL)文件注入到用户的电脑上的Java进程(javaw.exe)中。Java进程运行在内存中。DLL利用一个众所周知的Java漏洞。 第三步:恶意软件建立用户计算机和主服务器之间的通信。被感染的计算机的技术细节信息被发送到主服务器。从这个意义上说,恶意软件和其他僵尸程序一样——作为一个软件僵尸程序,可以在互联网上执行自动化的任务。但是,AdFox是无实体文件的,只在内存中运行。 第四步:恶意软件令用户帐户控制(UAC)失去效力。UAC是一个Windows安全组件,保护用户的系统免受黑客攻击。恶意软件利用权限再次安装一个更有破坏力的恶意软件。在俄罗斯计算机事件中,下载的恶意软件是Lurk Trojan,主要窃取敏感数据来访问网上银行服务。 第五步:Lurk Trojan突袭cookie jar. Java漏洞 正如上面提到的,fileless恶意软件利用了众所周知的Java漏洞(CVE- -)。俄罗斯事件中,网络罪犯利用此漏洞攻击Windows计算机。但是,Mac OS也支持Java,因此Apple计算机也可能受到感染。幸运的是,Oracle在2011年10月推出补丁,只有电脑没有更新,因此易受感染。 然而,对于那些没有补丁的计算机,罪犯可以轻而易举地将僵尸程序加载到受信任的Java进程中。大多数情况下,杀毒软件检测不到。僵尸程序本质上是无行的。 网络罪犯使用AdFox用户帐号更改了俄罗斯网站上的banner代码。特意往代码中添加了 JavaScript IFrame.IFrame是内联框架,允许单独的HTML文件被加载到一个单独的文档。在IFrame内,他们嵌入一个加密的链接,将用户重定向到。EU域中的主服务器。 Fileless造成的麻烦 虽然这次暴风式的对俄罗斯的袭击很少见,但是过去的十年里也发生过类似的情况,最具代表性的是红色代码和监狱蠕虫。两者皆利用了缓冲区溢出的弱点。 这些攻击已经发生过几次,没有不再出现的理由。也并不只针对俄罗斯或Windows计算机。也不局限于是Lurk Trojan.其他国家和操作系统也是很可能遭受攻击的,其他的恶意软件也可能轻易地传播开来。 好消息是,因为fileless僵尸程序只存在内存中,只需要重启操作系统就能解决问题(如果不是已经太晚了的话)。只要用户不访问相同的或其他受感染的网站,应该不会有再大的问题。当然,你也需要确保计算机上的Java应用程序定时更新最新的安全补丁。这至少会免受俄罗斯僵尸程序的袭击。 但与恶意软件的不同类型一样,规则也不断改变。你可以保护用户避免最新的fileless攻击,但没有理由假设每个人都是安全的。 另外,苹果最新声明,在发布下一代Mac OS Update之前,浏览器里不会使用Jave.这是否与fileless僵尸程序有关无从定论。安全研究员Adam Gowdiak在报道中称,已经找到了两个Java安全漏洞。所以苹果显然在确保自身安全。 本篇文章来源于 黑基网-中国最大的网络安全站点 原文链接:http://www.hackbase.com/tech/2013-07-25/67665.html
Java、fileless恶意软件威胁桌面安全的更多相关文章
- J1001.Java原生桌面及Web开发浅谈
自从Java问世以来,在服务端开发方面取得了巨大的发展.但是在桌面/Web开发方面,一直没有得到大的发展.从最初的AWT,到Swing,再到JavaFX,Java从来没有在桌面/Web解决方案中取得重 ...
- c++和java在桌面应用软件开发的区别
之前一直用c/c++比较多.最近做的事情用java写了个小程序.发现java的工具包很多而且好找,c++的桌面应用工具包就不好找了. java在项目的buildpath里添加外部jar包即可,c++需 ...
- 【Java】-NO.20.Exam.1.Java.1.001- 【1z0-807】- OCEA
1.0.0 Summary Tittle:[Java]-NO.20.Exam.1.Java.1.001-[1z0-807] Style:EBook Series:Java Since:2017-10- ...
- Java SE、Java EE、Java ME
Java SE(Java Platform,Standard Edition).Java SE 以前称为 J2SE.它允许开发和部署在桌面.服务器.嵌入式环境和实时环境中使用的 Java 应用程序.J ...
- Java Swing快速构建窗体应用程序
以前接触java感觉其在桌面开发上,总是不太方便,没有一个好的拖拽界面布局工具,可以快速构建窗体. 最近学习了一下NetBeans IDE 8.1,感觉其窗体设计工具还是很不错的 , 就尝试一下做了一 ...
- 如何在java中使用sikuli进行自动化测试
很早之前写过一篇介绍sikuli的文章.本文简单介绍如何在java中使用sikuli进自动化测试. 图形脚本语言sikuli sikuli IDE可以完成常见的单击.右击.移动到.拖动等鼠标操作,ja ...
- Java、JVM和操作系统之间的关系,写给新人,
来张图:这个帖子写给新人的,老玩家就直接无视他,因为这个完完全全是白话基础原理. 解释:上面的图是从上往下依次调用的关系. 操作系统(Windows/Linux)管理硬件,让硬件能够正常.合理的运行, ...
- 编写第一个java程序
安装了一个编辑器,Notepad++,这个编辑器以前在写PHP的时候就喜欢用,呵呵,现在写java也先沿用这个这个编辑器吧. 代码: public class Test{ public static ...
- JAVA web选型
Web服务器是运行及发布Web应用的容器,只有将开发的Web项目放置到该容器中,才能使网络中的所有用户通过浏览器进行访问.开发Java Web应用所采用的服务器主要是与JSP/Servlet兼容的We ...
随机推荐
- flex 右键连接
var menuItem:ContextMenuItem = new ContextMenuItem("技术支持:中科天宇软件有限公司", true, true); menuIte ...
- Environment中针对的读写权限判断
Android应用开发中,常使用Environment类去获取外部存储目录,在访问外部存储之前一定要先判断外部存储是否已经是可使用(已挂载&可使用)状态,并且需要在AndroidManifes ...
- Android:Intent传递数据的几种类型和源码实现
public class Intent implements Parcelable, Cloneable { //... private String mAction; private Uri m ...
- UserSelector兼容
1.更新到asp.net2.0或以上,将Microsoft.Web.UI.TreeView更换为新的System.Web.UI.WebControls.TreeView 2.将UserId,UserT ...
- [转]Dynamics AX and Generic collections of .Net
转自:http://blogs.msdn.com/b/emeadaxsupport/archive/2009/04/23/dynamics-ax-and-generic-collections-of- ...
- Java SE、Java EE和Java ME有什么区别?
Java现在已不仅仅是一种语言,从广义上说,它代表了一个技术体系.该体系根据应用方向的不同主要分为Java SE.Java EE和Java ME的3个部分. 1998年12月份Sun公司公布的Java ...
- Android内存溢出解决方案(OOM)
众所周知,每个Android应用程序在运行时都有一定的内存限制,限制大小一般为16MB或24MB(视平台而定).因此在开发应用时需要特别关注自身的内存使用量,而一般最耗内存量的资源,一般是图片.音频文 ...
- 【转】java_web开发入门
转载地址:http://www.cnblogs.com/xiaoqv/archive/2011/12/10/2283348.html 一.Tomcat服务器常见启动问题:(1).Java_home环境 ...
- [转]android使用shape stroke描边只保留底部
在项目中遇到这种情况:由于一些原因,自己需要用LinearLayout的垂直布局做出ListView的那种效果,但是ListView是自带了分割线的,而且顶部底部都是没有分割线的,每个item中间都是 ...
- combobox中动态加入几个checkbox,实现下拉框多选
combobox中动态加入几个checkbox,实现下拉框多选,将一个checkbox选中时其内容就会在combobox中显示出来,将另一个checkbox选中时其内容会跟在第一个checkbox的内 ...