检测计算机系统内隐藏的对象技术方案

技术编号:6073001 阅读:191 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供一种用于检测运行于计算机上的操作系统的服务模块的安全损害的系统和方法。至少一个原生服务模块响应由至少一个进程或线程做出的请求,返回与计算机系统中至少一个对象有关的第一组所请求的信息。次级服务模块响应由至少一个已授权的进程或线程做出的请求,绕过该至少一个原生服务模块,生成并且返回与计算机系统中至少一个对象有关的第二组所请求的信息。限制线程到次级服务模块的访问,从而仅仅允许预定的由受信任的安全应用程序生成的线程访问次级服务模块。

Detecting objects hidden in a computer system

The present invention provides a system and method for detecting the security damage of service modules running on a computer operating system. At least one native service module, responding to requests made by at least one process or thread, returns the requested information of the first set associated with at least one object in the computer system. The secondary service module response by at least one authorized process or thread request, bypassing the at least one primary service module generates and returns with the computer system in at least one object related information requested by the second groups. Restricting access to a secondary service module, allowing only predetermined threads generated by trusted security applications to access the secondary service module.

【技术实现步骤摘要】

本专利技术总体上涉及数据处理系统中的安全,且具体而言,涉及在此类系统中确定 隐藏的对象的存在,其相应地可被用于检测恶意软件的存在,例如恶意rootkit。
技术介绍
当前,全世界的计算机用户都被恶意软件的传播问题所困扰,其不仅影响运行MS windows版本的计算机,还影响其它并不普及的平台。恶意软件正愈来愈复杂化,迫使反恶 意软件的开发商持续地寻找用于检测和移除恶意软件程序的新的途径。除了常规的例如数字签名检查和使用仿真程序的检测方法之外,其它被使用的技 术包括用于入侵检测或入侵防御的系统,所述系统控制程序并维护由受信任的应用程序所 组成的白名单。特别令人关注的是被称为rootkit的恶意软件程序,到目前为止,利用传统的安 全措施还无法对其进行有效的处理。这些程序能够在计算机系统中使用例如劫持管理员 (或更高级别)权限的技术来隐藏它们存在的痕迹。这类程序很难通过使用已知的反病毒技 术来检测,因为已知的技术已经限制了发现隐藏的对象的能力,所述隐藏的对象例如,隐藏 的文件、隐藏的进程或隐藏的注册表项。为了隐藏他们的存在,rootkit使用各种拦截系统功能的方法,例如拦截也就是挂 载(hooking),和改变响应程序功能调用所返回的信息。例如,rootkit能够发现请求某些 注册表项的程序功能调用,并且取代返回那些实际的注册表项,rootkit将修改或简化后的 注册表项列表返回给调用程序。值得注意的是,除了将rootkit作为恶意软件的传统观念以外,一些rootkit可被 用于合法的应用程序,例如防拷贝技术。检测rootkit的已知方法包含创建与单个rootkit 相应的特定过程(例如rootkit的操作可以被绕过,或干扰rootkit所使用的系统功能拦 截)。对安全程序开发者来说这些方法表现出密集型的负担,开发者需要努力跟上恶意软件 的不断扩展的增长。另一个途径,如在公开号为2007/0078915 (专利技术人为feissoway)的美国专利申 请中所披露的,包含在内核空间运行单独的检测器,所述单独的检测器能绕过某些可能已 被rootkit所损害的操作系统的核心代码。如果通过受损的内核代码以及通过单独的检 测器双方来请求关于该计算机系统的信息,在两个单独的结果之间的任何差异都可能表明 rootkit的存在。这种途径提供了一种用于在对特定的现有rootkit没有龙邀知识的情况 下检测rootkit的手段;但是,单独的检测器本身可能受到针对特定安全技术的类rootkit 的恶意软件的损害。此外,不排除在不久的将来,rootkit或类rootkit的恶意软件可能针对计算机系 统的不具备检测这类恶意软件的能力的其他部分。因此,需要克服上述或其它挑战的用于有效检测rootkit的改进技术。
技术实现思路
本专利技术一方面旨在提供一种计算机系统,所述计算机系统用于检测可能被隐藏在 其中的对象。所述计算机系统具有计算机电路,所述计算机电路至少包括与存储器配置 (arrangement)连接的处理器,所述计算机电路至少被配置为执行操作系统和安全配置。所 述操作系统适合于帮助实现多个进程的执行以及提供至少一个原生(native)服务模块,所 述原生服务模块响应由所述多个进程的至少其中之一做出的请求,返回与所述计算机系统 中至少一个对象有关的第一组所请求的信息。所述安全配置包括次级(secondary)服务模块,所述次级服务模块适合于响应由 所述多个进程中至少一个已授权的进程做出的请求,生成并返回与所述计算机系统中的所 述至少一个对象有关的第二组所请求的信息。在生成所述第二组所请求的信息的过程中, 所述次级服务模块绕过所述至少一个原生服务模块。进一步地,所述安全配置包括访问限 制模块,所述访问限制模块限制对所述次级服务模块的访问,从而仅仅允许所述至少一个 已授权的进程访问所述次级服务模块。此外,所述安全配置包括比较模块,所述比较模块适合于比较所述第一组所请求 的信息和所述第二组所请求的信息,并且基于比较结果,确定任一不在所述第一组所请求 的信息中的对象是否存在于所述第二组所请求的信息中。本专利技术的另一个方面旨在提供一种用于检测运行于计算机系统上的操作系统的 服务模块的安全损害的方法。根据本方法,至少一个原生服务模块响应由至少一个线程做 出的请求,返回与所述计算机系统中的至少一个对象有关的第一组所请求的信息。次级服务模块响应由至少一个已授权线程做出的请求,生成并返回与所述计算机 系统中的所述至少一个对象有关的第二组所请求的信息。在生成所述第二组所请求的信息 的过程中,所述次级服务模块绕过所述至少一个原生服务模块。限制线程到所述次级服务 模块的访问,从而仅仅允许预定的由受信任的安全应用程序所生成的线程访问所述次级服 务模块。比较所述第一组所请求的信息和所述第二组所请求的信息,并且基于比较结果, 确定任一不在所述第一组所请求的信息中的对象是否存在于所述第二组所请求的信息,由 此确定至少一个隐藏的对象。能够分析所述隐藏的对象以确定所述原生服务模块是否已经 被损害。本专利技术上述方面以及其他方面的一些优点将通过以下对优选实施例的具体描述 而凸显。附图说明通过下述结合附图对本专利技术各实施例的具体描述,本专利技术将得到更为全面的理 解,其中图1示出了本专利技术一实施例的流程图,该实施例通过绕过可能被rootkit所使用的挂 载(hooks)的方式,可用于检测隐藏的系统对象。图2示出了根据一实施例,用于通过计算机系统中应用程序来访问内核操作的独 立的序列。图3示出了根据一实施例,用于在确定隐藏的系统对象时识别rootkit的示范性过程。图4示出了根据本专利技术的一个实施例,用于初始化次级内核和其相关组件的示范 性过程。图5示出了根据一个实施例,用于访问硬盘驱动器的两个序列,其中所述硬盘驱 动器包括次级驱动器组。图6示出了根据一个实施例,计算机系统模块的配置框图。图7示出了根据各实施例,能够实施本专利技术的计算机系统的示意图。同时,该专利技术是能够以各种修改和替代形式来实现,其细节已通过附图的示例方 式展现并将加以详细描述。但是应予理解的是,其目的并非将本专利技术限制于所描述的具体 实施例。相反,在如随附权利要求书所限定的本专利技术的精神和范围内,本专利技术涵盖所有修 改,等值和替代实施例。具体实施例方式本专利技术的一个方面旨在通过检测在计算机系统中对象已经被隐藏的事实来检测 在系统中rootkit的存在。在本文语境中使用的术语“对象”是指文件、进程、驱动程序、寄 存器的内容、系统变量或该变量的值、系统注册表项、动态库的项目、存储设备或通常指计 算机系统的数据或资源,所述计算机系统的数据或资源在系统中通常是可识别的,但是可 能被秘密地或无意地隐藏起来而无法由常规手段所检测。根据本专利技术的这一方面,对于对象被隐藏的事实的检测表明计算机系统可能已经 被隐藏了该对象的rootkit所损害。根据一类实施例,有可能通过次级(secondary)操作系统内核来检测隐藏的对象, 所述次级操作系统内核与原生的(native)或初始的操作系统内核同时操作,帮助实现和 协调系统进程和用户应用程序的操作。次级内核能够执行原生内核的大部分操作(并且事 实上,在一些实施例中,能够被配置为执行原生内核的全部操作本文档来自技高网
...

【技术保护点】
1.一种用于检测隐藏对象的计算机系统,所述系统包括:计算机电路,至少具有连接到存储器配置的处理器,所述计算机电路被配置为至少执行操作系统和安全配置;其中,所述操作系统适合于帮助实现多个进程的执行以及提供至少一个原生服务模块,所述至少一个原生服务模块响应由所述多个进程的至少其中之一做出的请求,返回与所述计算机系统中至少一个对象有关的第一组所请求的信息;以及其中,所述安全配置包括:次级服务模块,所述次级服务模块适合于响应由所述多个进程的至少一个已授权的进程做出的请求,生成和返回与所述计算机系统中所述至少一个对象有关的第二组所请求的信息,其中,在生成所述第二组所请求的信息的过程中,所述次级服务模块绕过所述至少一个原生服务模块;访问限制模块,所述访问限制模块限制对所述次级服务模块的访问,从而仅仅允许所述至少一个已授权的进程访问所述次级服务模块;和比较模块,适合于比较所述第一组所请求的信息和所述第二组请求的信息以生成比较结果,并且基于所述比较结果,确定任一不在所述第一组所请求的信息中的对象是否存在于所述第二组所请求的信息中。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:卢萨科夫·E·维亚切斯拉夫
申请(专利权)人:卡巴斯基实验室封闭式股份公司
类型:发明
国别省市:RU

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1