`
tibaloga
  • 浏览: 873535 次
文章分类
社区版块
存档分类
最新评论

Web安全innovation

 
阅读更多

本文原作者是趋势的一个朋友,在征得他同意的基础上,拿来转载

Web安全innovation

由于最近参加了病毒和Web Threat的基础培训,对一些常规的恶意软件或者网页的原理和行为有了粗浅的认识。经过这次培训,心里有个想法就是:恶意软件和网页的作者是进攻者,安全厂商是被动防护者,而且一暗一明,攻守之势一直没有太大的改变,结果就是无尽的病毒,无穷的pattern无力的防御。张总有言:策略是致胜的关键。我觉得我们安全厂商是不是应该在策略上作出些根本的改变呢?我冥思苦想,夜不能寐,心里隐隐约约形成了一个大致的想法,可能非常的幼稚,以致贻笑大方,也可能英雄所见略同,引君莞尔一笑。我是个行外人士,不过东坡居士有诗云:不识庐山真面目,只缘身在此山中。这就是说:外行真的有可能解决内行不能解决的问题,因为金锤子类的反模式会干扰人的创新能力。在此声明没有参考已有的解决方案,闲话少说,下面我就开门见山,直捣黄龙了。

我总的解决思路就是孔夫子的一句话稍微变一下:忽其言而察其行。就是说我先忽视你网页的:源代码,而是重点观察你的行,给网页放肆执行的机会,然后详细的观察它造成的后果。

假设有个大型企业,里面有个用户想访问一个网页,企业本地IWSVA会到本地缓存查询,如果在黑名单里,马上拒绝,否则去趋势的云端查询,如果得知是不安全的,IWSVA马上拒绝。如果到这里还没有被拒绝, IWSVA会根绝用户的操作系统的类型从虚拟机或者就是实体机阵列中(因为有些病毒会监测是否为虚拟机,若安全等级要求高,则建议采取实体机)动态选取一个空闲的而且OS类型跟用户一样的机器,而且这些机器的OS没有安装任何的patch,安全策略选择最低,所有浏览器的安全等级也选择最低,没有安装任何AV,反正就是人见人欺的那种,而且一些系统本身的routineprefetch能关的都给关掉。但是这些操作系统的内核是被修改过的,分为虚模式和实模式2种。虚模式状态下,文件或者注册表新增,修改,删除,读取看起来是正常返回的,但是其实会被导向到一个远端的文件系统(NASHadoop等)的。具体操作如下:

新增: 远端文件系统上会新增文件或者注册表条目,而且记录创建发起的进程信息,时间戳。在本地文件和远端文件映射表中记录一个条目,映射表也存在远端。

修改:远端文件系统上会远端文件系统上会新增文件记录原文件或原注册表项,修改后的文件,修改发起的进程信息,时间戳

删除: 远端文件系统上的文件或者注册表项不会被真正删除,会记录删除标志,删除发起进程信息,时间戳

读取: 先查看映射表,如果读取的文件或注册表项在映射表中存在的并且没有删除标志,则读取远端的文件,如果读取的文件或注册表项在映射表中存在的并且如果读取的文件或注册表项在映射表中存在的并且有删除标志,则报告IO错误,否则读取本地文件或者注册表。

在实模式下,则上述操作都操作本地文件。

在简要描叙了模拟运行机器OS2种模式后,下面轮到网页真正运行了。IWSVAI会根据用户的OS类型和Agent类型,选择一台模拟机并且打开相应的浏览器在虚模式下运行,所以这时候网页运行产生的结果都会在远端的文件系统中被记录。同时这台模拟机通过网关发送或者接受数据的记录也会被拦截记录。IWSVAI会通过RPC或者固定端口向模拟机请求进程信息和service信息,模拟机处理这些请求时是以实模式运行的。网页运行触发的行为类型:比如说下载PE文件,创建新进程,创建service,新增autorun项,发送本机系统信息等,每项行为都有加权分,加权分相加的总分越高,说明网页越危险。网页执行触发的行为分析模块会分析网页的行为,会计算出一个加权总分。根据加权总分,给出安全,可疑,危险,致命等警告等级,危险和致命的网页将直接拒绝用户访问,同时更新客户本地的黑名单cache并将可疑,危险,致命的网页URL以及模拟运行中生成文件和网络活动信息报告给云端。当然行为加权分会根据云端的统计数据会作出相应的调整。云端的Crawler会马上爬取这些恶意的网页,并结合客户端传送过来的模拟执行过程中产生的资料,工程师分析恶意代码的原理,找出系统漏洞并给OS厂商或者浏览器软件厂商patch建议。

当然恶意网页可能会在页面的script中故意推迟恶意行为,对于这种情况,如果页面加载完成后,浏览器的javascript引擎中还有活动或者挂起的javascript线程存在时,这时候SA模块就要对Script进行分析给出判定。

如果判定了一个网页是恶意网页,则先切断模拟机跟远端文件系统的连接,然后reboot系统

主要的Concern

性能:由于模拟机执行恶意网页后需要reboot这点比较影响效率,但是由于恶意网页会首先在本地cache和云端查询被过滤,恶意网页被任意客户仅模拟执行一次,整个趋势的用户都能得到防护。

流程图如下:

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics