一种对内核的安全审计方法和系统的制作方法

文档序号:6597879阅读:199来源:国知局

专利名称::一种对内核的安全审计方法和系统的制作方法
技术领域
:本发明涉及计算机领域,尤其涉及一种利用安全审计技术对计算机内核进行安全审计的方法和系统。
背景技术
:目前的计算机安全审计技术有多种,如主机安全审计技术等。主机安全审计技术的目的是提高系统主机的安全性,通过对计算机外设的控制和审计达到对计算机主机保护的目的。对计算机外设的控制和审计包括对计算机接口进行控制和对计算机设备类进行控制。具体地,主机安全审计技术包括以下技术内容拨号行为控制允许/禁止内网用户通过MODEM或ADSL拨入外网;网络通信控制允许/记录/禁止内网主机之间相互通信;主机特性控制记录主机软件、硬件特征,能够实现计算机资产管理;主机文件控制允许/记录/禁止对主机指定文件的操作;主机设备控制允许/记录/禁止使用主机本地设备,如U盘、软光驱、并口、串口、打印机等;操作行为控制记录/查看主机操作者行为,包括当前屏幕、键盘输入。对内核的安全管理是指对运行于内核中的软件的安全管理,也就是对内核钩子的管理。钩子是WINDOWS中消息处理机制的一个要点,通过在计算机中安装各种钩子,应用程序能够设置相应的子例程来监视系统里的消息传递以及在这些消息到达目标窗口程序之前处理它们。钩子的种类很多,每种钩子可以截获并处理相应的消息类。如键盘钩子可以截获键盘消息,鼠标钩子可以截获鼠标消息,外壳钩子可以截获启动和关闭应用程序的消息,日志钩子可以监视和记录输入事件等。内核钩子就是在Windows的内核层实现类似钩子的行为,从而达到控制系统底层某些功能的目的。内核钩子的种类也较多,如系统服务描述符表(systemservicesdescriptortable,SSDT)内核钩子、与图形界面相关的系统服务描述符表(ShadowSSDT)内核钩子、文件系统驱动(Filesystemdriver,FSD)内核钩子、中断描述符表(InterruptDescriptorTable,IDT)内核钩子、内核内嵌钩子(InlineHook)、I/0请求包(1/0Requestpackage,IRP)过滤钩子、过滤驱动钩子和系统回调例程(CallBack)钩子等。当前对反钩子技术主要应用在一些小型的专业安全检测工具中,对系统的内核钩子进行检测;而在现有的主机安全审计中,主要专注于桌面级的审计,只能通过对计算机外设的控制和审计达到实现计算机主机保护的目的,而无法审计计算机内核状态下的软件行为。现有的反钩子技术无法对内核状态下的软件行为合法性做出正确评估,同时,检测出的内核状态信息复杂,普通技术人员很难获知当前内核状态;进一步地,现有的反内核钩子技术没有数据库的支持,也就无法对内核状态下的软件行为进行记录分析。
发明内容本发明实施例提供一种对内核的安全审计方法和系统,以解决现有的主机安全审计中无法对设备的内核进行安全审计的问题。—种对内核的安全审计方法,所述方法包括对设备内的每个内核模块进行扫描,确定每个内核模块中安装的内核钩子;利用预先设定的多个行为信息组,对每个内核模块中的内核钩子进行比较,其中,每个行为信息组包含至少一个内核钩子标识;确定安装的内核钩子与所述至少一个行为信息组中内核钩子标识匹配的内核模块,并卸载确定的内核模块。—种对内核的安全审计系统,所述系统包括内核扫描模块,用于对设备内的每个内核模块进行扫描,确定每个内核模块中安装的内核钩子;内核审计模块,用于利用预先设定的多个行为信息组,对每个内核模块中的内核钩子进行比较,并确定安装的内核钩子与所述至少一个行为信息组中内核钩子标识匹配的内核模块,其中,每个行为信息组包含至少一个内核钩子标识;审计执行模块,用于卸载所述内核审计模块确定的内核模块。本发明实施例的有益效果由于本发明实施例通过将内核反钩子技术集成于主机安全系统中,将主机安全审计技术与内核反钩子技术有机结合来,对设备内的每个内核模块进行扫描并确定每个内核模块中安装的内核钩子,确定出安装了非法软件的内核模块,并卸载确定的内核模块,以提高内核系统的安全性和可靠性。图1为本发明实施例一中对内核的安全审计方法的示意图;图2为本发明实施例二中对内核的安全审系统的结构示意图;图3为本发明实施例二中对内核的安全审系统应用于场景示意图。具体实施例方式为了对计算机内核状态下的软件行为进行安全审核,本发明实施例将内核反钩子技术集成于主机安全系统中,将主机安全审计技术与内核反钩子技术有机结合来,以达到监控计算机从内核态到用户态所有软件的动作行为,以提高计算机的安全性和可靠性。下面结合说明书附图对本发明实施例进行详细描述。实施例一本发明实施例一将内核反钩子技术应用于主机安全审计技术中,提出一种新的对内核的安全审计方法,如图1所示,所述方法包括以下步骤步骤101:对设备内的每个内核模块进行扫描,确定每个内核模块中安装的内核钩子。本步骤中涉及的设备可以是诸如计算机等终端设备,也可以是其他需要对设备的内核状态进行安全审计的其他终端。待处理的设备中具有内核系统,该内核系统中安装了至少一个软件,每个软件可以对应一个内核模块,这里的内核模块是指驱动程序文件(相当于应用层一个exe文件),在每个内核模块中又可能安装了内核钩子。为了对设备的内核态的软件行为进行安全审计,需要对设备内的内核模块进行扫描,其扫描方式可以是实时扫描,或是周期性地进行扫描,扫描周期可以根据经验值或是对安全性的要求确定,如果对设备内核的安全性要求较高,可以设置较短的扫描周期,以便于在内核的软件态出现异常时可以快速发现;如果对设备内核的安全性要求较低,可以设置较短的扫描周期,以便于节约设备资源。在本步骤中确定出内核模块中安装的内核钩子后,可以记录每个内核模块对应的内核钩子标识。步骤102:利用预先设定的多个行为信息组,对每个内核模块中的内核钩子进行比较。其中,每个行为信息组包含至少一个内核钩子标识,进一步地,每个行为信息组中包含的内核钩子标识之和表示内核钩子标识对应的内核钩子的集合为非法。在本步骤中,可以根据管理员的实际经验设定行为信息组,并将设定的行为信息组存储在数据库中,这里的数据库可以是设备应用层的存储部件,也可以是能够与设备进行通信的其他数据库设备。步骤103:确定安装的内核钩子与所述至少一个行为信息组中内核钩子标识匹配的内核模块,并卸载确定的内核模块。利用行为信息组与内核模块中的内核钩子进行比较的具体方法是根据确定的内核模块中的内核钩子确定该内核模块对应的内核钩子标识,然后将该内核模块对应的内核钩子标识分别与每个行为信息组中的内核钩子标识进行比较,如果内核模块对应的内核钩子标识全部包含在某一行为信息组中的内核钩子标识中(包括内核模块对应的内核钩子标识与行为信息组中的内核钩子标识完全相同,或是内核模块对应的内核钩子标识包含行为信息组中的内核钩子标识),则表示该内核模块是与行为信息组中内核钩子标识匹配的内核模块,确定该内核模块中安装了非法软件(如恶意软件或间谍软件);否则,则确定该内核模块中没有安装非法软件。为了确保设备内核的安全性,本步骤确定出安装了非法软件的内核后可以先恢复内核模块中安装的非法内核钩子,即恢复从确定的内核模块中查找出的与匹配的行为信息组中内核钩子标识对应的内核钩子,然后再卸载确定的内核模块。下面举例说明恢复内核模块中安装的非法内核钩子若某一内核模块中运行A、B、C、D四种内核钩子,某一行为信息组中包含了A、B、C三种内核钩子标识,表示A、B、C三种内核钩子安装在一起是间谍软件行为,则恢复该内核模块中运行的A、B、C三种内核钩子。恢复内核钩子的执行手段可以为以来自磁盘文件的正常代码来覆盖钩子代码。例如若恶意软件安装了IDT键盘钩子来读取用户通过键盘输入的密码,则通过钩子恢复之后,由于键盘钩子代码不存在,因此也就无法再读取用户通过键盘输入的密码。通过上述步骤101步骤103的方案,使用主机安全审计技术对设备的内核模块进行安全审计,并利用预先设定的不安全策略查找出内核系统中哪些内核模块中安装了非法软件,以增加对恶意内核模块判定的准确性,使非专业技术人员也能够通过本发明实施例提供的方案对设备的内核态进行安全审计。在本发明实施例一进一步通过白名单的方式对安全审计方法进行优化,具体做法为在步骤101与步骤102之间还包括以下步骤步骤A:根据预先设定的内核白名单信息,从多个内核模块中确定合法的内核模块。本步骤中的内核白名单信息也可以与行为信息组存储在同一数据库中,也可以分别存储在不同的数据库中。由于在步骤A中已经筛选出了合法的内核模块,因此,在步骤102中需要进行是否安装了非法内核钩子判定的内核模块是内核系统中除了合法的内核模块之外的其他内核模块,而属于内核白名单信息中的内核模块,可以在判定是否安装了非法内核钩子时将其忽略。实施例二本发明实施例还提供一种与实施例一属于同一发明构思下对内核的安全审计系统,如图2所示,所述系统包括以下部件内核扫描模块11、内核审计模块12和审计执行模块13,其中内核扫描模块ll用于对设备内的每个内核模块进行扫描,确定每个内核模块中安装的内核钩子;内核审计模块12用于利用预先设定的多个行为信息组,对每个内核模块中的内核钩子进行比较,并确定安装的内核钩子与所述至少一个行为信息组中内核钩子标识匹配的内核模块,其中,每个行为信息组包含至少一个内核钩子标识;审计执行模块13用于卸载所述内核审计模块确定的内核模块。在本实施例中的内核安全审计系统可以安装在设备中,进一步地,可以应用于设备的应用层。如图3所示,内核安全审计系统安装在用户计算机系统中,与内核系统交互通信完成对内核系统中的各内核模块进行安全审计。具体地,主机审计系统服务器进程和审计系统管理服务Web接口从数据库中读取预先设定的不安全策略(包括行为信息组和内核白名单信息),然后通过TCP/IP协议由LAN网络发送至对内核的安全审计系统。内核扫描模块11需要对内核模块中安装的多种钩子进行扫描,其扫描内容可以为图2所示的内核驱动、过滤驱动、FSD钩子、SSDT钩子、ShadowSSDT钩子、IDT钩子、Cal1Back钩子和内核代码内嵌钩子。如果当前审计的是非内核的常规行为,则直接按照目前的主机安全审计技术进行审核,如果当前审计的是内核是否安装软件非法软件的行为,则内核扫描模块11将扫描结果发送内核审计模块12。内核审计模块12根据来自服务器系统的不安全策略对各内核模块进行审计,最后由审计执行模块13恢复安装了非法软件的内核模块中的部分或全部内核钩子,并卸载所述内核审计模块12确定的内核模块。所述内核审计模块12还用于从确定的所述内核模块中查找出与匹配的行为信息组中内核钩子标识对应的内核钩子;则所述审计执行模块13还用于恢复查找出的所述内核钩子。所述系统还包括合法确定模块14用于根据预先设定的内核白名单信息,从多个内核模块中确定合法的内核模块;所述内核审计模块12具体用于从多个内核模块中确定除合法的内核模块之外的其他内核模块,并利用行为信息组对所述其他内核模块中的内核钩子进行比较。实施例三下面通过一个具体的实例对本发明实施例一和实施例二的方案进行详细描述。假设本实施例三中预先设定了两个行为信息组,其中行为信息组1中包含的内核钩子标识为IDT键盘钩子标识+TDI网络通信钩子标识;行为信息组2中包含的内核钩子标识为IDT键盘钩子标识+NDIS网络通信钩子标识。内核扫描模块11对计算机的各内核模块进行扫描,分别得到3个内核模块中安装钩子的行为,并将这3个内核模块的标识发送给合法确定模块14;合法确定模块14根据预先设定的内核白名单信息,确定内核模块3是合法的内核模块;合法确定模块14将内核模块1和内核模块2的扫描结果发送给内核审计模块12,其中内核模块1中安装的钩子为IDT键盘钩子+TDI网络通信钩子+FSD钩子;内核模块2中安装的钩子为IDT键盘钩子+CallBack钩子。内核审计模块12确定内核模块1中安装的钩子对应的标识包含行为信息组1中包含的内核钩子标识,则内核模块1中安装了非法软件。审计执行模块13对内核模块1中的IDT键盘钩子标识和TDI网络通信钩子标识对应的内核钩子进行恢复,然后卸载内核模块l。通过本发明实施例一至实施例三的方案,将内核反钩子技术应用到主机安全审计系统中,形成具有反内核间谍软件功能的新一代主机安全审计系统;使用主机安全审计技术对设备的内核模块进行安全审计,并利用预先设定的不安全策略查找出内核系统中哪些内核模块中安装了非法软件,以增加对恶意内核模块判定的准确性,使非专业技术人员也能够通过本发明实施例提供的方案对设备的内核态进行安全审计。显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。权利要求一种对内核的安全审计方法,其特征在于,所述方法包括对设备内的每个内核模块进行扫描,确定每个内核模块中安装的内核钩子;利用预先设定的多个行为信息组,对每个内核模块中的内核钩子进行比较,其中,每个行为信息组包含至少一个内核钩子标识;确定安装的内核钩子与所述至少一个行为信息组中内核钩子标识匹配的内核模块,并卸载确定的内核模块。2.如权利要求1所述的方法,其特征在于,每个行为信息组中包含的内核钩子标识之和表示内核钩子标识对应的内核钩子的集合为非法。3.如权利要求1所述的方法,其特征在于,确定与所述行为信息组中内核钩子标识匹配的内核模块之后,卸载确定的内核模块之前,所述方法还包括从确定的所述内核模块中查找出与匹配的行为信息组中内核钩子标识对应的内核钩子;恢复查找出的所述内核钩子。4.如权利要求1所述的方法,其特征在于,确定每个内核模块中安装的内核钩子之后,且确定与行为信息组中内核钩子标识匹配的内核模块之前,所述方法还包括根据预先设定的内核白名单信息,从多个内核模块中确定合法的内核模块;利用行为信息组对每个内核模块中的内核钩子进行比较,包括从多个内核模块中确定除合法的内核模块之外的其他内核模块,并利用行为信息组对所述其他内核模块中的内核钩子进行比较。5.—种对内核的安全审计系统,其特征在于,所述系统包括内核扫描模块,用于对设备内的每个内核模块进行扫描,确定每个内核模块中安装的内核钩子;内核审计模块,用于利用预先设定的多个行为信息组,对每个内核模块中的内核钩子进行比较,并确定安装的内核钩子与所述至少一个行为信息组中内核钩子标识匹配的内核模块,其中,每个行为信息组包含至少一个内核钩子标识;审计执行模块,用于卸载所述内核审计模块确定的内核模块。6.如权利要求5所述的系统,其特征在于,每个行为信息组中包含的内核钩子标识之和表示内核钩子标识对应的内核钩子的集合为非法。7.如权利要求5所述的系统,其特征在于,所述内核审计模块,还用于从确定的所述内核模块中查找出与匹配的行为信息组中内核钩子标识对应的内核钩子;所述审计执行模块,还用于恢复查找出的所述内核钩子。8.如权利要求5所述的系统,其特征在于,所述系统还包括合法确定模块,用于根据预先设定的内核白名单信息,从多个内核模块中确定合法的内核模块;所述内核审计模块,具体用于从多个内核模块中确定除合法的内核模块之外的其他内核模块,并利用行为信息组对所述其他内核模块中的内核钩子进行比较。9.如权利要求58任一所述的系统,其特征在于,所述系统应用于设备的应用层。全文摘要本发明公开了一种对内核的安全审计方法和系统,主要内容包括通过将内核反钩子技术集成于主机安全系统中,将主机安全审计技术与内核反钩子技术有机结合来,对设备内的每个内核模块进行扫描并确定每个内核模块中安装的内核钩子,确定出安装了非法软件的内核模块,并卸载确定的内核模块,以提高内核系统的安全性和可靠性。文档编号G06F21/00GK101777102SQ20101010493公开日2010年7月14日申请日期2010年1月29日优先权日2010年1月29日发明者柯宗庆,柯宗贵申请人:蓝盾信息安全技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1