本发明专利技术公开了一种进程行为控制的方法和装置,其中所述方法包括:在检测到键盘输入或按键输入行为时,底层驱动拦截消息钩子对回调函数的调用;其中,所述消息钩子与触发当前键盘输入或按键输入行为的进程关联;底层驱动将所述与消息钩子关联的进程的信息发送至应用层;底层驱动阻止或允许所述与消息钩子关联进程触发的行为;应用层依据所述与消息钩子关联的进程的信息,判断是否阻止或允许对应进程触发的行为,并将判断结果通知底层驱动;底层驱动根据应用层的判断结果执行相应的阻止或允许对应进程触发的行为的操作。本发明专利技术可以在拦截消息钩子对回调函数的调用时,保证系统的稳定性。
【技术实现步骤摘要】
本专利技术涉及计算机设备安全的领域,具体涉及一种进程行为控制的方法,以及,一种进程行为控制的装置,以及,一种进程行为控制的底层驱动系统。
技术介绍
Windows操作系统的广泛应用导致其成为了遭受恶意软件攻击最严重的操作系统,它的安全性问题成为了用户及计算机安全研究人员关注的焦点。恶意软件是指在计算机系统上执行恶意任务的病毒、蠕虫和特洛伊木马。恶意软件最常用的实现技术是钩子技术,通过使用钩子技术,恶意软件可以改变操作系统正常的执行路径,从而破坏系统或者窃取用户信息。目前,常用的一种防护做法是通过对在Windows操作系统下的钩子的检测来实现对恶意软件的防护设计。Windows操作系统下的钩子通过调用回调函数来完成对系统的回调,因此,拦截对回调函数的调用就能获取钩子的进程信息,但是,对钩子回调函数的调用的拦截处理不在很容易引起系统的卡死。因此,本领域技术人员迫切需要解决的技术问题是在拦截消息钩子对回调函数的调用时,如何保证系统的稳定性。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的一种进程行为控制的方法和相应的一种进程行为控制的装置,以及相应的一种进程行为控制的底层驱动系统。依据本专利技术的一个方面,提供了一种进程行为控制的方法,包括在检测到键盘输入或按键输入行为时,底层驱动拦截消息钩子对回调函数的调用;其中,所述消息钩子与触发当前键盘输入或按键输入行为的进程关联;底层驱动将所述与消息钩子关联的进程的信息发送至应用层;底层驱动阻止或允许所述与消息钩子关联进程触发的行为;应用层依据所述与消息钩子关联的进程的信息,判断是否阻止或允许对应进程触发的行为,并将判断结果通知底层驱动;底层驱动根据应用层的判断结果执行相应的阻止或允许对应进程触发的行为的操作。可选地,所述底层驱动阻止或允许所述与消息钩子关联进程触发的行为的步骤包括应用层生成阻止或允许所述与消息钩子关联进程触发的行为的信息,并发送至底层驱动;底层驱动依据所述信息阻止或允许对应进程触发的行为。可选地,所述底层驱动根据应用层的判断结果执行相应的阻止或允许对应进程触发的行为的操作的步骤包括底层驱动根据应用层的判断结果记录相关规则,所述相关规则包括在应用层判断为阻止对应进程触发的行为时,底层驱动记录为阻止对应进程触发的行为的规则;在应用层判断为允许对应进程触发的行为时,底层驱动记录为允许对应进程触发的行为的规则;底层驱动根据所述相关规则执行相应的阻止或允许对应进程触发的行为的操作,所述操作包括底层驱动根据记录为阻止对应进程触发的行为的规则执行阻止对应进程触发的行为的操作; 底层驱动根据记录为允许对应进程触发的行为的规则执行允许对应进程触发的行为的操作。可选地,所述应用层判断是否阻止或允许对应进程触发的行为的判断结果,依据向用户显示与消息钩子关联的进程的信息,接收用户选择的阻止或允许该进程触发行为的信息生成。根据本专利技术的另一方面,提供了一种进程行为控制的装置,包括位于底层驱动的拦截模块,用于在检测到键盘输入或按键输入行为时,拦截消息钩子对回调函数的调用;其中,所述消息钩子与触发当前键盘输入或按键输入行为的进程关联;位于底层驱动的发送模块,用于将所述与消息钩子关联的进程的信息发送至应用层;位于底层驱动的第一执行模块,用于阻止或允许所述与消息钩子关联进程触发的行为;位于应用层的判断模块,用于依据所述与消息钩子关联的进程的信息,判断是否阻止或允许对应进程触发的行为,并将判断结果通知底层驱动;位于底层驱动的第二执行模块,用于根据应用层的判断结果执行相应的阻止或允许对应进程触发的行为的操作。可选地,所述位于底层驱动的第一执行模块包括位于应用层的判断信息生成子模块,用于生成阻止或允许所述与消息钩子关联进程触发的行为的信息,并发送至底层驱动;位于底层驱动的第一执行子模块,用于依据所述信息阻止或允许对应进程触发的行为。可选地,所述位于底层驱动的第二执行模块包括位于底层驱动的规则记录子模块,用于根据应用层的判断结果记录相关规则,所述相关规则包括在应用层判断为阻止对应进程触发的行为时,底层驱动记录为阻止对应进程触发的行为的规则;在应用层判断为允许对应进程触发的行为时,底层驱动记录为允许对应进程触发的行为的规则;位于底层驱动的第二执行子模块,用于根据所述相关规则执行相应的阻止或允许对应进程触发的行为的操作,所述操作包括底层驱动根据记录为阻止对应进程触发的行为的规则执行阻止对应进程触发的行为的操作;底层驱动根据记录为允许对应进程触发的行为的规则执行允许对应进程触发的行为的操作。根据本专利技术的另一方面,提供了一种进程行为控制的底层驱动系统,包括拦截模块,用于在检测到键盘输入或按键输入行为时,拦截消息钩子对回调函数的调用;其中,所述消息钩子与触发当前键盘输入或按键输入行为的进程关联; 发送模块,用于将所述与消息钩子关联的进程的信息发送至应用层;第一执行模块,用于阻止或允许所述与消息钩子关联进程触发的行为;判断结果接收模块,用于接收应用层的判断结果,所述判断结果为应用层依据所述与消息钩子关联的进程的信息,判断是否阻止或允许对应进程触发的行为的判断结果;第二执行模块,用于根据应用层的判断结果执行相应的阻止或允许对应进程触发的行为的操作。可选地,所述第一执行模块包括信息接收子模块,用于接收应用层生成的阻止或允许所述与消息钩子关联进程触发的行为的信息;第一执行子模块,用于依据所述信息阻止或允许对应进程触发的行为。可选地,所述第二执行模块包括规则记录子模块,用于根据应用层的判断结果记录相关规则,所述相关规则包括在应用层判断为阻止对应进程触发的行为时,底层驱动记录为阻止对应进程触发的行为的规则;在应用层判断为允许对应进程触发的行为时,底层驱动记录为允许对应进程触发的行为的规则;第二执行子模块,用于根据所述相关规则执行相应的阻止或允许对应进程触发的行为的操作,所述操作包括根据记录为阻止对应进程触发的行为的规则执行阻止对应进程触发的行为的操作;根据记录为允许对应进程触发的行为的规则执行允许对应进程触发的行为的操作。根据本专利技术的一种进程行为控制机制可以正常拦截由消息钩子产生的对回调函数的调用,使应用层可以在判断过程中使用消息机制,避免由此带来的系统暂时或永久卡死的情况,通过对消息钩子所引发的回调函数的调用拦截时进行特殊处理,即在拦截到需要应用层处理的消息时,底层驱动直接放行(或阻止)后再通知应用层处理,或者,通知应用层后应用层如果需要用到系统消息机制,在使用任何消息机制的调用之前先行通知允许还是阻止对应进程触发的行为。然后在经过应用层充分的自动判断或询问用户后再再次通知驱动记录相关规则。这样能保证对恶意软件的准确识别而系统不出现任何意外情况,从而保证了系统的稳定性,以及,用户设备运行的安全性和稳定性。上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的具体实施方式。附图说明通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附 图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。而且在整本文档来自技高网...
【技术保护点】
一种进程行为控制的方法,包括:在检测到键盘输入或按键输入行为时,底层驱动拦截消息钩子对回调函数的调用;其中,所述消息钩子与触发当前键盘输入或按键输入行为的进程关联;底层驱动将所述与消息钩子关联的进程的信息发送至应用层;底层驱动阻止或允许所述与消息钩子关联进程触发的行为;应用层依据所述与消息钩子关联的进程的信息,判断是否阻止或允许对应进程触发的行为,并将判断结果通知底层驱动;底层驱动根据应用层的判断结果执行相应的阻止或允许对应进程触发的行为的操作。
【技术特征摘要】
【专利技术属性】
技术研发人员:董杰,张晓霖,
申请(专利权)人:北京奇虎科技有限公司,奇智软件北京有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。