引言
传统病毒查杀机制主要通过目标文件特征码鉴定方式查杀木马病毒。这种方式主要是通过将目标文件的特征码和本地病毒特征库内病毒特征进行比对,若匹配特征库中某病毒特征则判定此文件为病毒文件,判断的准确性取决于特征库是否全面。然而新病毒不断涌现,用户需要不断更新病毒库才能保证病毒库的升级全面,这必然使得病毒库越来越庞大,占用用户内存和系统资源越来越多,导致杀毒软件的扫描效率不断下降,系统性能也受到极大影响。《瑞星互联网安全报告》显示2011年上半年中国互联网安全领域病毒总量比去年同期上升25.2%。病毒数量呈爆炸式增长使得传统杀毒软件面临严重的困境,因此杀毒软件必须要建立一种全新的病毒查杀机制。“云安全”利用互联网的传输及计算功能,将原来放在客户端的分析计算能力转移到了服务器端,很大程度上弥补了传统病毒查杀机制的不足。目前对“云安全”检测技术的研究着重于检测性能的提升和服务器集群的防攻击保护方面,而本文针对“云安全”检测系统的客户端,对“云安全”结构和主流“云安全”策略进行了介绍,同时对某“云安全”检测流程及其检测流程中存在的安全隐患进行了分析,设计并验证了规避检测的方案,为“云安全”检测系统提供防护建议。
1 “云安全”检测结构分析及主流策略
1.1 “云安全”检测结构分析
“云安全”是“云计算”理论在安全领域的应用,融合诸多新兴技术,如网格计算、并行处理技术、未知病毒行为判断技术等,通过互联网将用户和杀毒软件厂商的服务器集群进行连接,形成一个庞大的防毒杀毒系统,对用户机器中软件的异常行为进行监测,从中获取病毒木马的特征信息并向服务器端传送,服务器端对其进行分析处理后再向各个客户端发送该病毒木马的解决方案。“云安全”检测系统结构组成如图1所示。
“云安全”将原先客户端的分析计算工作转移到了服务器端,这要求服务器端必须拥有快速响应客户端请求与快速分析处理可疑文件的能力。为提高分析查杀的准确率,服务器端拥有多个快速分析引擎、庞大的病毒特征库以及行为分析等多个分析技术。当用户访问网络信息时,“云安全”客户端首先将用户访问信息提交服务器进行安全评估,服务器快速响应分析后迅速将解决方案发送至客户端,客户端再根据解决方案提示用户该网络信息是否安全;当用户执行本地扫描时,客户端将可疑文件样本提交至服务器进行分析得到解决方案。
图1 “云安全”系统结构组成
1.2主流“云安全”策略
目前“云安全”的技术标准并不统一,各个杀毒软件厂商对“云安全”的理解各不相同,主要分为偏主动防御型和偏被动防御型两类“云安全”策略。
偏主动防御型“云安全”以趋势科技为代表,其“云安全”使用大量的服务器构成一个具有庞大的黑白名单的“云”,通过Web信誉服务(web reputation services,WRS)、邮件信誉服务(email reputation services,ERS)和文件信誉服务(file reputation services,FRS)等核心技术,对网络访问信息进行安全评估,并拦截阻止Web威胁进人用户机器。该“云安全”系统的服务器数据库中存有大量的网络威胁特征值,客户端仅保存有少量的病毒特征码文件和web信誉评级等数据用于本地验证。趋势云安全技术强调对Web威胁的拦截,通过动态分析,对网络访问信息进行安全等级评估,极大地降低了病毒对下载传染的依赖性,但是这种主动防御对本机上已经存在的未知威胁的有效感知能力相对较弱。
偏被动防御型“云安全”以瑞星为代表,其“云安全”拥有大量的客户端,每个客户端都通过已安装的“云安全的探针”对用户计算机进行扫描,截获、提取可能是恶意程序的文件样本,并将其上传至“云安全”服务器,服务器在自动分析和处理后再向每个客户端分发解决方案。这种被动防御模式能够对本地已经存在的未知病毒进行有效侦测和查杀,但对网络病毒的主动防御能力相对较弱。
1.3 “云安全”的安全防护
“云安全”检测采用轻客户端的策略,将分析计算工作以及病毒特征库等全部转移至服务器端,一旦云端服务器遭受攻击,比如篡改数据库等,“云安全”系统就无法对木马病毒进行正确判断,甚至无法正常运行,因此目前对于“云安全”的安全防护研究集中于对服务器集群的保护,对客户端的安全防护研究比较薄弱。
2 “云安全”检测流程及安全隐患分析
2.1 “云安全”检测流程
以某“云查杀”(即“云安全”检测)软件为例分析其检测流程。该“云查杀”主要通过文件hash比对、文件样本启发式分析和行为分析三大检测技术对可疑文件进行分析判断。如图2所示,客户端软件首先查找可疑文件并上传该文件hash值至服务器集群,服务器端对该文件hash值进行黑白名单比对,发现异常则生成解决方案发送至客户端,未发现异常客户端则提取文件样本,经过服务器端对该文件样本的启发式分析检测后,发现异常则生成解决方案;若仍未发现异常,客户端软件则搜集该文件运行过程中的行为特征上传至服务器进行行为分析,服务器最终判定该文件是否可信并向客户端发送解决方案。
图2 某“云查杀”系统检测流程
2.2 “云查杀”检测流程安全隐患分析
该“云查杀”系统依靠客户端上传的文件hash触发服务器端一系列的检测分析,在如图2所示的检测流程中,攻击任何一个环节都会影响最终解决方案的生成。但黑白名单比对、启发式分析和行为分析3个环节处于服务器端,由于“云安全”系统对服务器严密的安全防护,针对这3个环节的攻击相对比较困难,因此对处于客户端的各个环节进行分析发现,客户端查找文件和提取文件hash上传两个环节存在安全缺陷,极易遭受文件路径欺骗、通信欺骗和断网攻击。
2.2.1 文件路径欺骗安全隐患分析
“云查杀”客户端对用户计算机进行实时监控,当有程序启动运行时.客户端将立即检查该程序的合法性,但客户端只是简单的根据启动项、系统服务等特定信息查找该程序位置并提取文件样本,恶意软件可以通过隐藏其真实文件路径来轻易地躲过客户端的查找。
2.2.2通信欺骗安全隐患分析
该“云查杀”客户端在上传文件信息的过程中只对上传数据进行了压缩处理,并未对其进行加密和校验,这意味着攻击者一旦进入底层就可以轻易地拦截篡改上传数据,为恶意软件躲过服务器端的检测提供可能。通过嗅探获取该“云查杀”上传的数据包分析发现,上传数据采用HT—TP包发送,数据包中除“md5s”数据段采用压缩外,其它数据均采用明文传送,如图3所示,该压缩数据段以“789C”开头,因此采用Zlib解压分析。
图3 “云查杀”上传的数据内容
解压分析图3中被压缩数据段,得到被检测文件的关键信息,这些信息并未加密且无校验值,如图4所示,压缩数据主要为被检测文件的hash值、文件大小以及文件全路径。
图4上传数据中压缩部分的内容
根据图4内容分析可知,“云查杀”对文件的初步判断主要仍是通过文件hash值的比对,因此木马可以底层拦截“云查杀”上传数据,将数据包中木马文件的hash值替换为正常文件的hash值,或者在有多条被检测文件记录的情况下直接删除木马文件的整条记录,再重新按照原数据包格式封装后发送至服务器端,从而达到躲避“云查杀”的目的。
2.2.3断网安全隐患分析
尽管各杀毒软件厂商的“云安全”策略互不相同,但“云安全”终究依赖于互联网生存,网络一旦断开,“云查杀”就只能成为摆设。如果恶意程序运行时,网络处于断开状态,那么即使“云查杀”扫描提取到该恶意程序文件样本也无法上传至云端服务器进行分析处理。“云查杀”客户端在无法连接服务器的情况下,仍然会通过本地扫描检测生成解决方案,但由于本地病毒库并不全面,因此恶意程序可以很轻易地躲过“云查杀”软件的查杀。
3 实验验证方案
为了验证上文描述的安全隐患具有危害性,设计规避该“云查杀”的实验方案。下列方案以PCShare为例在该“云查杀”最新版上均测试通过。
3.1文件路径欺骗
以上文中的文件路径欺骗安全隐患分析为理论依据,设计文件路径的隐藏方案。木马程序只需构建没有实际文件的进程即可使得杀毒软件根据启动项、系统服务等特定信息无法找到该进程实际存在的目录。首先为木马文件建立虚拟目录,使得木马在该虚拟目录里运行.再将创建的虚拟目录删除。这样,杀毒软件只能获取该木马运行的虚拟目录,根据该目录无法找到木马文件。具体实现步骤如下:
(1)首先利用Windows提供的subst命令给恶意程序
实际存在的目录赋驱动器符,例如G:,以磁盘驱动器符代替恶意程序实际存在的目录名称;
(2)打开第一步所创建的虚拟驱动器,运行其中的恶意程序;
(3)利用subst命令删除第一步所创建的虚拟驱动器。
3.2 “云查杀”通信欺骗
针对该“云查杀”软件对其上传文件样本未进行加密和校验的安全缺陷,设计篡改上传数据方案。该“云查杀”软件采用HTTP协议上传文件信息,HrrP头部请求行包括请求方式、URI,和HTTP版本三项内容:
POST /file health info.php HTTP/1.1
该请求行中URL固定不变,可以作为数据包过滤条件,因此可以利用在用户层编写服务提供者接口(serviceprovider interface,SPI)来hook系统SPl的方法截获修改数据包内容。首先将注册表中系统SPI的路径保存,编写新的具有截获篡改网络数据包功能的SPI,再将系统SPI路径替换为新SPI路径;当有Winsock调用发生时,系统首先找到新SPI并执行,新SPI再加载原先保存的系统SPI并得到系统SPI函数WSPSend,通过替换该WSPend函数来完成数据封包的截获、修改与转发。WSPStartup是Win—dows Sockets应用程序调用SPl的初始化函数,WSPSend函数替换过程即在WSPStartup函数体内完成。
WSPStartup函数具体实现步骤如下:
(1)根据参数IpProtocollnfo的协议信息栈找出服务提供者的D,根据D取出原先保存的系统SPI程序的路径与文件名;
(2)LOAdlibrary加载系统SPI,并通过GetProeAd—dress得到系统SPI的WSPStartup函数指针;
(3)通过系统SPI的WSPStartup函数得到系统SPI的服务函数指针IpProcTable并保存;
(4)将IpProcTable结构中的WSPSend函数指针设置为新的WSPSend函数,在新的WSPSend函数中实现数据包的修改与转发。wSPSend函数具体实现步骤如下:
(1)以HTTP头部请求行中的URL为过滤条件,将符合条件的数据包内容保存,不符合条件的数据包调用系统SPI中的WsPSend函数直接转发;
(2)对于符合过滤条件的数据包,截取数据包中的压缩数据部分(如图2所示以“78 9C”开头,以“0D 0A”结尾),并采用Zlib解压该数据段;
(3)在解压数据中依据木马文件名查找该木马记录信息,将该条记录(以“0A"结尾)中的hash部分替换为正常文件hash值,并将解压修改后的数据重新压缩;
(4)将原数据包中的压缩数据替换为修改后重新压缩的数据,并计算数据包的数据部分长度,修改HTTP头部Content~Length值;
(5)调用系统SPI中的wSPsend函数转发修改后的数据包。
3.3断网规避“云查杀”
以上文中的断网安全隐患分析为理论依据,设计断网规避“云查杀”方案。直接将用户网络关闭而不让用户发觉非常困难,因为直接断开网络连接,状态栏必然会提示网络连接被禁用。而且网络断开后必须要在短时间内恢复,否则必然会引起用户警觉。因此要做到短时间断网并且不提示,修改IP地址是个很有效的办法。具体步骤如下:
(1)通过netsh dump命令导出当前网络设置进行备份;
(2)修改本地连接IP地址,例如修改为10.1.1.111;
(3)IP修改成功后,运行恶意程序;
(4)恶意程序成功运行后,通过netsh-f命令从备份文件中恢复网络设置。
4 规避“云查杀”行为的防护建议
针对文件路径欺骗行为,杀毒软件可以在获得病毒木马运行的虚拟目录后,进一步获取该虚拟目录所对应的物理路径。若无法获取物理路径,则可以根据病毒木马的文件名搜索扫描磁盘,对病毒木马的实际藏身之处进行定位。
针对“云查杀”通信欺骗行为,杀毒软件可以对上传数据进行加密,加大破解分析数据包的难度,并对数据包内容进行校验,防止恶意程序对数据包内容进行篡改。
针对断网规避“云查杀”的行为,杀毒软件可以对用户网络配置进行监控,对修改用户IP地址的行为发出提示告警;并针对“云查杀”对互联网的依赖性,加强客户端的分析处理技术,在无法连接服务器的情况下启用传统病毒查杀机制,能够对木马病毒进行有效地查杀。
5 结束语
本文针对某“云查杀”软件提出的规避方案主要是基于该“云查杀”客户端在查找文件路径和上传文件样本过程中存在的安全缺陷,这些安全缺陷产生的原因主要是由于该“云查杀”软件并未获得进程实际存在目录,并且并未对上传数据进行加密和校验。针对上述安全缺陷,本文提出的几点防护建议,对其它“云安全”检测软件也具有一定的借鉴参考作用。
核心关注:拓步ERP系统平台是覆盖了众多的业务领域、行业应用,蕴涵了丰富的ERP管理思想,集成了ERP软件业务管理理念,功能涉及供应链、成本、制造、CRM、HR等众多业务领域的管理,全面涵盖了企业关注ERP管理系统的核心领域,是众多中小企业信息化建设首选的ERP管理软件信赖品牌。
转载请注明出处:拓步ERP资讯网http://www.toberp.com/
本文标题:“云安全”检测技术安全性分析
本文网址:http://www.toberp.com/html/consultation/1083978524.html