一种保护进程的方法、装置及电子设备制造方法及图纸

技术编号:14028002 阅读:99 留言:0更新日期:2016-11-19 13:02
本发明专利技术的实施例公开一种保护进程的方法、装置及电子设备,涉及信息安全技术,能够提升操作系统的安全防护效率。方法包括:在预先注入到内核层中的挂钩函数监测到暂停进程内核函数被调用时,挂钩所述暂停进程内核函数;获取所述暂停进程内核函数中的目标进程的进程句柄,依据所述进程句柄,获取所述目标进程的进程路径;如果获取的进程路径与预先设置的进程目录中任一进程路径相匹配,按照预先设置的处理策略拦截调用所述暂停进程内核函数的操作。本发明专利技术适用于保护进程。

【技术实现步骤摘要】

本专利技术涉及信息安全技术,尤其涉及一种保护进程的方法、装置及电子设备
技术介绍
随着Windows系统内核层技术细节的逐渐公开,越来越多的木马病毒等恶意应用程序(APP,Application),为了自身存活和非法利益,开始使用内核层驱动程序来保护自身的进程,受内核层驱动程序保护的恶意应用程序的进程,可以结束(杀死)Windows系统中的安全防护进程,例如,杀毒软件或防火墙软件的进程,从而使得恶意应用程序的进程可以根据恶意应用程序提供者的意图,对用户的进程或系统进程进行恶意攻击,可能造成计算机运行不稳定,甚至可能给用户带来非常大的经济损失,例如,隐私信息的泄露以及物质财产的被窃取。其中,进程(Process)是计算机中的应用程序关于数据集合上的一次运行活动,应用程序是指令、数据及其组织形式的描述,进程是应用程序的实体。进程防杀是保护用户的进程、Windows系统中重要的系统进程以及安全防护进程不被非法结束的一种方法,目前,常用的进程防杀是利用系统服务描述符表钩子(SSDT HOOK,System Services Descriptor Table HOOK)技术。其中,SSDT是一将ring3,即应用层的Win32API和ring0,即内核层的内核API联系起来的描述符表,SSDT并不仅仅只包含一个庞大的函数地址索引表,还包含着一些其它有用的信息,例如,地址索引的基地址、服务函数个数等。通过修改SSDT的函数地址,可以对常用Windows函数及API进行钩子处理,从而有效防控恶意进程对安全防护进程或系统进程的恶意攻击。目前,对于恶意应用程序恶意结束安全防护进程或系统进程或任务,通过挂钩(Hook)NtTerminateProcess函数内核函数或本地进程调用(LPC,Local Procedure Call)通信函数,可以有效防止进程或任务被结束,但对于恶意应用程序暂停安全防护进程或系统进程,即使安全防护进程或系统进程处于不工作状态,例如,如果金山毒霸相关的安全防护进程被恶意暂停,将使得金山毒霸的安全防护功能失效,恶意应用程序可以进行恶意攻击,导致操作系统的安全防护效率较低,安全性不高。由于暂停进程与结束进程的机理不同,因而,目前还没有有效防止进程被暂停的技术方案。
技术实现思路
有鉴于此,本专利技术实施例提供一种保护进程的方法、装置及电子设备,能够提升操作系统的安全防护效率,以解决现有的保护进程的方法中,不能有效防止进程被暂停而导致操作系统的安全防护效率较低的问题。第一方面,本专利技术实施例提供一种保护进程的方法,包括:在预先注入到内核层中的挂钩函数监测到暂停进程内核函数被调用时,挂钩所述暂停进程内核函数;获取所述暂停进程内核函数中的目标进程的进程句柄,依据所述进程句柄,获取所述目标进程的进程路径;如果获取的进程路径与预先设置的进程目录中任一进程路径相匹配,按照预先设置的处理策略拦截调用所述暂停进程内核函数的操作。结合第一方面,在第一方面的第一种实施方式中,在所述在预先注入到内核层中的挂钩函数监测到暂停进程内核函数被调用时之前,所述方法还包括:调用操作系统的挂钩函数窗口设置接口,设置用于监测调用所述暂停进程内核函数的挂钩函数,并获取操作系统的根权限以注入所述挂钩函数。结合第一方面的第一种实施方式,在第一方面的第二种实施方式中,所述注入所述挂钩函数包括:在系统服务描述符表中查询并获取所述暂停进程内核函数的函数地址,存储所述暂停进程内核函数的函数地址;利用所述挂钩函数的函数地址替换所述暂停进程内核函数的函数地址的函数地址;在所述挂钩函数中设置写入存储的所述暂停进程内核函数的函数地址,以用于调用所述暂停进程内核函数。结合第一方面、第一方面的第一种或第二种实施方式,在第一方面的第三种实施方式中,所述依据所述进程句柄,获取所述目标进程的进程路径包括:根据所述进程句柄调用进程路径获取内核函数,查询得到与所述进程句柄相匹配的进程路径。结合第一方面、第一方面的第一种或第二种实施方式,在第一方面的第四种实施方式中,所述按照预先设置的处理策略拦截调用所述暂停进程内核函数的操作包括:返回拒绝访问信息。结合第一方面、第一方面的第一种或第二种实施方式,在第一方面的第五种实施方式中,所述按照预先设置的处理策略拦截调用所述暂停进程内核函数的操作包括:返回暂停成功的假信息。结合第一方面、第一方面的第一种或第二种实施方式,在第一方面的第六种实施方式中,所述按照预先设置的处理策略拦截调用所述暂停进程内核函数的操作包括:通知所述暂停进程内核函数执行暂停目标进程的操作,返回暂停成功信息;调用进程恢复内核函数,恢复被所述暂停进程内核函数暂停的目标进程。第二方面,本专利技术实施例提供一种保护进程的装置,包括:挂钩模块、进程句柄获取模块、进程路径获取模块以及进程处理模块,其中,挂钩模块,用于在预先注入到内核层中的挂钩函数监测到暂停进程内核函数被调用时,挂钩所述暂停进程内核函数;进程句柄获取模块,用于获取所述暂停进程内核函数中的目标进程的进程句柄,进程路径获取模块,用于依据所述进程句柄,获取所述目标进程的进程路径;进程处理模块,如果获取的进程路径与预先设置的进程目录中任一进程路径相匹配,按照预先设置的处理策略拦截调用所述暂停进程内核函数的操作。结合第二方面,在第二方面的第一种实施方式中,所述装置还包括:挂钩函数注入模块,用于调用操作系统的挂钩函数窗口设置接口,设置用于监测调用所述暂停进程内核函数的挂钩函数,并获取操作系统的根权限以注入所述挂钩函数。结合第二方面的第一种实施方式,在第二方面的第二种实施方式中,所述挂钩函数注入模块包括:调用单元、权限获取单元、查询单元、替换单元以及地址写入单元,其中,调用单元,用于调用操作系统的挂钩函数窗口设置接口,设置用于监测调用所述暂停进程内核函数的挂钩函数;权限获取单元,用于获取操作系统的根权限;查询单元,用于在系统服务描述符表中查询并获取所述暂停进程内核函数的函数地址,存储所述暂停进程内核函数的函数地址;替换单元,用于利用所述挂钩函数的函数地址替换所述暂停进程内核函数的函数地址的函数地址;地址写入单元,用于在所述挂钩函数中设置写入存储的所述暂停进程内核函数的函数地址,以用于调用所述暂停进程内核函数。结合第二方面、第二方面的第一种或第二种实施方式,在第二方面的第三种实施方式中,所述进程路径获取模块包括:进程路径获取单元,用于根据所述进程句柄调用进程路径获取内核函数,查询得到与所述进程句柄相匹配的进程路径。结合第二方面、第二方面的第一种或第二种实施方式,在第二方面的第四种实施方式中,所述进程处理模块包括:匹配判断单元以及拒绝访问单元,其中,匹配判断单元,如果获取的进程路径与预先设置的进程目录中任一进程路径相匹配,通知拒绝访问单元;拒绝访问单元,返回拒绝访问信息。结合第二方面、第二方面的第一种或第二种实施方式,在第二方面的第五种实施方式中,所述进程处理模块包括:匹配判断单元以及伪成功信息返回单元,其中,匹配判断单元,如果获取的进程路径与预先设置的进程目录中任一进程路径相匹配,通知伪成功信息返回单元;伪成功信息返回单元,用于返回暂停成功的假信息。结合第二方面、第二方面的第一种或第二种实施方式,在第二方面的第六种实施方本文档来自技高网
...
一种保护进程的方法、装置及电子设备

