网络安全中恶意软件的行为研究与检测
来源:用户上传
作者:
摘 要 随着网络技术的不断发展,信息安全面临着诸多的安全威胁,越来越多的攻击者在程序中插入恶意行为。安全研究人员基于特征码的静态分析,通过特征库高效快速地对恶意行为进行匹配。但随着攻击技术的进步,更多的设计者选择将恶意行为隐藏在程序代码中,对其进行加密和变形,以此来抵御静态分析。所以如何进行恶意软件行为的捕获,准确判定出恶意软件,成为信息安全领域亟待解决的问题。
关键词 恶意软件 行为研究 检测防范
中图分类号:TP393 文献标识码:A
1背景
恶意软件是指在未明确提示用户或未经用户许可的情况下,在用户计算机或其他终端上安装运行损害系统和偷取用户隐私信息的软件。这类如病毒、蠕虫、木马、后门的恶意软件已经成为计算机和网络最大的威胁之一①。恶意软件的开发者编写如间谍软件、广告软件等狭义角度意义上的恶意软件,在网络上传播和蔓延,使得接入互联网的任何系统都处于将被攻击的风险中。
面对恶意行為带来的信息安全问题,安全产品的分析人员开发出自动化分析程序工具用以抽取和分析恶意软件的行为。然而,恶意程序有时能检测出模拟或虚拟的分析环境,为了逃避分析工具的检测,它会减少攻击行为或立即结束进程。这种恶意代码与安全软件之间的对抗日益加剧。所以,对网络程序的恶意行为进行检测和研究成为了信息安全方面迫切需要解决的问题。
2恶意软件的行为研究
2.1注册表操作
一般来说每类文件都会有各自默认的打开方式和程序,且打开方式都会注册在注册表里。大部分恶意软件会在特定的位置采用更改文件关联程序的方式达到打开文件的同时而自动运行的目的。
2.2文件操作
有些恶意软件不需要修改注册表,利用修改win.ini和system.ini这类系统文件来启动自身程序。这类恶意软件一般采用更改系统设置,如禁用任务管理器;禁用隐藏文件或系统的显示开关;禁用注册表、禁用文件夹选项等,用来降低计算机发现的难度。为达到开机自启动的目的,有的恶意软件则将自己添加到系统根目录下的AUTOEXEC.BAT和windows目录下的WinStart.bat文件中,有的恶意软件是通过将自己添加到开始菜单的“启动”文件选项中;有的恶意软件将系统的必须和重要文件替换成自身程序代码,因此系统运行时就会启动被替换的程序和这类恶意软件,一般用户很难发现。
2.3部署调用工具
恶意软件调用,部署工具的行为主要分为部署于系统文件的相似文件与更改自身文件名和删除自身这两种方式。大多数恶意软件在下载成功后为获取用户活动和完成向外传输信息任务,通常会在windows或system目录下生成若干个可执行恶意软件的文件工具,如Explore.exe等。有的恶意软件如果运行成功,就将随机更改文件名或自我删除,使用户很难发现。
2.4连接指定站点
基本所有的恶意软件都要通过访问网络来达到感染计算机的目的,通常先向外发出连接请求,再利用邮件的形式把用户信息传送出去。有的恶意软件则是利用连接定向的站点和服务器,下载大量的间谍软件和盗号木马,甚至利用恶意软件下载器把恶意程序代码下载到用户的计算机系统上,然后进行加载并完成感染。有的恶意软件则是利用用户计算机系统上的ARP恶意攻击程序代码对其所在的网络进行ARP欺骗攻击,最后严重影响到网络安全。
2.5隐藏活动界面
恶意软件在活动时,一般都会将自身的运行程序和窗口隐匿起来,在工具栏和任务栏上用户都无法找到恶意软件的行踪,达到不被用户发现的目的,有利于恶意程序在操作系统中长期运行和驻留。
2.6操作其它进程
有的恶意程序为达到开机自动启动的目的,将自身注册为系统服务。有的恶意软件则采用通过伪装的方法来达到隐藏自己的目的,令用户很难察觉,主要包括真隐藏和伪隐藏两种不同的类型。有的恶意软件在运行的过程中会关闭一些如杀毒软件和防火墙的正常进程,或启动其他恶意程序进程,实施强度更大的破坏活动。
2.7浏览器劫持
有的恶意软件在未得到管理员许可的情况下,通过自行篡改用户浏览器的相关设置,致使用户无法正常上网或强迫用户访问站点。浏览器劫持行为主要包括不能正常上网,对用户所访问网站的类型内容擅自进行删除、添加、修改与迫使用户访问指定网站或限制用户修改浏览器设置三种不同类型的行为现象。
2.8恶意收集用户信息
有些恶意软件在未经用户许可的情况或未明确提示用户下(用户无法查看自己的信息是否被收集,未提示用户是否允许收集信息的选项),恶意收集用户的信息。
从软件恶意行为及其发展来看,恶意软件主要存在传播多样化、多平台;基于系统缺陷的攻击时间缩短;存活能力增强;基于系统缺陷的攻击时间缩短;破坏性和易用性更大等发展趋势。
3恶意软件检测工具的设计
3.1系统目标
(1)建立一个虚拟运行系统:在用户计算机中要建立一个虚拟运行系统,该运行系统要求对用户正常的使用不造成任何影响,且在每次分析未知程序后要迅速恢复到纯净状态,防止几次结果相互影响,出现误报、漏报的情况。
(2)建立恶意行为特征库:通过对所有已知恶意程序的恶意行为进行分析,建立恶意行为特征库,供检测工具使用,连接互联网,及时更新变种恶意程序的行为特征,提高系统对已知和未知恶意行为的识别能力。
(3)对程序进行动态分析:对于百分之百可以确定的恶意程序,做隔离或删除、提醒用户处理,对于不能确定的未知程序,在上述虚拟运行系统中试运行,在一段时间内观察其行为特征,最终判定出是否为恶意程序。
3.2模块设计
恶意行为检测系统分为6个部件:检测系统部件、恶意行为特征库部件、检测机制部件、虚拟运行部件和分析部件、监测点部件、反馈机制部件。各个部件之间的关系如下图所示: (1)检测系统:首先需要建立一个与用户操作系统相似的虚拟运行系统,这个系统给未知程序提供一个运行环境,独立存在于用户计算机中,对用户不造成任何影响,且在运行程序后要迅速恢复到初始的纯净状态,避免几次运行结果相互影响。注意,该系统要避免被恶意程序识别为检测机制。
(2)恶意行为特征库:在该检测系统中,最重要的模块是恶意行为特征库,在该特征库中要包含现有所有已知恶意程序的信息、运行机制、恶意行为特征,并且需要连接互联网实时更新,确保检测工具在第一时间发现恶意程序的变种代码,提高该检测系统的适用性。这一点在整个检测工具中非常重要。
(3)檢测机制:在该运行系统中,要存放一个恶意程序的检测机制,根据特征库中描述的恶意行为,检测机制要匹配特征以判断程序是否为恶意程序,如果百分之百匹配成功时将此程序标定为恶意程序,隔离处理。在辨识出程序可能存在恶意行为时,标记该程序并隔离该程序,进行下一步检测。
(4)虚拟运行部件和分析部件:在运行系统中,需要建立一个类似计算机中虚拟机的虚拟部件,在该部件中虚拟运行检测机制标定的可疑程序,捕获该程序在虚拟运行检测系统中的各项行为,分析该可疑程序是否对用户信息进行恶意存取或者恶意篡改,进一步利用分析部件对程序代码等进行检测和分析,判定出该程序是否具有恶意性,并形成最终的结论。
(5)监测点:在上述步骤中会出现两种运行结论,一种为正常运行程序,一种为恶意程序,针对第一种正常程序,监测点对其进行记录标记,并在一段时间内检测其的运行,出现恶意行为立即回收至新型检测工具中重新检测,如果在一段时间中没有出现恶意行为,则可取消标注结束对其的追踪。对第二类已经确认了的恶意程序,提醒用户,对其进行隔离处理。
(6)反馈机制:当发现新的恶意程序时应及时反馈至恶意程序行为体征库,为其他连接互联网的检测工具提供可靠的依据,减少此种新型检测工具的工作量。
4结束语
在本文中,对各类恶意程序的行为进行了深入的研究,并对检测工具进行了概要设计。伴随着检测技术的不断改进,未来发展方向将会体现在以下几个方面:
(1)恶意行为特征库越来越庞大,可以随时更新恶意软件行为并及时反馈至用户,可以使检测工具更为容易的检测出恶意软件。
(2)在发现恶意软件后计算机能迅速做出响应,将恶意软件自动隔离或删除,避免对计算机用户造成影响。
(3)结合各类检测和修复技术,在对恶意行为进行识别的基础上,对程序利用的程序漏洞进行研究并修复。
注释
① SymantecInternetSecurityThreatReport[EB/OL].2012
参考文献
[1] 冀风宇.基于信息流的Android应用污点分析技术的研究[D].成都:电子科技大学,2015.
[2] 周霞.信息安全现状及发展趋势[J].大众科技,2006(07):85-86.
[3] 恶意程序的发展趋势[J].计算机安全,2009(03):109-111.
[4] 王丽.基于虚拟化网络服务的恶意软件网络行为分析[A].第四届信息安全漏洞分析与风险评估大会.
[5] 奚小溪,孙荣会.恶意软件的行为与检测技术分析[J].安徽建筑工业学院学报(自然科学版),2012(03).
[6] 孟雪梅.计算机恶意软件及防范对策探讨[J].科技传播,2013(23).
[7] 卞松山,路轶,石晓虹.360移动互联网恶意软件分析平台[J].信息安全与技术,2013(12).
转载注明来源:https://www.xzbu.com/1/view-15112311.htm