A series of techniques allow the detection of hidden malware trying to hide its presence on the system by using a trusted hardware event counter and a specific memory address (and the sequence of such addresses) to generate instructions for suspicious malicious activities. By monitoring specific patterns of address distribution over time, people can establish behavior models for specific processes (that is, \fingerprints\) - and later try to match the suspicious malicious process with the stored behavior model. Whenever the actual measurement behavior of a suspicious malicious process fails to match the stored behavior model described, the system or system administrator can attempt to perform a recovery action on the computer system in order to locate and delete Malware hidden on the system.
【技术实现步骤摘要】
【国外来华专利技术】用于进行异常检测的硬化事件计数器
本文描述的实施例总体上涉及恶意软件检测,并且具体地,涉及通过使用可信硬件事件计数器和各种分析技术(比如,指纹识别和机器学习)来检测恶意软件(以及其他异常)。
技术介绍
Rootkit是被设计用于使特定进程或程序的存在躲避正常检测方法的隐蔽型恶意软件(“恶意软件(malware)”)。Rootkit通常使得能够对受损系统进行连续特权访问。当攻击者获得根或管理员访问时,可以自动进行或激活rootkit安装。获得这种访问可以是或者利用已知漏洞直接攻击系统的结果或者通过得到对密码的访问(通过破解、特权提升或社会工程)。一旦被安装,rootkit通常试图隐藏侵入并且试图维持对其自身(或其他进程)的特权访问。Rootkit检测是很困难的,因为rootkit可以能够破坏旨在将其发现的软件。检测方法包括:使用可替代的可信操作系统、基于行为的方法、签名扫描、差异扫描以及存储器转储分析。删除rootkit可能是复杂的或实际上是不可能的,特别是在rootkit驻留于内核内的情况下。重新安装操作系统可能是这种问题的唯一可用的解决方案。当处理固件rootkit时,删除可能需要硬件替换或专用设备。现代rootkit不必提升访问,但经常用于通过添加隐蔽能力来使另一个软件有效负载不可检测。大多数rootkit被分类为恶意软件,因为与这些恶意软件捆绑在一起的有效负载是恶意的。例如,有效负载可能隐蔽地盗取用户密码、信用卡信息、计算资源或进行其他未经授权的活动。少量的rootkit可以被其用户认为是实用应用。例如,rootkit可能掩蔽CD-ROM仿真驱动程序 ...
【技术保护点】
一种非暂态计算机可读介质,其上存储有指令,所述指令包括当被执行时使得计算机系统执行以下操作的指令:在第一时间段上监测所述计算机系统的第一组硬件计数器,从而产生一个或多个操作系统进程中的每个操作系统进程的第一指纹数据;在不受所述计算机系统的操作系统控制的安全环境中在第二时间段上监测所述计算机系统的所述第一组硬件计数器,从而产生一个或多个操作系统进程中的每个操作系统进程的第一运行时间数据;将所述一个或多个操作系统进程中的每个操作系统进程的所述第一运行时间数据与对应的操作系统进程的所述第一指纹数据进行比较;以及指示所述一个或多个操作系统进程中的任一操作系统进程的所述第一运行时间数据是否与所述对应的操作系统进程的所述第一指纹数据相差预定阈值。
【技术特征摘要】
【国外来华专利技术】2015.05.08 US 14/707,9771.一种非暂态计算机可读介质,其上存储有指令,所述指令包括当被执行时使得计算机系统执行以下操作的指令:在第一时间段上监测所述计算机系统的第一组硬件计数器,从而产生一个或多个操作系统进程中的每个操作系统进程的第一指纹数据;在不受所述计算机系统的操作系统控制的安全环境中在第二时间段上监测所述计算机系统的所述第一组硬件计数器,从而产生一个或多个操作系统进程中的每个操作系统进程的第一运行时间数据;将所述一个或多个操作系统进程中的每个操作系统进程的所述第一运行时间数据与对应的操作系统进程的所述第一指纹数据进行比较;以及指示所述一个或多个操作系统进程中的任一操作系统进程的所述第一运行时间数据是否与所述对应的操作系统进程的所述第一指纹数据相差预定阈值。2.如权利要求1所述的非暂态计算机可读介质,其中,当被执行时使得所述计算机系统在第一时间段上监测所述计算机系统的第一组硬件计数器的所述指令包括当被执行时使得所述计算机系统执行以下操作的指令:在所述第一时间段期间监测与所述第一组硬件计数器相对应的存储器地址。3.如权利要求2所述的非暂态计算机可读介质,其中,当被执行时使得所述计算机系统在第二时间段上监测所述计算机系统的所述第一组硬件计数器的所述指令包括当被执行时使得所述计算机系统执行以下操作的指令:在所述第二时间段期间监测与所述第一组硬件计数器相对应的存储器地址。4.如权利要求1所述的非暂态计算机可读介质,其中,所述第一组硬件计数器包括与以下事件中的至少一个事件相对应的硬件计数器:机器清除、高速缓存未命中、分支未命中、自修改代码、调试事件、单步事件、存储转发未命中、未对准存储器引用、ITLB转储清除、TLB未命中、间接调用、条件分支、陷阱、上下文切换、电源管理事件以及明显栈指针改变指令。5.如权利要求1所述的非暂态计算机可读介质,其中,当被执行时使得所述计算机系统在第一时间段上监测所述计算机系统的第一组硬件计数器的所述指令进一步包括当被执行时使得所述计算机系统执行以下操作的指令:在所述第一时间段期间监测与所述第一组硬件计数器相对应的相对存储器地址,其中,所述相对存储器地址是根据进程在存储器中的基础负载位置来计算的。6.如权利要求1所述的非暂态计算机可读介质,其中,当被执行时使得所述计算机系统在第一时间段上监测所述计算机系统的第一组硬件计数器的所述指令包括当被执行时进一步使得所述计算机系统进行以下操作的指令:在所述第一时间段上监测第二计算机系统的所述第一组硬件计数器;将所述第二计算机系统的所监测到的第一组硬件计数器与所述计算机系统的所监测到的第一组硬件计数器相组合;以及使用经组合的所述第二计算机的所述所监测到的第一组硬件计数器和所述计算机系统的所述所监测到的第一组硬件计数器来产生一个或多个操作系统进程中的每个操作系统进程的第一指纹数据。7.如权利要求1所述的非暂态计算机可读介质,其中,当被执行时使得所述计算机系统在第一时间段上监测所述计算机系统的第一组硬件计数器的所述指令包括当被执行时使得所述计算机系统执行以下操作的指令:在所述第一时间段期间监测与所述第一组硬件计数器中的至少一个硬件计数器相对应的存储器地址转换次数。8.如权利要求1所述的非暂态计算机可读介质,其中,所述第一指纹数据是从受控测试环境中监测到的。9.如权利要求1所述的非暂态计算机可读介质,其中,在所述第一组硬件计数器中的至少一个硬件计数器包括无法被重置的硬件计数器。10.一种检测异常的方法,所述方法包括:在第一时间段上监测计算机系统的第一组硬件计数器,从而产生一个或多个操作系统进程中的每个操作系统进程的第一指纹数据;在不受所述计算机系统的操作系统控制的安全环境中在第二时间段上监测所述计算机系统的所述第一组硬件计数器,从而产生一个或多个操作系统进程中的每个操作系统进程的第一运行时间数据;将所述一个或多个操作系统进程中的每个操作系统进程的所述第一运行时间数据与对应的操作系统进程的所述第一指纹数据进行比较;以及指示所述一个或多个操作系统进程中的任一操作系统进程的所述第一运行时间数据是否与所述对应的操作系统进程的所述第一指纹数据相差预定阈值。11.如权利要...
【专利技术属性】
技术研发人员:E·塔米尔,A·科林,A·奈舒图特,V·苏霍姆利诺夫,I·穆迪科,E·娄兹欧恩,
申请(专利权)人:迈克菲有限公司,
类型:发明
国别省市:美国,US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。