CN105550580B - 一种窗口搜索方法和装置 - Google Patents

一种窗口搜索方法和装置 Download PDF

Info

Publication number
CN105550580B
CN105550580B CN201510903790.9A CN201510903790A CN105550580B CN 105550580 B CN105550580 B CN 105550580B CN 201510903790 A CN201510903790 A CN 201510903790A CN 105550580 B CN105550580 B CN 105550580B
Authority
CN
China
Prior art keywords
window
search
described search
target window
search process
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201510903790.9A
Other languages
English (en)
Other versions
CN105550580A (zh
Inventor
杨峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhuhai Baoqu Technology Co Ltd
Original Assignee
Zhuhai Seal Interest Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhuhai Seal Interest Technology Co Ltd filed Critical Zhuhai Seal Interest Technology Co Ltd
Priority to CN201510903790.9A priority Critical patent/CN105550580B/zh
Publication of CN105550580A publication Critical patent/CN105550580A/zh
Application granted granted Critical
Publication of CN105550580B publication Critical patent/CN105550580B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow

Abstract

本发明实施例公开了一种窗口搜索方法和装置,该方法可包括:在搜索进程需要对目标窗口进行搜索操作时,判断所述搜索进程是否为安全进程;若所述搜索进程不为所述安全进程时,禁止所述搜索进程对所述目标窗口进行搜索操作;若所述搜索进程为所述安全进程时,执行所述搜索进程对目标窗口的搜索操作。本发明实施例可以保护窗口不受到恶意软件的攻击。

Description

一种窗口搜索方法和装置
技术领域
本发明涉及互联网技术领域,尤其涉及一种窗口搜索方法和装置。
背景技术
在互联网技术领域中终端目前往往是通过窗口进行信息内容的展现、交互和处理等操作。然而,在实际应用中会存在恶意软件,且目前的恶意软件可以通过恶意软件的进程搜索终端的窗口,并对窗口进行恶意攻击,给用户带来损坏。可见,目前保护窗口不受到恶意软件的攻击是当前急需要解决的技术问题。
发明内容
本发明实施例提供了一种窗口搜索方法和装置,可以保护窗口不受到恶意软件的攻击。
第一方面,本发明实施例提供一种窗口搜索方法,包括:
在搜索进程需要对目标窗口进行搜索操作时,判断所述搜索进程是否为安全进程;
若所述搜索进程不为所述安全进程时,禁止所述搜索进程对所述目标窗口进行搜索操作;
若所述搜索进程为所述安全进程时,执行所述搜索进程对目标窗口的搜索操作。
可选的,所述方法还可以包括:
监视窗口搜索函数,当监视到所述搜索进程发起用于调用所述窗口搜索函数的搜索调用请求时,判断所述搜索调用请求所请求搜索的窗口是否为预先设置的需要保护的所述目标窗口;
所述在搜索进程需要对目标窗口进行搜索操作时,判断所述搜索进程是否为安全进程的步骤,可以包括:
当判断所述搜索调用请求所请求搜索的窗口为所述目标窗口时,判断所述搜索进程是否为安全进程。
可选的,所述执行所述搜索进程对目标窗口的搜索操作的步骤,可以包括:
调用所述窗口搜索函数对所述目标窗口进行搜索操作。
可选的,所述判断所述搜索进程是否为安全进程的步骤,可以包括:
判断所述搜索进程的路径是否为预先设置的安全目录下的路径,若是,则确定所述搜索进程为所述安全进程,若否,则确定所述搜索进程不为所述安全进程;或者
判断所述搜索进程对所述目标窗口进行搜索操作的次数是否大于预设阈值时,若是,则确定所述搜索进程不为所述安全进程,若否,则确定所述搜索进程为所述安全进程;或者
判断所述搜索进程在特定时间范围内运行的次数和时长是否分别大于预设阈值和预设时长时,若是,则确定所述搜索进程为所述安全进程,若否,则确定所述搜索进程不为所述安全进程。
可选的,所述方法还可以包括:
记录对所述目标窗口执行搜索操作时的参数信息,并生成包括记录的所述参数信息的操作轨迹,其中,所述参数信息包括搜索时间、终端所处位置和终端运行参数中的至少一项;
在搜索进程需要对目标窗口进行搜索操作时,判断当前参数信息是否与所述操作轨迹中的参数信息匹配,若是,则执行所述搜索进程对所述目标窗口的搜索操作。
第二方面,本发明实施例提供一种窗口搜索装置,包括:第一判断单元、禁止单元和执行单元,其中:
所述第一判断单元,用于在搜索进程需要对目标窗口进行搜索操作时,判断所述搜索进程是否为安全进程;
所述禁止单元,用于若所述第一判断单元判断所述搜索进程不为所述安全进程时,禁止所述搜索进程对所述目标窗口进行搜索操作;
所述执行单元,用于若所述第一判断单元判断所述搜索进程为所述安全进程时,执行所述搜索进程对目标窗口的搜索操作。
可选的,上述装置还可以包括:
第二判断单元,用于监视窗口搜索函数,当监视到所述搜索进程发起用于调用所述窗口搜索函数的搜索调用请求时,判断所述搜索调用请求所请求搜索的窗口是否为预先设置的需要保护的所述目标窗口;
所述第一判断单元用于第二判断单元判断所述搜索调用请求所请求搜索的窗口为所述目标窗口时,判断所述搜索进程是否为安全进程。
可选的,所述执行单元可以用于调用所述窗口搜索函数对所述目标窗口进行搜索操作。
可选的,所述第一判断单元可以用于判断所述搜索进程的路径是否为预先设置的安全目录下的路径,若是,则确定所述搜索进程为所述安全进程,若否,则确定所述搜索进程不为所述安全进程;或者
所述第一判断单元可以用于判断所述搜索进程对所述目标窗口进行搜索操作的次数是否大于预设阈值时,若是,则确定所述搜索进程不为所述安全进程,若否,则确定所述搜索进程为所述安全进程;或者
所述第一判断单元可以用于判断所述搜索进程在特定时间范围内运行的次数和时长是否分别大于预设阈值和预设时长时,若是,则确定所述搜索进程为所述安全进程,若否,则确定所述搜索进程不为所述安全进程。
可选的,所述装置还可以包括:
生成单元,用于记录对所述目标窗口执行搜索操作时的参数信息,并生成包括记录的所述参数信息的操作轨迹,其中,所述参数信息包括搜索时间、终端所处位置和终端运行参数中的至少一项;
所述执行单元还用于在搜索进程需要对目标窗口进行搜索操作时,判断当前参数信息是否与所述操作轨迹中的参数信息匹配,若是,则执行所述搜索进程对所述目标窗口的搜索操作。
上述技术方案中,在搜索进程需要对目标窗口进行搜索操作时,判断所述搜索进程是否为安全进程;若所述搜索进程不为所述安全进程时,禁止所述搜索进程对所述目标窗口进行搜索操作;若所述搜索进程为所述安全进程时,执行所述搜索进程对目标窗口的搜索操作。这样可以实现当搜索进程不为安全进程时,禁止对目标窗口进行搜索操作,搜索进程无法搜索到目标窗口,该搜索进程所属的恶意软件就无法攻击目标窗口。从而可以实现保护窗口不受到恶意软件的攻击。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种窗口搜索方法的流程示意图;
图2是本发明实施例提供的另一种窗口搜索方法的流程示意图;
图3是本发明实施例提供的一种窗口搜索装置的结构示意图;
图4是本发明实施例提供的另一种窗口搜索装置的结构示意图;
图5是本发明实施例提供的另一种窗口搜索装置的结构示意图
图6是本发明实施例提供的另一种窗口搜索装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,图1是本发明实施例提供的一种窗口搜索方法的流程示意图,如图1所示,包括以下步骤:
S101、在搜索进程需要对目标窗口进行搜索操作时,判断所述搜索进程是否为安全进程。
本实施例中,上述搜索进程可以是理解为当前需要对上述目标窗口进行搜索的进程。另外,本实施例中进程(Process)可以是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。另外,进程在当代面向线程设计的计算机结构中,进程还可以是线程的容器,进程还可以是程序的实体。即上述搜索进程可以理解为搜索应用程进行上述搜索操作的实体。
另外,本实施例中,上述窗口可以是屏幕上与一个应用程序相对应的矩形区域,是用户与产生该窗口的应用程序之间的可视界面。
另外,本实施例中,上述安全进程可以是理解为预先定义的安全进程。例如:预先定义为非恶意软件的进程,其中,恶意软件可以是指在计算机系统上执行恶意任务的病毒、蠕虫和特洛伊木马的程序,通过破坏软件进程来实施控制。
S102、若所述搜索进程不为所述安全进程时,禁止所述搜索进程对所述目标窗口进行搜索操作。
上述禁止搜索进程对所述目标窗口进行搜索操作可以理解为,拒绝上述搜索进程对所述目标窗口进行搜索操作。通过步骤S102就可以实现搜索进程无法搜索到上述目标窗口,从而无法对该目标窗口进行攻击。
S103、若所述搜索进程为所述安全进程时,执行所述搜索进程对目标窗口的搜索操作。
当上述搜索进程为安全进程时,则允许该搜索进程对目标窗口进行搜索。
本实施例中,上述方法可以应用于任何可运行进程和窗口的智能终端,例如:个人计算机(Personal Computer,PC)、平板电脑、手机、电子阅读器、笔记本电脑、车载设备、网络电视、可穿戴设备等可运行进程和窗口的智能终端。
本实施例中,在搜索进程需要对目标窗口进行搜索操作时,判断所述搜索进程是否为安全进程;若所述搜索进程不为所述安全进程时,禁止所述搜索进程对所述目标窗口进行搜索操作;若所述搜索进程为所述安全进程时,执行所述搜索进程对目标窗口的搜索操作。这样可以实现当搜索进程不为安全进程时,禁止对目标窗口进行搜索操作,搜索进程无法搜索到目标窗口,该搜索进程所属的恶意软件就无法攻击目标窗口。从而可以实现保护窗口不受到恶意软件的攻击。
请参阅图2,图2是本发明实施例提供的另一种窗口搜索方法的流程示意图,如图2所示,包括以下步骤:
S201、监视窗口搜索函数,当监视到所述搜索进程发起用于调用所述窗口搜索函数的搜索调用请求时,判断所述搜索调用请求所请求搜索的窗口是否为预先设置的需要保护的目标窗口。
上述窗口搜索函数可以是操作系统中内核中用于进行窗口搜索的窗口搜索函数。例如:在Windows系统中,内核中窗口搜索函数可以包括NtUserFindWindowEx函数。另外,需要说明的是,在应用层进程搜索一个窗口会使用应用层的搜索函数(例如:在Windows系统中的FindWindow和FindWindowEx函数),应用层的搜索函数都会对应于内核的窗口搜索函数(例如:在Windows系统中的NtUserFindWindowEx函数),也就是说应用层进程调用应用层的搜索函数来搜索窗口时,应用层的搜索函数再调用内核的窗口搜索函数来搜索窗口,所以真正完成窗口搜索的函数是内核的窗口搜索函数。从而本实施例中,只需要监视内核中的窗口搜索函数即可,不需要监视其他函数,以节约终端功耗。
另外,上述判断所述搜索调用请求所请求搜索的窗口是否为预先设置的需要保护的所述目标窗口,可以是通过搜索调用请求包括的窗口的类名和窗口的标题来判断所述搜索调用请求所请求搜索的窗口是否为上述目标窗口。例如:将搜索调用请求包括的窗口的类名与上述目标窗口的类名进行比较,以及将搜索调用请求包括的窗口的标题与上述目标窗口的标题进行比较,当两个比较结果都表示相同时,则判断上述搜索调用请求所请求搜索的窗口为上述目标窗口。
另外,本实施例中,可以通过Hook(钩子)来监视上述窗口搜索函数。例如:预先对上述窗口搜索函数进行Hook,即针对上述窗口搜索函数设置Hook函数。这样当搜索进程进行窗口搜索时,由于窗口搜索函数被Hook了,那么搜索进程在执行窗口搜索时就会先调用本方案的Hook函数,在Hook函数中就可以判断所述搜索调用请求所请求搜索的窗口是否为预先设置的需要保护的所述目标窗口。甚至在Hook函数中还可以执行步骤S202至步骤S204,当然,步骤S202至步骤S204可以不在Hook函数中执行。
其中,Hook是Windows消息处理机制的一个平台,应用程序可以在上面设置子程序以监视指定窗口的某种消息,而且所监视的窗口可以是其他进程所创建的。当消息到达后,在目标窗口处理函数之前处理它。钩子机制允许应用程序截获处理Window消息或特定事件。钩子实际上是一个处理消息的程序段,通过系统调用,把它挂入系统。每当特定的消息发出,在没有到达目的窗口前,钩子程序就先捕获该消息,亦即钩子函数先得到控制权。这时钩子函数即可以加工处理(改变)该消息,也可以不作处理而继续传递该消息,还可以强制结束消息的传递。
当然,本实施例中,通过Hook函数监视上述窗口搜索函数仅是以Window系统进行举例,例如:在IOS系统或者安卓系统通过其他监视函数监视上述窗口搜索函数。
另外,该实施方式中,当判断所述搜索调用请求所请求搜索的窗口不为目标窗口时,可以理解为搜索进程当前搜索的窗口不是需要保护的,从而可以直接执行搜索操作,例如:调用窗口搜索函数对所请求搜索的窗口进行搜索,或者可以结束流程。
另外,上述目标窗口可以是恶意软件想要攻击的窗口,例如:安全防护软件的窗口,或者上述目标窗口可以是包括用户私密信息的窗口等。
S202、当判断所述搜索调用请求所请求搜索的窗口为所述目标窗口时,判断所述搜索进程是否为安全进程,若是则执行步骤S204,若否,则执行步骤S203。
本实施例中,上述判断所述搜索进程是否为安全进程的步骤,可以包括:
判断所述搜索进程的路径是否为预先设置的安全目录下的路径,若是,则确定所述搜索进程为所述安全进程,若否,则确定所述搜索进程不为所述安全进程。
上述搜索进程的路径可以理解为搜索进程的文件路径,上述安全目录可以是安全防御软件下的安全目录。当判断上述搜索进程的路径为上述安全目录下的路径时,则可以确定该搜索进程的是安全的,从而可以执行搜索操作。
另外,上述判断所述搜索进程是否为安全进程的步骤,可以包括:
判断所述搜索进程对所述目标窗口进行搜索操作的次数是否大于预设阈值时,若是,则确定所述搜索进程不为所述安全进程,若否,则确定所述搜索进程为所述安全进程。
其中,上述搜索进程对所述目标窗口进行搜索操作的次数可以是特定时间范围内对目标窗口进行搜索操作的次数。该实施方式中可以实现将对目标窗口进行搜索操作的次数比较多的搜索进程定义为不安全进程。因此,在实际应用中往往只是一些恶意软件才会频繁地搜索需要保护的目标窗口。
另外,本实施例中,上述判断所述搜索进程是否为安全进程的步骤,可以包括:
判断所述搜索进程在特定时间范围内运行的次数和时长是否分别大于预设阈值和预设时长时,若是,则确定所述搜索进程为所述安全进程,若否,则确定所述搜索进程不为所述安全进程。
该实施方式中,可以实现将一些频繁运行且运行时长比较长的搜索进程定义为安全进程。因为在实际应用中频繁运行且运行时长较长的进程都是用户经常使用的,而用户经常使用的往往都是安全的。
S203、禁止所述搜索进程对所述目标窗口进行搜索操作。
S204、调用所述窗口搜索函数对所述目标窗口进行搜索操作。
另外,本实施例中,上述方法还可以包括如下步骤:
记录对所述目标窗口执行搜索操作时的参数信息,并生成包括记录的所述参数信息的操作轨迹,其中,所述参数信息包括搜索时间、终端所处位置和终端运行参数中的至少一项;
在搜索进程需要对目标窗口进行搜索操作时,判断当前参数信息是否与所述操作轨迹中的参数信息匹配,若是,则执行所述搜索进程对所述目标窗口的搜索操作。
在实际应用中,用户操作终端的习惯往往都是比较固定的,例如:周一至周五上班时间打开计算机、以及启动计算机各应用程序的顺序的时间点都是比较固定的,且使用应用程序所做的事情也是比较固定的。这样该实施方式中,可以记录对目标窗口搜索的搜索时间,以及对目标窗口搜索时终端所处位置,以及终端运行参数,从而生成上述操作轨迹。该操作轨迹可以表示用户在特定时间、特定位置或者特定终端运行参数下对目标窗口进行搜索的概率。这样在搜索进程需要对目标窗口进行搜索操作时,检测当前参数信息,若当前参数信息与上述操作轨迹中对目标窗口进行搜索的概率较高的参数信息匹配时,则可以直接执行所述搜索进程对所述目标窗口的搜索操作。例如:通过记录得知用户在时间点A以及终端所处位置点B时往往会调用搜索进程对目标窗口进行搜索,这样在搜索进程需要对目标窗口进行搜索操作,且时间和位置分别与时间点A和位置点B匹配时,则可以直接进行搜索,从而不需要进行判断,以节约终端功耗,以及提高搜索效率。又例如:通过记录得知用户在终端电量低于某一阈值时或者终端的网络速度低于某一阈值,往往会调用搜索进程对目标窗口进行搜索,例如:通过搜索目标窗口将目标窗口对应的应用程序关闭,这样在搜索进程需要对目标窗口进行搜索操作,且终端的电量低于上述阈值或者网络速度低于上述阈值时,则可以直接进行搜索,从而不需要进行判断,以节约终端功耗,以及提高搜索效率。
下面以针对安全防护软件的窗口进行一个举例说明:
安全防护软件有一个托盘进程,该进程的窗口是负责整个安全防护软件的消息传递,如果这些窗口被恶意程序攻击,整个安全防护软件的消息传递就会失效。当恶意软件A想要攻击安全防护软件的窗口,首先需要对安全防护软件的窗口进行搜索,然后进行攻击。于是采用系统内核的窗口搜索函数(例如:NtUserFindWindowEx函数)来搜索安全防护软件的窗口,由于在安全防护软件的防御驱动对系统内核中进行窗口搜索的窗口搜索函数进行监视(例如:进行Hook),当恶意程序搜索安全防护软件的窗口时,防御驱动就会进行拦截处理,返回拒绝。恶意程序搜索安全防护软件的窗口就会失败,就不会进一步攻击安全防护软件的窗口,这样整个安全防护软件的消息传递就不会受到破坏,从而保护用户系统不受恶意程序危害。
本实施例中,在图1所示的实施例的基础上增加了多种可选的实施方式,且都可以实现保护窗口不受到恶意软件的攻击。
下面为本发明装置实施例,本发明装置实施例用于执行本发明方法实施例一至二实现的方法,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例一和实施例二。
请参阅图3,图3是本发明实施例提供的一种窗口搜索装置的结构示意图,如图3所示,包括:第一判断单元31、禁止单元32和执行单元33,其中:
第一判断单元31,用于在搜索进程需要对目标窗口进行搜索操作时,判断所述搜索进程是否为安全进程。
本实施例中,上述搜索进程可以是理解为当前需要对上述目标窗口进行搜索的进程。另外,本实施例中进程(Process)可以是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。另外,进程在当代面向线程设计的计算机结构中,进程还可以是线程的容器,进程还可以是程序的实体。即上述搜索进程可以理解为搜索应用程进行上述搜索操作的实体。
另外,本实施例中,上述窗口可以是屏幕上与一个应用程序相对应的矩形区域,是用户与产生该窗口的应用程序之间的可视界面。
另外,本实施例中,上述安全进程可以是理解为预先定义的安全进程。例如:预先定义为非恶意软件的进程,其中,恶意软件可以是指在计算机系统上执行恶意任务的病毒、蠕虫和特洛伊木马的程序,通过破坏软件进程来实施控制。
禁止单元32,用于若所述第一判断单元31判断所述搜索进程不为所述安全进程时,禁止所述搜索进程对所述目标窗口进行搜索操作。
上述禁止搜索进程对所述目标窗口进行搜索操作可以理解为,拒绝上述搜索进程对所述目标窗口进行搜索操作。通过禁止单元32就可以实现搜索进程无法搜索到上述目标窗口,从而无法对该目标窗口进行攻击。
执行单元33,用于若所述第一判断单元31判断所述搜索进程为所述安全进程时,执行所述搜索进程对所述目标窗口的搜索操作。
当上述搜索进程为安全进程时,则允许该搜索进程对目标窗口进行搜索。
本实施例中,上述装置可以应用于任何可运行进程和窗口的智能终端,例如:PC、平板电脑、手机、电子阅读器、笔记本电脑、车载设备、网络电视、可穿戴设备等可运行进程和窗口的智能终端。
本实施例中,在搜索进程需要对目标窗口进行搜索操作时,判断所述搜索进程是否为安全进程;若所述搜索进程不为所述安全进程时,禁止所述搜索进程对所述目标窗口进行搜索操作;若所述搜索进程为所述安全进程时,执行所述搜索进程对目标窗口的搜索操作。这样可以实现当搜索进程不为安全进程时,禁止对目标窗口进行搜索操作,搜索进程无法搜索到目标窗口,该搜索进程所属的恶意软件就无法攻击目标窗口。从而可以实现保护窗口不受到恶意软件的攻击。
请参阅图4,图4是本发明实施例提供的另一种窗口搜索装置的结构示意图,如图4所示,包括:第二判断单元41、第一判断单元42、禁止单元43和执行单元44,其中:
第二判断单元41,用于监视窗口搜索函数,当监视到所述搜索进程发起用于调用所述窗口搜索函数的搜索调用请求时,判断所述搜索调用请求所请求搜索的窗口是否为预先设置的需要保护的所述目标窗口。
上述窗口搜索函数可以是操作系统中内核中用于进行窗口搜索的窗口搜索函数。例如:在Windows系统中,内核中窗口搜索函数可以包括NtUserFindWindowEx函数。另外,需要说明的是,在应用层进程搜索一个窗口会使用应用层的搜索函数(例如:在Windows系统中的FindWindow和FindWindowEx函数),应用层的搜索函数都会对应于内核的窗口搜索函数(例如:在Windows系统中的NtUserFindWindowEx函数),也就是说应用层进程调用应用层的搜索函数来搜索窗口时,应用层的搜索函数再调用内核的窗口搜索函数来搜索窗口,所以真正完成窗口搜索的函数是内核的窗口搜索函数。从而本实施例中,只需要监视内核中的窗口搜索函数即可,不需要监视其他函数,以节约终端功耗。
另外,上述判断所述搜索调用请求所请求搜索的窗口是否为预先设置的需要保护的所述目标窗口,可以是通过搜索调用请求包括的窗口的类名和窗口的标题来判断所述搜索调用请求所请求搜索的窗口是否为上述目标窗口。例如:将搜索调用请求包括的窗口的类名与上述目标窗口的类名进行比较,以及将搜索调用请求包括的窗口的标题与上述目标窗口的标题进行比较,当两个比较结果都表示相同时,则判断上述搜索调用请求所请求搜索的窗口为上述目标窗口。
另外,本实施例中,可以通过Hook(钩子)来监视上述窗口搜索函数。例如:预先对上述窗口搜索函数进行Hook,即针对上述窗口搜索函数设置Hook函数。这样当搜索进程进行窗口搜索时,由于窗口搜索函数被Hook了,那么搜索进程在执行窗口搜索时就会先调用本方案的Hook函数,在Hook函数中就可以判断所述搜索调用请求所请求搜索的窗口是否为预先设置的需要保护的所述目标窗口。甚至在Hook函数中还可以执行步骤S202至步骤S204,当然,步骤S202至步骤S204可以不在Hook函数中执行。
当然,本实施例中,通过Hook函数监视上述窗口搜索函数仅是以Window系统进行举例,例如:在IOS系统或者安卓系统通过其他监视函数监视上述窗口搜索函数。
另外,该实施方式中,当判断所述搜索调用请求所请求搜索的窗口不为目标窗口时,可以理解为搜索进程当前搜索的窗口不是需要保护的,从而可以直接执行搜索操作,例如:调用窗口搜索函数对所请求搜索的窗口进行搜索。
另外,上述目标窗口可以是恶意软件想要攻击的窗口,例如:安全防护软件的窗口,或者上述目标窗口可以是包括用户私密信息的窗口等。
第一判断单元42,用于第二判断单元41判断所述搜索调用请求所请求搜索的窗口为所述目标窗口时,判断所述搜索进程是否为安全进程。
本实施例中,第一判断单元41可以用于判断所述搜索进程的路径是否为预先设置的安全目录下的路径,若是,则确定所述搜索进程为所述安全进程,若否,则确定所述搜索进程不为所述安全进程。
上述搜索进程的路径可以理解为搜索进程的文件路径,上述安全目录可以是安全防御软件下的安全目录。当判断上述搜索进程的路径为上述安全目录下的路径时,则可以确定该搜索进程的是安全的,从而可以执行搜索操作。
另外,本实施例中,第一判断单元41可以用于判断所述搜索进程对所述目标窗口进行搜索操作的次数是否大于预设阈值时,若是,则确定所述搜索进程不为所述安全进程,若否,则确定所述搜索进程为所述安全进程。
其中,上述搜索进程对所述目标窗口进行搜索操作的次数可以是特定时间范围内对目标窗口进行搜索操作的次数。该实施方式中可以实现将对目标窗口进行搜索操作的次数比较多的搜索进程定义为不安全进程。因此,在实际应用中往往只是一些恶意软件才会频繁地搜索需要保护的目标窗口。
另外,本实施例中,第一判断单元41可以用于判断所述搜索进程在特定时间范围内运行的次数和时长是否分别大于预设阈值和预设时长时,若是,则确定所述搜索进程为所述安全进程,若否,则确定所述搜索进程不为所述安全进程。
该实施方式中,可以实现将一些频繁运行且运行时长比较长的搜索进程定义为安全进程。因为在实际应用中频繁运行且运行时长较长的进程都是用户经常使用的,而用户经常使用的往往都是安全的。
禁止单元43,用于若所述第一判断单元42判断所述搜索进程不为所述安全进程时,禁止所述搜索进程对所述目标窗口进行搜索操作;
所述执行单元44,用于若所述第一判断单元42判断所述搜索进程为所述安全进程时,调用所述窗口搜索函数对所述目标窗口进行搜索操作。
另外,本实施例中,如图5所示,上述装置还可以包括:
生成单元45,用于记录对所述目标窗口执行搜索操作时的参数信息,并生成包括记录的所述参数信息的操作轨迹,其中,所述参数信息包括搜索时间、终端所处位置和终端运行参数中的至少一项;
执行单元44还可以用于在搜索进程需要对目标窗口进行搜索操作时,判断当前参数信息是否与所述操作轨迹中的参数信息匹配,若是,则执行所述搜索进程对所述目标窗口的搜索操作。
在实际应用中,用户操作终端的习惯往往都是比较固定的,例如:周一至周五上班时间打开计算机、以及启动计算机各应用程序的顺序的时间点都是比较固定的,且使用应用程序所做的事情也是比较固定的。这样该实施方式中,可以记录对目标窗口搜索的搜索时间,以及对目标窗口搜索时终端所处位置,以及终端运行参数,从而生成上述操作轨迹。该操作轨迹可以表示用户在特定时间、特定位置或者特定终端运行参数下对目标窗口进行搜索的概率。这样在搜索进程需要对目标窗口进行搜索操作时,检测当前参数信息,若当前参数信息与上述操作轨迹中对目标窗口进行搜索的概率较高的参数信息匹配时,则可以直接执行所述搜索进程对所述目标窗口的搜索操作。例如:通过记录得知用户在时间点A以及终端所处位置点B时往往会调用搜索进程对目标窗口进行搜索,这样在搜索进程需要对目标窗口进行搜索操作,且时间和位置分别与时间点A和位置点B匹配时,则可以直接进行搜索,从而不需要进行判断,以节约终端功耗,以及提高搜索效率。又例如:通过记录得知用户在终端电量低于某一阈值时或者终端的网络速度低于某一阈值,往往会调用搜索进程对目标窗口进行搜索,例如:通过搜索目标窗口将目标窗口对应的应用程序关闭,这样在搜索进程需要对目标窗口进行搜索操作,且终端的电量低于上述阈值或者网络速度低于上述阈值时,则可以直接进行搜索,从而不需要进行判断,以节约终端功耗,以及提高搜索效率。
本实施例中,在图3所示的实施例的基础上增加了多种可选的实施方式,且都可以实现保护窗口不受到恶意软件的攻击。
请参阅图6,图6是本发明实施例提供的另一种窗口搜索装置的结构示意图,如图6所示,包括:处理器61、网络接口62、存储器63和通信总线64,其中,所述通信总线64用于实现所述处理器61、网络接口62和存储器63之间连接通信,所述处理器61执行所述存储器63中存储的程序用于实现以下方法:
在搜索进程需要对目标窗口进行搜索操作时,判断所述搜索进程是否为安全进程;
若所述搜索进程不为所述安全进程时,禁止所述搜索进程对所述目标窗口进行搜索操作;
若所述搜索进程为所述安全进程时,执行所述搜索进程对所述目标窗口的搜索操作。
本实施例中,处理器61执行的程序还可以包括:
监视窗口搜索函数,当监视到所述搜索进程发起用于调用所述窗口搜索函数的搜索调用请求时,判断所述搜索调用请求所请求搜索的窗口是否为预先设置的需要保护的所述目标窗口;
处理器61执行的在搜索进程需要对目标窗口进行搜索操作时,判断所述搜索进程是否为安全进程的程序,可以包括:
当判断所述搜索调用请求所请求搜索的窗口为所述目标窗口时,判断所述搜索进程是否为安全进程。
本实施例中,处理器61执行的执行所述搜索进程对所述目标窗口的搜索操作的程序,可以包括:
调用所述窗口搜索函数对所述目标窗口进行搜索操作。
本实施例中,处理器61执行的判断所述搜索进程是否为安全进程的程序,可以包括:
判断所述搜索进程的路径是否为预先设置的安全目录下的路径,若是,则确定所述搜索进程为所述安全进程,若否,则确定所述搜索进程不为所述安全进程;或者
判断所述搜索进程对所述目标窗口进行搜索操作的次数是否大于预设阈值时,若是,则确定所述搜索进程不为所述安全进程,若否,则确定所述搜索进程为所述安全进程;或者
判断所述搜索进程在特定时间范围内运行的次数和时长是否分别大于预设阈值和预设时长时,若是,则确定所述搜索进程为所述安全进程,若否,则确定所述搜索进程不为所述安全进程。
本实施例中,处理器61执行的程序还可以包括:
记录对所述目标窗口执行搜索操作时的参数信息,并生成包括记录的所述参数信息的操作轨迹,其中,所述参数信息包括搜索时间、终端所处位置和终端运行参数中的至少一项;
在搜索进程需要对目标窗口进行搜索操作时,判断当前参数信息是否与所述操作轨迹中的参数信息匹配,若是,则执行所述搜索进程对所述目标窗口的搜索操作。
本实施例中,上述装置可以应用于任何可运行进程和窗口的智能终端,例如:PC、平板电脑、手机、电子阅读器、笔记本电脑、车载设备、网络电视、可穿戴设备等可运行进程和窗口的智能终端。
本实施例中,在搜索进程需要对目标窗口进行搜索操作时,判断所述搜索进程是否为安全进程;若所述搜索进程不为所述安全进程时,禁止所述搜索进程对所述目标窗口进行搜索操作;若所述搜索进程为所述安全进程时,执行所述搜索进程对目标窗口的搜索操作。这样可以实现当搜索进程不为安全进程时,禁止对目标窗口进行搜索操作,搜索进程无法搜索到目标窗口,该搜索进程所属的恶意软件就无法攻击目标窗口。从而可以实现保护窗口不受到恶意软件的攻击。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存取存储器(Random AccessMemory,简称RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

Claims (6)

1.一种窗口搜索方法,其特征在于,包括:
在搜索进程需要对目标窗口进行搜索操作时,判断所述搜索进程是否为安全进程;
若所述搜索进程不为所述安全进程时,禁止所述搜索进程对所述目标窗口进行搜索操作;
若所述搜索进程为所述安全进程时,执行所述搜索进程对所述目标窗口的搜索操作;
记录对所述目标窗口执行搜索操作时的参数信息,并生成包括记录的所述参数信息的操作轨迹,其中,所述参数信息包括搜索时间、终端所处位置和终端运行参数中的至少一项;
在搜索进程需要对目标窗口进行搜索操作时,判断当前参数信息是否与所述操作轨迹中的参数信息匹配,若是,则执行所述搜索进程对所述目标窗口的搜索操作;
所述判断所述搜索进程是否为安全进程,包括:
判断所述搜索进程对所述目标窗口进行搜索操作的次数是否大于预设阈值时,若是,则确定所述搜索进程不为所述安全进程,若否,则确定所述搜索进程为所述安全进程;或者
判断所述搜索进程在特定时间范围内运行的次数和时长是否分别大于预设阈值和预设时长时,若是,则确定所述搜索进程为所述安全进程,若否,则确定所述搜索进程不为所述安全进程。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
监视窗口搜索函数,当监视到所述搜索进程发起用于调用所述窗口搜索函数的搜索调用请求时,判断所述搜索调用请求所请求搜索的窗口是否为预先设置的需要保护的所述目标窗口;
所述在搜索进程需要对目标窗口进行搜索操作时,判断所述搜索进程是否为安全进程,包括:
当判断所述搜索调用请求所请求搜索的窗口为所述目标窗口时,判断所述搜索进程是否为安全进程。
3.如权利要求2所述的方法,其特征在于,所述执行所述搜索进程对所述目标窗口的搜索操作,包括:
调用所述窗口搜索函数对所述目标窗口进行搜索操作。
4.一种窗口搜索装置,其特征在于,包括:第一判断单元、禁止单元和执行单元,其中:
所述第一判断单元,用于在搜索进程需要对目标窗口进行搜索操作时,判断所述搜索进程是否为安全进程;
所述禁止单元,用于若所述第一判断单元判断所述搜索进程不为所述安全进程时,禁止所述搜索进程对所述目标窗口进行搜索操作;
所述执行单元,用于若所述第一判断单元判断所述搜索进程为所述安全进程时,执行所述搜索进程对所述目标窗口的搜索操作;
生成单元,用于记录对所述目标窗口执行搜索操作时的参数信息,并生成包括记录的所述参数信息的操作轨迹,其中,所述参数信息包括搜索时间、终端所处位置和终端运行参数中的至少一项;
所述执行单元还用于在搜索进程需要对目标窗口进行搜索操作时,判断当前参数信息是否与所述操作轨迹中的参数信息匹配,若是,则执行所述搜索进程对所述目标窗口的搜索操作;
所述第一判断单元用于判断所述搜索进程对所述目标窗口进行搜索操作的次数是否大于预设阈值时,若是,则确定所述搜索进程不为所述安全进程,若否,则确定所述搜索进程为所述安全进程;或者
所述第一判断单元用于判断所述搜索进程在特定时间范围内运行的次数和时长是否分别大于预设阈值和预设时长时,若是,则确定所述搜索进程为所述安全进程,若否,则确定所述搜索进程不为所述安全进程。
5.如权利要求4所述的装置,其特征在于,所述装置还包括:
第二判断单元,用于监视窗口搜索函数,当监视到所述搜索进程发起用于调用所述窗口搜索函数的搜索调用请求时,判断所述搜索调用请求所请求搜索的窗口是否为预先设置的需要保护的所述目标窗口;
所述第一判断单元用于第二判断单元判断所述搜索调用请求所请求搜索的窗口为所述目标窗口时,判断所述搜索进程是否为安全进程。
6.如权利要求5所述的装置,其特征在于,所述执行单元用于调用所述窗口搜索函数对所述目标窗口进行搜索操作。
CN201510903790.9A 2015-12-09 2015-12-09 一种窗口搜索方法和装置 Active CN105550580B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510903790.9A CN105550580B (zh) 2015-12-09 2015-12-09 一种窗口搜索方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510903790.9A CN105550580B (zh) 2015-12-09 2015-12-09 一种窗口搜索方法和装置

Publications (2)

Publication Number Publication Date
CN105550580A CN105550580A (zh) 2016-05-04
CN105550580B true CN105550580B (zh) 2019-04-26

Family

ID=55829767

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510903790.9A Active CN105550580B (zh) 2015-12-09 2015-12-09 一种窗口搜索方法和装置

Country Status (1)

Country Link
CN (1) CN105550580B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106203097A (zh) * 2016-07-14 2016-12-07 北京金山安全软件有限公司 一种保护软件的方法、装置和电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1983296A (zh) * 2005-12-12 2007-06-20 北京瑞星国际软件有限公司 用于防止非法程序窃取用户信息的方法及装置
CN103020516A (zh) * 2013-01-17 2013-04-03 珠海市君天电子科技有限公司 一种防御网购木马的方法及其装置
CN103283202A (zh) * 2010-07-28 2013-09-04 麦克菲公司 用于针对恶意软件的网络级保护的系统和方法
CN103455757A (zh) * 2012-05-31 2013-12-18 北京金山安全软件有限公司 一种识别病毒的方法及装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101739409B (zh) * 2008-11-26 2012-05-02 英业达集团(天津)电子技术有限公司 电子文件的管理系统及其方法
CN101901313B (zh) * 2010-06-10 2013-12-18 中科方德软件有限公司 一种Linux文件保护系统及方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1983296A (zh) * 2005-12-12 2007-06-20 北京瑞星国际软件有限公司 用于防止非法程序窃取用户信息的方法及装置
CN103283202A (zh) * 2010-07-28 2013-09-04 麦克菲公司 用于针对恶意软件的网络级保护的系统和方法
CN103455757A (zh) * 2012-05-31 2013-12-18 北京金山安全软件有限公司 一种识别病毒的方法及装置
CN103020516A (zh) * 2013-01-17 2013-04-03 珠海市君天电子科技有限公司 一种防御网购木马的方法及其装置

Also Published As

Publication number Publication date
CN105550580A (zh) 2016-05-04

Similar Documents

Publication Publication Date Title
US20180359272A1 (en) Next-generation enhanced comprehensive cybersecurity platform with endpoint protection and centralized management
EP2839406B1 (en) Detection and prevention of installation of malicious mobile applications
CN106156619B (zh) 应用安全防护方法及装置
JP5326062B1 (ja) 非実行ファイル検査装置及び方法
US11882134B2 (en) Stateful rule generation for behavior based threat detection
US20100306850A1 (en) Behavioral engine for identifying patterns of confidential data use
US20190147163A1 (en) Inferential exploit attempt detection
EP3270319B1 (en) Method and apparatus for generating dynamic security module
EP3772004A1 (en) Malicious incident visualization
CN110855697A (zh) 电力行业网络安全的主动防御方法
US11611583B2 (en) System and method for detection of malicious interactions in a computer network
CN111651754A (zh) 入侵的检测方法和装置、存储介质、电子装置
CN107770125A (zh) 一种网络安全应急响应方法及应急响应平台
CN103218561A (zh) 一种保护浏览器的防篡改方法和装置
Choi et al. Ontology based APT attack behavior analysis in cloud computing
CN102222292B (zh) 一种手机支付保护方法
Arfeen et al. Endpoint detection & response: A malware identification solution
CN106127031A (zh) 一种保护进程的方法、装置及电子设备
CN106682493B (zh) 一种防止进程被恶意结束的方法、装置及电子设备
CN104992116B (zh) 基于intent sniffer的监测方法及系统
CN116032629A (zh) 一种告警流量的分类治理方法、系统电子设备及存储介质
CN106778132B (zh) 文件处理的控制方法、装置及移动终端
CN105550580B (zh) 一种窗口搜索方法和装置
CN106127034B (zh) 一种防止系统被恶意关闭的方法、装置及电子设备
Arul Hypervisor injection attack using X-cross API calls (HI-API attack)

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20181206

Address after: Room 105-53811, No. 6 Baohua Road, Hengqin New District, Zhuhai City, Guangdong Province

Applicant after: Zhuhai Leopard Technology Co.,Ltd.

Address before: 519070, six level 601F, 10 main building, science and technology road, Tangjia Bay Town, Zhuhai, Guangdong.

Applicant before: Zhuhai Juntian Electronic Technology Co.,Ltd.

Applicant before: BEIJING KINGSOFT INTERNET SECURITY SOFTWARE Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant