Java、fileless恶意软件威胁桌面安全

时间:2021-10-18 04:22:24
工作原理:用户访问一个受侵的网站,不小心下载了最新类型的恶意软件。如果你的杀毒软件运行良好的话,就会阻止下载,至少能够检测到并隔离硬盘上的入侵文件。但是如果硬盘上没有文件监测呢?如果恶意软件只入侵内存,运行在受信任的进程中呢?

  这正是在今年年初发生在俄罗斯的事情。超过3万台计算机感染了一种独特类型的恶意软件—— fileless僵尸程序。在僵尸程序肆无忌惮地感染几个月后,卡巴斯基实验室声明已经发现了一个罕见的感染,通过俄罗斯在线信息资源进行传播。广告由 AdFox(一个第三方广告网络)提供给网站,Java恶意软件包含其中,通过浏览器从网络罪犯控制的服务器下载。

  fileless僵尸程序入侵原理

  第一步:用户访问受感染的网站。用户甚至不需要干其他的事情,便不知不觉地被重定向到罪犯的服务器上,我们称之为“主服务器”。

  第二步:主服务器将一个加密的动态链接库(DLL)文件注入到用户的电脑上的Java进程(javaw.exe)中。Java进程运行在内存中。DLL利用一个众所周知的Java漏洞。

  第三步:恶意软件建立用户计算机和主服务器之间的通信。被感染的计算机的技术细节信息被发送到主服务器。从这个意义上说,恶意软件和其他僵尸程序一样——作为一个软件僵尸程序,可以在互联网上执行自动化的任务。但是,AdFox是无实体文件的,只在内存中运行。

  第四步:恶意软件令用户帐户控制(UAC)失去效力。UAC是一个Windows安全组件,保护用户的系统免受黑客攻击。恶意软件利用权限再次安装一个更有破坏力的恶意软件。在俄罗斯计算机事件中,下载的恶意软件是Lurk *,主要窃取敏感数据来访问网上银行服务。

  第五步:Lurk *突袭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 *.其他国家和操作系统也是很可能遭受攻击的,其他的恶意软件也可能轻易地传播开来。

  好消息是,因为fileless僵尸程序只存在内存中,只需要重启操作系统就能解决问题(如果不是已经太晚了的话)。只要用户不访问相同的或其他受感染的网站,应该不会有再大的问题。当然,你也需要确保计算机上的Java应用程序定时更新最新的安全补丁。这至少会免受俄罗斯僵尸程序的袭击。

  但与恶意软件的不同类型一样,规则也不断改变。你可以保护用户避免最新的fileless攻击,但没有理由假设每个人都是安全的。

  另外,苹果最新声明,在发布下一代Mac OS Update之前,浏览器里不会使用Jave.这是否与fileless僵尸程序有关无从定论。安全研究员Adam Gowdiak在报道中称,已经找到了两个Java安全漏洞。所以苹果显然在确保自身安全。

本篇文章来源于 黑基网-中国最大的网络安全站点 原文链接:http://www.hackbase.com/tech/2013-07-25/67665.html

