一、什么是恶意代码
1、恶意代码定义
实际上指的是网页中的恶意插件,通常是由JavaScript或VBScript代码编写的,一般带有广告性质,且是相对Web服务和社交网络服务而言。
它会在你浏览网站时进入你的电脑,防火墙和杀毒软件一般对它无可奈何,因为它并不属于病毒的范畴。调高浏览器的安全等级可以屏蔽他们。
恶意代码两个显著的特点:非授权和破坏性。(举例)
也可认为,恶意代码是一个广义的概念,它是计算机病毒、蠕虫(Worms)、木马、逻辑炸弹(Logic Bombs)、用户级RootKit、脚本病毒和恶意ActiveX 控件等的统称。
这里恶意代码主要是指:针对互联网中Web服务和社交网络服务的各种攻击。
2、恶意代码的危害
1)消耗系统资源
通过不断消耗本机系统资源,使计算机不能处理其它进程,导致系统与网络瘫痪。
恶意代码主要危害:篡改IE,修改主页(插入广告)等。
这类恶意代码使用JavaScript产生一个死循环,它出现在恶意网站中或被当做邮件附件发给用户,当用户打开这类HTML或VBS附件时,屏幕将会出现无数个浏览器窗口,最后不得不重启计算机。
2)非法向用户的硬盘写入文件
有些个人主页或邮件含有格式化本地硬盘的恶意代码,主要利用format.com和deltree.exe命令实现。
3)IE泄密
利用IE浏览器的漏洞,网页中的恶意代码读取客户机的文件,从而获取用户的账号与密码。
4)利用邮件非法安装木马
二、什么是计算机病毒
1、计算机病毒定义
计算机病毒本质上是一种具有破坏性的计算机程序,是一段可执行的指令代码,它具有复制、传染和扩散能力,并且寄生在各种类型的文件上。
计算机病毒是一段代码,它能把自身加到其他程序,包括操作系统上,但它不能独立运行,而需要通过宿主程序的运行来激活。
目前全球已发现6万余种计算机病毒,并且还在以每天10到50种的速度增加。
2、网络病毒定义及特征
所谓“网络病毒”是指通过网络途径传播的计算机病毒,属第二代计算机病毒,是恶意代码中的一大类,
在网络环境下,网络病毒除了具有传染性、破坏性、可执行性等一般计算机病毒的共性外,还具有以下一些特征:
1)传播速度更快
2)扩散面更广
3)传播的形式更加复杂
4)清除更加困难
三、几种常见的恶意代码
1、RootKit
Rootkit是一种特殊的恶意软件,它的功能是在安装目标上隐藏自身及进程和网络链接等,常见的是Rootkit和木马、后门等恶意程序结合使用,系统被注入Rootkit后,就可以偷偷进行某些操作。
Rootkit是一种攻击者用来隐藏自己的踪迹和保留root访问权限的工具。
攻击者通过远程攻击获得root访问权限,进入系统后,攻击者会在侵入的主机中安装Rootkit。
然后,它将经常通过rootkit的后门,检查系统是否有其他用户登录,如果只有自己,攻击者就着手清理日志中的有关信息。
通过Rootkit的嗅探器获得其它系统的用户和密码之后,攻击者利用这些信息侵入其它的系统。
Rootkit由几个独立的程序组成,典型的Rootkit包括:
1 以太网嗅探器程序,用于获得网络上传输的用户名和密码等信息。
2 特洛伊木马程序,如:inetd或者login,为攻击者提供后门。
3 隐藏攻击者目录和进程的程序,如:ps、netstat、rshd和ls等。
4 还包括一些日志清理工具,如:zap、zap2或z2等,攻击者用这些清理工具删除wtmp、utmp和lastlog等日志文件中有关自己行踪的条目。
复杂的rootkit还可以向攻击者提供telnet、shell和finger等服务。
2、网络蠕虫
1、蠕虫(Worms)的定义
计算机蠕虫是指能在计算机中独立运行,并将自身拷贝传播到另一台计算机上的一种程序。因其与计算机病毒有着很大的不同,因此,这里将其称为“计算机蠕虫”,而不说它是蠕虫病毒。
蠕虫是一种智能化的计算机程序,是一段无需计算机使用者干预即可运行的独立代码。
蠕虫能扫描和攻击网络上存在漏洞的节点主机,利用网络把蠕虫程序从一个节点,传播到另外一个节点。它可获得节点主机上的部分或全部控制权,然后自我复制传播。
网络蠕虫与一般计算机病毒的最大不同在于:它不需要人为干预就能自主不断地复制和传播!
2、网络蠕虫的结构
分为主体功能模块和辅助功能模块两大部分。有主体功能模块的蠕虫,能完成复制传播流程,而包含辅助功能模块的蠕虫,则有更强的生存能力和更大的破坏性。
3、蠕虫的工作流程和方式
蠕虫程序的工作流程分为:漏洞扫描、攻击、传染、现场处理四个阶段。
首先蠕虫进行漏洞扫描,扫描到存在漏洞的后,就将蠕虫主体移到目标主机中,实施攻击;然后,蠕虫程序传染目标主机,并对目标主机进行现场处理。同时,蠕虫程序生成多个副本,重复上述流程。
现场处理包括:隐藏、信息搜集等。
计算机蠕虫的工作方式:“扫描->攻击->复制”。
1)扫描
计算机蠕虫根据宿主主机上的IP,按照一定规律生成IP地址,然后,通过这个IP地址进行网段扫描。
当发现存活主机后开始攻击。这一阶段计算机蠕虫向网络中发送大量的探测数据,极易造成网络堵塞,这也是蠕虫的最大危害之一。
2)攻击
当计算机蠕虫发现存活主机后,通过向存活主机发送漏洞溢出数据(代码),对存活主机进行漏洞溢出,溢出成功后,获得溢出主机的控制权,然后向存活主机拷贝自己的副本。
3)复制
计算机蠕虫通过向存活主机拷贝自己的方式,实现自身的繁殖。
4、蠕虫的主要特点
1)自我繁殖
2)利用软件漏洞
3)造成网络拥塞
4)消耗系统资源
5)留下安全隐患(后门)
5、蠕虫技术
计算机蠕虫与计算机病毒有根本的不同,其存在的目的只是复制自己。
新型蠕虫将蠕虫技术和计算机病毒技术相融合,极具破坏型,专门窃取或破坏他人计算机上的信息,通过感染目标主机,在目标主机上留下足够权限的后门,以供进一步控制目标主机使用,这种蠕虫给社会经济带来极大危害。
善意的蠕虫,如:“冲击波清除者”利用“冲击波”蠕虫的传播方式进行传播,它进入目标主机后,会主动修复当前主机的漏洞,并在一定时间内删除自身文件。虽然善意,但它在网络中的扫描,还是会给网络通信带来一定负担。
6、蠕虫的检测与防治
计算机蠕虫是利用系统漏洞进行传播的,当计算机漏洞还没有相关补丁时,可用手工或专杀工具来清除。
蠕虫在感染的主机上开启一个端口。在注册表: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\run下,建立一个名为LookAtMe的启动键值,该键值在每次计算机启动时加载执行程序。
蠕虫在运行期间还会向网络中发送ARP探测请求,寻找下一个攻击目标,向存活主机的下一个端口发送溢出代码,溢出成功后,在目标主机上开启这个端口,准备接受蠕虫拷贝程序。
1)网络蠕虫的检测
目前国内没有专门的蠕虫检测系统,传统防病毒系统不能检测未知的蠕虫,只能被动检测已知特征的蠕虫。而基于异常检测的IDS对蠕虫检测时虽能发现网络中的异常,但无法对蠕虫的传染进行控制。
以中科网威的病毒检测系统(Virus Detect System,简称VDS)为例。网威VDS对蠕虫的检测分为:
(1)对未知蠕虫的检测
对未知蠕虫的检测主要采取对流量异常进行统计分析、对Tcp连接异常进行分析等方法。
具体检测过程如下:
当一台主机向一个不存在的主机发起连接时,中间的路由器会产生一个ICMP-T3(目标不可达)包返回给蠕虫主机。一段时间里,蠕虫主机会接收到大量的来自不同路由器的ICMP-T3数据包。
网威VDS将ICMP-T3数据包进行收集、解析,并根据源和目的地址进行分类,如果一个IP在一定时间(T)内,对超过一定数量(N)的其它主机的同一端口(P)进行了扫描,则产生一个发现蠕虫的报警。
然后对蠕虫主机进行隔离,并对蠕虫进行分析,进而采取防御措施。
(2)对已知蠕虫的检测
网威VDS系统可对震荡波、冲击波等已知蠕虫及其变种进行检测。
震荡波蠕虫也称Sasser蠕虫,它利用微软windows内核平台上的LSASS(缓冲区溢出)漏洞,随机地扫描其它网络中计算机的IP端口,然后进行传播。
震荡波蠕虫监听TCP 5554端口,做为ftp服务器等待远程控制命令,蠕虫以ftp的形式提供文件传送。
震荡波蠕虫以本地IP地址为基础,随机取IP地址,疯狂的试探连接445端口,试图利用windows的LSASS中的一个缓冲区溢出漏洞进行攻击,一旦攻击成功会导致对方主机感染,并进行下一轮的传播。
攻击失败也会造成对方主机的缓冲区溢出,导致对方主机程序非法操作,以及系统异常等。
检测流程:首先对TCP半连接状态进行检测,发现蠕虫的扫描行为和可疑的扫描源;然后在TCP的连接建立中,检测可疑扫描源对漏洞主机特定端口(445)的攻击,进一步确认感染蠕虫的主机;第三步检测蠕虫的自我传播过程(震荡波通过5554端口的ftp服务进行传播);最后通过传播文件的特征进一步确认“震荡波”的传播。
以上检测步骤中,将产生相关报警,提醒网管人员采取措施,阻止蠕虫的进一步传播。
2)蠕虫的防治策略
当发现有蠕虫感染时,应在最短的时间内响应。首先是报警并通知管理员,通过防火墙、路由器或HIPS的互动,将感染蠕虫的主机隔离;然后对蠕虫进行分析,制定检测策略修补,并对感染了蠕虫的主机开展查杀工作。
网威VDS采取的四项防治措施:
1)与防火墙互动
2)与交换机联动
3)通知HIPS
4)及时报警
蠕虫的防治策略
当发现有蠕虫感染时,应在最短的时间内响应。首先是报警并通知管理员,通过防火墙、路由器、或HIDS的互动,将感染蠕虫的主机隔离分析并制定检测策略。如图所示是VDS在发现感染了蠕虫的主机时采取的措施。
在网络环境下,网络病毒除了具有传染性、破坏性、可执行性等一般计算机病毒的共性外,还具有以下一些特征:
1)传播速度更快
在单机环境下,网络病毒只能通过介质从一台计算机传染到另一台,而在网络中则可以迅速扩散。
2)扩散面更广
网络病毒在网络中传染快、扩散范围大,不但能迅速传染局域网内的所有计算机,还能远程传播到千里之外。
3)传播的形式更加复杂
网络病毒传播的形式更加多样化,它可通过多种形式传播。如:服务器、网页、脚本、U盘等。