发明名称 一种基于堆访问模式的恶意程序监控方法和系统
摘要 基于堆访问模式的恶意程序监控方法,步骤如下:(1)恶意程序的监控;请求程序监控服务,获取堆访问模式,并将被监控程序表现出的堆访问模式与恶意程序模型库中特征进行对比,判断是否为恶意程序行为,并进行处理;(2)恶意程序模型库的建立;收集所关注的恶意程序家族的样本集合;通过程序监控服务,获取各样本的堆访问模式,计算获得恶意程序家族堆访问模式的共同特征作为恶意程序家族的特征模型,建立恶意程序模型库;并求取各恶意程序家族的堆访问模型,构成恶意程序模型库,作为判断待监控程序行为是否恶意的参照依据;(3)程序监控服务;基于Ether的指令级监控功能,通过监控程序运行,提取程序执行过程中的堆访问特征序列;为恶意程序的监控和恶意程序模型库建立提供服务支持。
申请公布号 CN104021343B 申请公布日期 2016.08.24
申请号 CN201410201515.8 申请日期 2014.05.06
申请人 南京大学 发明人 曾庆凯;周志胜
分类号 G06F21/56(2013.01)I 主分类号 G06F21/56(2013.01)I
代理机构 南京瑞弘专利商标事务所(普通合伙) 32249 代理人 陈建和
主权项 基于堆访问模式的恶意程序监控方法,其特征是步骤如下:(1)恶意程序的监控;请求程序监控服务,获取堆访问模式,并将被监控程序表现出的堆访问模式与恶意程序模型库中特征进行对比,判断是否为恶意程序行为,并进行处理;(2)恶意程序模型库的建立;收集所关注的恶意程序家族的样本集合;通过程序监控服务,获取各样本的堆访问模式,计算获得恶意程序家族堆访问模式的共同特征作为恶意程序家族的特征模型,逐步建立恶意程序模型库;并求取各恶意程序家族的堆访问模型,构成恶意程序模型库,作为判断待监控程序行为是否恶意的参照依据;在建立恶意程序模型库时,提取恶意程序家族的堆访问模式作为恶意程序的模型;在提取得到恶意程序样本运行时的堆访问模式后,对同一家族的恶意程序样本的堆访问模式进行融合,获得恶意程序家族的堆访问模型;恶意程序样本的堆访问模式通过请求程序监控服务获得;(3)程序监控服务;基于Ether的指令级监控功能,通过监控程序运行,提取程序执行过程中的堆访问特征序列;为恶意程序的监控和恶意程序模型库建立提供服务支持;在对运行程序实施监控时,请求程序监控服务获取运行程序的堆访问模式;经过与恶意程序模型库中恶意模型特征进行对比,识别出运行程序行为是否为恶意;当发现运行程序执行了恶意程序行为时,做出报警;程序监控服务接受恶意程序模型库建立操作和程序监控操作指定的程序名作为参数,启动程序监控;程序监控服务将待监控程序名及该程序的启动控制信号传递至通信控制代理,由后者启动该程序,通信控制代理在程序监控之前启动;堆区间模式操作的具体步骤是,被监控程序执行时,通过API挂钩,挂钩后API函数会从共享内存中获取被监控程序名,确定需要监控的对象,取得被监控程序堆区间变化信息,写入通信控制代理的共享内存中,并更新程序的堆区间信息;程序监控服务在解析每条指令前,向通信控制代理请求堆区间信息,逐步完成所有指令的解析,取得程序堆访问模式,进而将之传递至请求方,提供服务;其中,程序监控服务Dom0与通信控制代理DomU间的通信采用基于socket通信的P2P网络模型实现;通信控制代理在程序监控期间,接受程序监控服务的信息请求,收集与传递被监控程序的启停状态信息和堆区间信息;为此,分配共享内存区域,存放通信相关信息;涉及的信息有:由程序监控服务通过网络传递至DomU的待监控程序名以及由挂钩后函数获取的被监控程序堆区间变化信息;并按照程序监控服务的要求执行程序的启停操作;程序监控服务利用了Ether0.1软件提供的程序指令级监控功能;需要对Xen进行配置,修改xend服务的配置文件,配置网络模式为网桥模式,将network‑script设置为 network‑bridge,将vif‑script设置为vif‑bridge;使用socket通信原理实施P2P网络模型;Dom0和DomU所用的IP地址可从虚拟机内查到,端口号选一个未被占用的端口号;恶意程序监控处理的流程:请求程序监控服务,完成程序的监控;步骤100为起始动作;步骤101以被监控程序名为参数,请求程序监控服务,获取待监控程序的堆访问模式;步骤102判断程序监控服务是否成功,若成功,转步骤103,否则转步骤109;步骤103从模型库中取得一个未经对比的模型;步骤104判断是否成功取得,若成功,转步骤105,否则转步骤108;步骤105将被监控程序的堆访问模式与模型库中取出的模型作对比,求出相似度;步骤106判断相似度是否超过阈值,阈值取0.85;如果是,则转步骤107,否则转步骤103;步骤107说明被监控程序能匹配模型库的某个家族的堆访问模型,从而被识别;步骤108说明在模型库中无法找到与被监控程序匹配的家族模型,无法识别;步骤109表示程序监控服务失败;步骤10a通过程序监控服务发送程序终止信号至通信控制代理,关闭程序,同时报警;步骤10b为结束状态。
地址 210093 江苏省南京市鼓楼区汉口路22号
您可能感兴趣的专利