进程隐藏方法及计算机可读存储介质技术

技术编号:19341239 阅读:23 留言:0更新日期:2018-11-07 13:34
本发明专利技术公开了一种进程隐藏方法及计算机可读存储介质,方法包括:定时从进程列表中获取程序路径与预设的程序路径相匹配的进程,并获取所述进程的进程编号;当目标进程查询进程列表时,根据所获取的进程编号过滤进程列表,并将过滤后的进程列表返回给所述目标进程。本发明专利技术可简单高效地实现进程隐藏,且灵活性高,稳定性强,通用性强。

Process hiding method and computer readable storage medium

The invention discloses a process hiding method and a computer readable storage medium. The method includes: acquiring a process matching the program path and the preset program path from the process list at a regular time, and acquiring the process number of the process; filtering the process according to the acquired process number when the target process queries the process list; List and return the filtered process list to the target process. The invention can realize process concealment simply and efficiently, and has high flexibility, strong stability and strong versatility.

【技术实现步骤摘要】
进程隐藏方法及计算机可读存储介质
本专利技术涉及软件安全
,尤其涉及一种进程隐藏方法及计算机可读存储介质。
技术介绍
在一些软件系统中,为了防止一些关键的进程被强制结束或者被察觉,就需要对这个软件系统中的关键进程或者全部进程进行隐藏保护,也就是说,这些关键进程不能在任务管理器等工具中被查询。现有的进程隐藏方法层出不穷,但是这些方法不能同时做到有效、灵活和稳定。其中包括内核层的进程隐藏方法,例如DKOM(DirectKernelObjectManipulation,直接操作内核对象)和SSDTHOOK(SystemServicesDescriptorTable,系统服务描述符表)等方法。还有用户层的进程隐藏方法,例如远程DLL注入结合APIHOOK的技术和全局消息钩子结合APIHOOK等方法。但是,这些方法都不够灵活不够稳定,理由如下:1、DKOM和SSDTHOOK等内核层的进程隐藏技术虽然简单有效,但是,如果应用层与内核层没有通信的话,所有应用层程序都无法检测到在内核层被隐藏的程序,这样就会造成所有的用户层程序都不能查看被隐藏的进程,而在实际应用中我们可能需要部分应用层程序能检测到被隐藏的进程,因此这些内核层的进程隐藏技术不够灵活。2、内核层的进程隐藏技术需要加载驱动,修改内存系统内核,造成系统不稳定的问题。在WIN64位系统有KPP(KernelPatchProtection内核补丁保护)的限制而导致的蓝屏问题。3、在用户层根据进程ID来判断进程是否需要隐藏的办法虽然有效,但是进程ID是伴随进程启动而产生的,导致应用该方法还需要准确判断进程的启动关闭,因此该方法不够灵活。
技术实现思路
本专利技术所要解决的技术问题是:提供一种进程隐藏方法及计算机可读存储介质,灵活性强且通用性高。为了解决上述技术问题,本专利技术采用的技术方案为:一种进程隐藏方法,包括:定时从进程列表中获取程序路径与预设的程序路径相匹配的进程,并获取所述进程的进程编号;当目标进程查询进程列表时,根据所获取的进程编号过滤进程列表,并将过滤后的进程列表返回给所述目标进程。本专利技术还涉及一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现以下步骤:定时从进程列表中获取程序路径与预设的程序路径相匹配的进程,并获取所述进程的进程编号;当目标进程查询进程列表时,根据所获取的进程编号过滤进程列表,并将过滤后的进程列表返回给所述目标进程。本专利技术的有益效果在于:根据进程对应的程序路径来获取进程列表中需要隐藏的进程,相比根据进程编号来判断的方案更加灵活;通过将过滤后的进程列表返回给目标进程,使目标进程的进程列表查询结果为不包含需要隐藏的进程的进程列表,从而实现进程隐藏。本专利技术具有配置灵活、稳定有效、简单高效的特点,且通用性强,能够灵活地应用与各种应用系统中。附图说明图1为本专利技术实施例一的一种进程隐藏方法的流程图;图2为本专利技术实施例一中步骤S1的流程图;图3为本专利技术实施例一中步骤S2的流程图。具体实施方式为详细说明本专利技术的
技术实现思路
、所实现目的及效果,以下结合实施方式并配合附图详予说明。本专利技术最关键的构思在于:根据程序路径来获取需要隐藏的进程,根据进程编号过滤掉进程列表中需要隐藏的进程。请参阅图1,一种进程隐藏方法,包括:定时从进程列表中获取程序路径与预设的程序路径相匹配的进程,并获取所述进程的进程编号;当目标进程查询进程列表时,根据所获取的进程编号过滤进程列表,并将过滤后的进程列表返回给所述目标进程。从上述描述可知,本专利技术的有益效果在于:具有配置灵活、稳定有效、简单高效、通用性强的特点。进一步地,所述定时从进程列表中获取程序路径与预设的程序路径相匹配的进程,并获取所述进程的进程编号具体为:确定隐藏进程对应的程序路径;服务主进程根据预设的时间周期,获取进程列表;获取所述进程列表中各进程对应的程序路径;遍历所述进程列表;若一进程对应的程序路径与所述隐藏进程对应的程序路径相匹配,则获取所述一进程的进程编号。由上述描述可知,通过使用较高权限的Windows服务进程来遍历进程列表,保证能获取除了系统进程以外的所有进程的程序路径。进一步地,所述获取所述一进程的进程编号之后,进一步包括:当进程列表遍历结束时,将所获取的进程编号存储至共享内存中。由上述描述可知,共享内存为进程间较为简单有效的共享数据方式,通过将进程编号保存至共享内存,使其他进程也可获取这些进程编号。进一步地,所述当目标进程查询进程列表时,根据所获取的进程编号过滤进程列表,并将过滤后的进程列表返回给所述目标进程具体为:安装全局消息钩子;当通过全局消息钩子检测到当前打开的进程为预设的目标进程,则将目标进程中获取进程列表的API函数的入口地址修改为预设的进程隐藏函数的入口地址;当目标进程查询进程列表时,通过所述进程隐藏函数过滤进程列表中进程编号与所获取的进程编号一致的进程,并将过滤后的进程列表返回给所述目标进程。由上述描述可知,将全局消息钩子与APIHOOK进行结合,可避免对内核层进行修改,简单高效。进一步地,所述全局消息钩子包括鼠标消息钩子、键盘消息钩子和CBT消息钩子。由上述描述可知,通过安装全局消息钩子,以便监控窗口事件。本专利技术还提出一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现以下步骤:定时从进程列表中获取程序路径与预设的程序路径相匹配的进程,并获取所述进程的进程编号;当目标进程查询进程列表时,根据所获取的进程编号过滤进程列表,并将过滤后的进程列表返回给所述目标进程。进一步地,所述定时从进程列表中获取程序路径与预设的程序路径相匹配的进程,并获取所述进程的进程编号具体为:确定隐藏进程对应的程序路径;服务主进程根据预设的时间周期,获取进程列表;获取所述进程列表中各进程对应的程序路径;遍历所述进程列表;若一进程对应的程序路径与所述隐藏进程对应的程序路径相匹配,则获取所述一进程的进程编号。进一步地,所述获取所述一进程的进程编号之后,进一步包括:当进程列表遍历结束时,将所获取的进程编号存储至共享内存中。进一步地,所述当目标进程查询进程列表时,根据所获取的进程编号过滤进程列表,并将过滤后的进程列表返回给所述目标进程具体为:安装全局消息钩子;当通过全局消息钩子检测到当前打开的进程为预设的目标进程,则将目标进程中获取进程列表的API函数的入口地址修改为预设的进程隐藏函数的入口地址;当目标进程查询进程列表时,通过所述进程隐藏函数过滤进程列表中进程编号与所获取的进程编号一致的进程,并将过滤后的进程列表返回给所述目标进程。进一步地,所述全局消息钩子包括鼠标消息钩子、键盘消息钩子和CBT消息钩子。实施例一请参照图1,本专利技术的实施例一为:一种进程隐藏方法,本方法基于Windows服务,可应用与敏感系统中,包括如下步骤:S1:定时从进程列表中获取程序路径与预设的程序路径相匹配的进程,并获取所述进程的进程编号;S2:当目标进程查询进程列表时,根据所获取的进程编号过滤进程列表,并将过滤后的进程列表返回给所述目标进程。也就是说,本实施例主要分为两个部分,第一个部分为服务主进程确定需要隐藏的进程的程序路径或者其所在的程序路径。另外,定时获所有进程的程序路径,并将符合路径的进程的进程ID进行保本文档来自技高网
...

