读书笔记---什么是蠕虫?
蠕虫与病毒的区别:
恶意代码早期主要是指计算机病毒,
1988
年,
Morris
蠕虫出现,蠕虫的很多特性是病毒所不具备的,但两者都属于恶意代码。为了区分他们,学者们给了定义:
[Spafford1988]
计算机病毒是一段代码,能把自身加到其他程序
(
包括操作系统
)
上,它不能独立运行,需要由它的宿主程序运行来激活它。
[Kienzle2003]
蠕虫是通过网络传播,无须用户干预就能够独立地或者依赖文件共享主动攻击的恶意代码。蠕虫与病毒都通过“复制”自己来传播,但蠕虫的特点是可以主动寻找新系统的漏洞,并利用该漏洞实施入侵,达到传播自己的目的。
病毒的特点是:
1
、设法让自己得以运行。
2
、能实现自我复制。
按照安全公司的分类,病毒可以分为下面四大类。
n
文件型病毒:通过感染文件
(
一般为可执行文件
)
传播,文件运行时,病毒进入内存并被激活,监控其他可执行文件,并开始传播自己。
n
引导区病毒:通过感染磁盘系统区
(
系统引导记录
)
传播,每次启动磁盘系统都把病毒装入内存并激活。该类病毒也包含主引导区病毒,在系统启动的时候就进入内存并激活。
n
复合性病毒:是文件型与引导区型病毒的结合,激活的概率增大了很多。
n
宏病毒:通过感染数据文件,利用软件本身支持的宏功能设计的病毒。宏是数据文件处理中的开放式接口,也是可以执行的功能模块,由于使用的人多,所以传播极快,如
Word
宏病毒。
蠕虫与病毒的主要区别有两方面:
²
主动性:蠕虫的传播具有很强的主动性,不需要计算机用户干预,但病毒必须通过计算机用户激活才可以传播。
²
感染对象:蠕虫是通过计算机系统的漏洞来传播,而病毒感染的主要是计算机的文件系统。
蠕虫软件的结构框架(Jose Nazario)
:
蠕虫模拟黑客的攻击过程,把攻击变成了自动化,即一扫描、二入侵、三扩充权限、四留下后门
(
通讯机制
)
、五消除痕迹、六远程遥控
…
因此,蠕虫是僵尸网络控制者比较好的工具。
n
主体功能部分:传播部分
Ø
信息收集模块:收集要感染的系统信息,包括用户信息、邮件列表、网络拓扑、边界路由等
Ø
扫描探测模块:探测对象的漏洞,决定攻击的方式
Ø
攻击渗透模块:利用已知的安全漏洞,建立传播途径。在攻击方法上是可升级的、可扩充的
Ø
自我推进模块:采用各种方式把自己“复制”到目标主机上
n
辅助功能模块:功能与优化部分
Ø
实体隐藏模块:对各部分模块加密、变形加以隐藏,躲避
IDS
的监控
Ø
破坏模块:摧毁或破坏被感染的主机。
Ø
通讯模块:蠕虫之间、蠕虫与控制者之间的通讯机制建立。为了是控制者可以遥控被感染的主机。
Ø
远程控制模块:控制者的控制平台。
Ø
自我升级模块:自动升级攻击模块,增强蠕虫的攻击力。
蠕虫的检测方式:
1、
基于主机的检测
a)
基于特征
(Signature)
的检测:其核心就是模式匹配。蠕虫出现时,研究人员通过研究对蠕虫提取特征字符串,可能是其部分执行代码,或者是其“复制”的负载片段。很多恶意代码的识别都可以采用特征的匹配,其识别快速、准确,但攻击稍有变异,特征就可能变化。
特征识别可以分为三种方式:
²
基于网络负载的特征检测。通过抓取网络数据包,识别负载中与特征匹配的数据包,若发现,进一步分析该数据包数据的应用连接。
²
基于日志分析的特征检测。蠕虫是攻击型的,所以入侵的过程中会在系统的日志中留下很多痕迹,如异常操作、多次尝试等。通过对日志的分析判断攻击的来源与被攻击的目标。
²
基于文件内容的特征检测。蠕虫攻击成功后,会向被攻击的主机发送自身的可执行文件,也就是传播自己,对这些文件进行特征检测就能识别蠕虫的进入。
b)
基于网络黑洞检测:由于蠕虫攻击前需要扫描被攻击主机,并且为了扩大蠕虫的攻击范围,蠕虫通常要扫描很多本网络没有的
IP
地址空间,或者干脆采用网段逐个扫描。这些网络不存在的被扫描空间称为为网络黑洞,通过对网络上的这些对黑洞的尝试通讯,可以发现蠕虫的扫描行为,及早发现蠕虫的攻击行为。
c)
基于异常流量检测:主机的通讯一般流量都有自己的“工作曲线”,蠕虫在扫描、攻击时会出现很多流量上的“异常”,尤其是非本主机业务的流量产生,通过对主机建立流量日、月曲线阈值,捕获蠕虫动态信息。蠕虫的扫描一般是自动的,所以短时间流量变化都很大。
d)
检验和检测:是一种信息完整性的保护方式。对系统文件建立检验和,蠕虫入侵势必修改系统,通过对检验和进行比较,发现系统是否被改变。这种方式保护系统文件与可执行文件都有着非常好的效果。
2、
基于网络的检测
a)
网络
IDS
:它收集计算机和网络活动的数据以及他们之间的连接,在预先定义的模式库的驱动下,利用这些数据构建网络活动行为来表征网络活动结构上因果关系,通过分析这些节点间的有向图,与预定义的行为模式图匹配,检测蠕虫的存在,实际上就是对网络连接行为的模式匹配。
IDS
可以是关键链路上的数据收集,也可以是整个网络各个关键点的信息收集,再把信息送到后台的分析中心分析。
b)
蜜罐技术:在网络边界或易受蠕虫攻击的地方布置网络“蜜罐”,蜜罐之间可以共享捕获的信息。当蠕虫扫描漏主机时,蜜罐可以利用特征匹配技术捕获蠕虫的行踪,并引导蠕虫转移攻击目标。让蠕虫在蜜罐中传播,从而控制蠕虫传播,并可以研究蠕虫的特征与传播机理。