Java、fileless恶意软件威胁桌面安全的更多相关文章

  1. J1001.Java原生桌面及Web开发浅谈

    自从Java问世以来,在服务端开发方面取得了巨大的发展.但是在桌面/Web开发方面,一直没有得到大的发展.从最初的AWT,到Swing,再到JavaFX,Java从来没有在桌面/Web解决方案中取得重 ...

  2. c++和java在桌面应用软件开发的区别

    之前一直用c/c++比较多.最近做的事情用java写了个小程序.发现java的工具包很多而且好找,c++的桌面应用工具包就不好找了. java在项目的buildpath里添加外部jar包即可,c++需 ...

  3. 【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- ...

  4. Java SE、Java EE、Java ME

    Java SE(Java Platform,Standard Edition).Java SE 以前称为 J2SE.它允许开发和部署在桌面.服务器.嵌入式环境和实时环境中使用的 Java 应用程序.J ...

  5. Java Swing快速构建窗体应用程序

    以前接触java感觉其在桌面开发上,总是不太方便,没有一个好的拖拽界面布局工具,可以快速构建窗体. 最近学习了一下NetBeans IDE 8.1,感觉其窗体设计工具还是很不错的 , 就尝试一下做了一 ...

  6. 如何在java中使用sikuli进行自动化测试

    很早之前写过一篇介绍sikuli的文章.本文简单介绍如何在java中使用sikuli进自动化测试. 图形脚本语言sikuli sikuli IDE可以完成常见的单击.右击.移动到.拖动等鼠标操作,ja ...

  7. Java、JVM和操作系统之间的关系,写给新人,

    来张图:这个帖子写给新人的,老玩家就直接无视他,因为这个完完全全是白话基础原理. 解释:上面的图是从上往下依次调用的关系. 操作系统(Windows/Linux)管理硬件,让硬件能够正常.合理的运行, ...

  8. 编写第一个java程序

    安装了一个编辑器,Notepad++,这个编辑器以前在写PHP的时候就喜欢用,呵呵,现在写java也先沿用这个这个编辑器吧. 代码: public class Test{ public static ...

  9. JAVA web选型

    Web服务器是运行及发布Web应用的容器,只有将开发的Web项目放置到该容器中,才能使网络中的所有用户通过浏览器进行访问.开发Java Web应用所采用的服务器主要是与JSP/Servlet兼容的We ...

随机推荐

  1. 《Linux内核分析》第八周 进程的切换和系统的一般执行过程

    [刘蔚然 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000] WEEK EIGHT ...

  2. SignalR入门之多平台SignalR服务端

    之前创建SignalR服务端是基于Web应用程序而言的.那么能不能把SignalR服务端做成控制台应用程序.Winform或windows服务呢? 答案是肯定的. 之前尽管看起来好像是IIS和ASP. ...

  3. WP开发笔记——不同Item显示不同ApplicationBar:适用于Pivot与Panorama

    一.在xaml页面定义两个ApplicationBar: <phone:PhoneApplicationPage.Resources> <shell:ApplicationBar I ...

  4. Linux下apache的停止、开启、重启

    有两种途径 一. service httpd stop(停止) service httpd start(开始) service httpd restart(重启) 这种方法,是系统自带的 二. 或者到 ...

  5. 《音乐商店》第4集:自动生成StoreManager控制器

    一.自动生成StoreManager控制器 二.查看 StoreManager 控制器的代码 现在,Store Manager 控制器中已经包含了一定数量的代码,我们从头到尾重新过一下. 1.访问数据 ...

  6. Dynamics CRM2011 MspInstallAction failed when installing an Update Rollup

    今天在给客户做环境迁移,安装包完成后按惯例打补丁,但在打补丁的时候却报错了,错误如下 最开始怀疑第一个打6是不是不对,毕竟N久没碰2011了忘的差不多了,后来下了个rollup1居然也打不上,根据这个 ...

  7. 轻松掌握Redux-Action使用方法

    轻松掌握Redux-Action使用方法 Redux-Action主要有两个方法,createAction和createAction,只要掌握了这两个方法就会了redux-action的使用. cre ...

  8. android&colon;碎片的生命周期

    和活动一样,碎片也有自己的生命周期,并且它和活动的生命周期实在是太像了,我相 信你很快就能学会,下面我们马上就来看一下. 4.3.1    碎片的状态和回调 还记得每个活动在其生命周期内可能会有哪几种 ...

  9. JAVA StringUtils需要导入的包

    <!-- https://mvnrepository.com/artifact/commons-lang/commons-lang --> <dependency> <g ...

  10. tfn2k工具使用介绍

    主要介绍tfn2k(Linux),因为它最著名嘛!主要分为使用说明 然后在说安装所以有点长 (注意:有的人拿VPS来做DDOS·问题是有的人发现了会关闭你VPS的·除非你认识他或者你自己有服务器而不是 ...