【技术保护点】
一种保护进程的方法,其特征在于,包括:在预先注入到内核层中的挂钩函数监测到暂停进程内核函数被调用时,挂钩所述暂停进程内核函数;获取所述暂停进程内核函数中的目标进程的进程句柄,依据所述进程句柄,获取所述目标进程的进程路径;如果获取的进程路径与预先设置的进程目录中任一进程路径相匹配,按照预先设置的处理策略拦截调用所述暂停进程内核函数的操作。

【技术特征摘要】
1.一种保护进程的方法,其特征在于,包括:在预先注入到内核层中的挂钩函数监测到暂停进程内核函数被调用时,挂钩所述暂停进程内核函数;获取所述暂停进程内核函数中的目标进程的进程句柄,依据所述进程句柄,获取所述目标进程的进程路径;如果获取的进程路径与预先设置的进程目录中任一进程路径相匹配,按照预先设置的处理策略拦截调用所述暂停进程内核函数的操作。2.根据权利要求1所述的保护进程的方法,其特征在于,所述依据所述进程句柄,获取所述目标进程的进程路径包括:根据所述进程句柄调用进程路径获取内核函数,查询得到与所述进程句柄相匹配的进程路径。3.根据权利要求1所述的保护进程的方法,其特征在于,所述按照预先设置的处理策略拦截调用所述暂停进程内核函数的操作包括:返回拒绝访问信息。4.根据权利要求1所述的保护进程的方法,其特征在于,所述按照预先设置的处理策略拦截调用所述暂停进程内核函数的操作包括:返回暂停成功的假信息。5.根据权利要求1所述的保护进程的方法,其特征在于,所述按照预先设置的处理策略拦截调用所述暂停进程内核函数的操作包括:通知所述暂停进程内核函数执行暂停目标进程的操作,返回暂停成功信息;调用进程恢复内核函数,恢复被所述暂停进程内核函数暂停的目标进程。6.一种保护进程的装置,其特征在于,包括:挂钩模块、进程句柄获取模块、进程路径获取模块以及进程处理模块,其中,挂钩模块,用于在预先注入到内核层中的挂钩函数监测到暂停进程内核函数被调用时,挂钩所述暂停进程内核函数;进程句柄获取模块,用于获取所述暂停进程内核函数中的目标进程的进程句柄;进程路径获取模块,用于依据所述进程句柄,获取所述目标进程的进程路径...

【专利技术属性】
技术研发人员:李文靖
申请(专利权)人:北京金山安全软件有限公司
类型:发明
国别省市:北京;11

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

1