【技术保护点】
1.一种进程隐藏方法,其特征在于,包括:定时从进程列表中获取程序路径与预设的程序路径相匹配的进程,并获取所述进程的进程编号;当目标进程查询进程列表时,根据所获取的进程编号过滤进程列表,并将过滤后的进程列表返回给所述目标进程。

【技术特征摘要】
1.一种进程隐藏方法,其特征在于,包括:定时从进程列表中获取程序路径与预设的程序路径相匹配的进程,并获取所述进程的进程编号;当目标进程查询进程列表时,根据所获取的进程编号过滤进程列表,并将过滤后的进程列表返回给所述目标进程。2.根据权利要求1所述的进程隐藏方法,其特征在于,所述定时从进程列表中获取程序路径与预设的程序路径相匹配的进程,并获取所述进程的进程编号具体为:确定隐藏进程对应的程序路径;服务主进程根据预设的时间周期,获取进程列表;获取所述进程列表中各进程对应的程序路径;遍历所述进程列表;若一进程对应的程序路径与所述隐藏进程对应的程序路径相匹配,则获取所述一进程的进程编号。3.根据权利要求2所述的进程隐藏方法,其特征在于,所述获取所述一进程的进程编号之后,进一步包括:当进程列表遍历结束时,将所获取的进程编号存储至共享内存中。4.根据权利要求1所述的进程隐藏方法,其特征在于,所述当目标进程查询进程列表时,根据所获取的进程编号过滤进程列表,并将过滤后的进程列表返回给所述目标进程具体为:安装全局消息钩子;当通过全局消息钩子检测到当前打开的进程为预设的目标进程,则将目标进程中获取进程列表的API函数的入口地址修改为预设的进程隐藏函数的入口地址;当目标进程查询进程列表时,通过所述进程隐藏函数过滤进程列表中进程编号与所获取的进程编号一致的进程,并将过滤后的进程列表返回给所述目标进程。5.根据权利要求4所述的进程隐藏方法,其特征在于,所述全局消息钩子包括鼠标消息钩子、键盘消息钩子和CBT消息钩子。6.一种计算机可读存储介质,其上存储有计算...

【专利技术属性】
技术研发人员:许全聪申强吴少华黄志炜
申请(专利权)人:厦门市美亚柏科信息股份有限公司
类型:发明
国别省市:福建,35

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

1