CN105138366A - 一种识别软件的静默安装的方法与装置 - Google Patents
一种识别软件的静默安装的方法与装置 Download PDFInfo
- Publication number
- CN105138366A CN105138366A CN201510524452.4A CN201510524452A CN105138366A CN 105138366 A CN105138366 A CN 105138366A CN 201510524452 A CN201510524452 A CN 201510524452A CN 105138366 A CN105138366 A CN 105138366A
- Authority
- CN
- China
- Prior art keywords
- software
- information
- installation kit
- silence
- mourning
- 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.)
- Pending
Links
Landscapes
- Stored Programmes (AREA)
Abstract
本发明的目的是提供一种识别软件的静默安装的方法与装置。其中,本发明获得所识别的安装包进程运行期间的一个或多个进程行为信息,并且如果所获得的进程行为信息满足预定条件,则确定安装包进程执行静默安装。本发明可以识别静默安装的软件。本发明还可以向用户呈现该软件执行静默安装的提示信息,以使用户清楚地了解已经通过静默安装方式进行了安装的软件。进一步地,本发明还可以辅助用户卸载该软件以降低其对用户计算机产生危害的可能性。
Description
技术领域
本发明涉及信息技术领域,尤其涉及一种识别软件的静默安装的技术。
背景技术
当前,大部分软件在安装过程中会向用户做出提示,例如通过图形用户界面向用户展示软件安装的过程。用户也可以通过选择图形用户界面中的退出按钮来终止软件的安装程序。
然而,一些软件(例如捆绑软件)在安装过程中并未向用户做出任何提示。这种软件的安装方式可以被称为“静默安装”。用户通常无法了解这些静默安装的软件是何时、通过什么方式安装在计算机中的。并且,用户容易对这种静默安装的软件产生反感情绪。甚至,一些静默安装的软件可能会对用户的计算机造成危害。
发明内容
本发明的目的是提供一种识别软件的静默安装的方法与装置。
根据本发明的一个方面,提供了一种识别软件的静默安装的方法,其中,该方法包括:
-识别安装包进程;
-获得所述安装包进程运行期间的一个或多个进程行为信息;
-如果所述进程行为信息满足预定条件,确定所述安装包进程执行静默安装;
其中,所述预定条件包括:
-所述进程行为信息包含软件安装行为信息;
-所述进程行为信息不包含用户界面调用行为信息。
根据本发明的另一个方面,还提供了一种识别软件的静默安装的装置,其中,该装置包括:
-用于识别安装包进程的装置;
-用于获得所述安装包进程运行期间的一个或多个进程行为信息的装置;
-用于如果所述进程行为信息满足预定条件,确定所述安装包进程执行静默安装的装置;
其中,所述预定条件包括:
-所述进程行为信息包含软件安装行为信息;
-所述进程行为信息不包含用户界面调用行为信息。
与现有技术相比,本发明获得所识别的安装包进程运行期间的一个或多个进程行为信息,并且如果所获得的进程行为信息满足预定条件,则确定安装包进程执行静默安装。本发明可以识别静默安装的软件。本发明还可以向用户呈现该软件执行静默安装的提示信息,以使用户清楚地了解已经通过静默安装方式进行了安装的软件。进一步地,本发明还可以辅助用户卸载该软件以降低其对用户计算机产生危害的可能性。
现有技术通常根据已记录的问题软件的软件名称来判断一软件是否存在问题,例如根据已记录的捆绑软件的软件名称来判断一软件是否属于捆绑软件。现有技术的问题在于,对于新出现的问题软件,由于尚未记录其软件名称,现有技术无法在第一时间对其进行成功地识别。因此,现有的识别问题软件的技术具有一定的滞后性,其无法在短时间内识别出新出现的问题软件。而本发明则是根据安装包进程的进程行为信息来识别执行静默安装的软件。只要安装包进程的进程行为信息满足预定条件,则该安装包进程可以被确定执行静默安装。因此,无论静默安装的软件的软件名称是否有被记录,本发明均可成功地对其安装包进程进行识别。
静默安装的安装包进程通常即可以被直接认定为属于可疑进程。甚至,由于大部分捆绑软件的安装包进程执行静默安装,因此,执行静默安装的进程所对应的软件通常即可以被直接认定为属于捆绑软件。此外,本发明还可以对执行静默安装的安装包进程进行其他识别处理(例如根据黑/白名单来进行识别),以更准确地确定该安装包进程是否存在问题,例如更准确地确定该安装包进程所对应的软件是否属于捆绑软件。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1示出根据本发明一个实施例的一种识别软件的静默安装的方法流程图;
图2示出根据本发明一个实施例的一种识别软件的静默安装的装置示意图。
附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
在上下文中所称“计算机设备”,也称为“电脑”,是指可以通过运行预定程序或指令来执行数值计算和/或逻辑计算等预定处理过程的智能电子设备,其可以包括处理器与存储器,由处理器执行在存储器中预存的程序指令来执行预定处理过程,或是由ASIC、FPGA、DSP等硬件执行预定处理过程,或是由上述二者组合来实现。计算机设备包括但不限于服务器、个人电脑、笔记本电脑、平板电脑、智能手机等。
所述计算机设备例如包括用户设备与网络设备。其中,所述用户设备包括但不限于PC、笔记本电脑等;所述网络设备包括但不限于单个网络服务器、多个网络服务器组成的服务器组或基于云计算(CloudComputing)的由大量计算机或网络服务器构成的云,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。其中,所述计算机设备可单独运行来实现本发明,也可接入网络并通过与网络中的其他计算机设备的交互操作来实现本发明。其中,所述计算机设备所处的网络包括但不限于互联网、广域网、城域网、局域网、VPN网络等。
需要说明的是,所述用户设备、网络设备和网络等仅为举例,其他现有的或今后可能出现的计算机设备或网络如可适用于本发明,也应包含在本发明保护范围以内,并以引用方式包含于此。
本文后面所讨论的方法(其中一些通过流程图示出)可以通过硬件、软件、固件、中间件、微代码、硬件描述语言或者其任意组合来实施。当用软件、固件、中间件或微代码来实施时,用以实施必要任务的程序代码或代码段可以被存储在机器或计算机可读介质(比如存储介质)中。(一个或多个)处理器可以实施必要的任务。
这里所公开的具体结构和功能细节仅仅是代表性的,并且是用于描述本发明的示例性实施例的目的。但是本发明可以通过许多替换形式来具体实现,并且不应当被解释成仅仅受限于这里所阐述的实施例。
应当理解的是,虽然在这里可能使用了术语“第一”、“第二”等等来描述各个单元,但是这些单元不应当受这些术语限制。使用这些术语仅仅是为了将一个单元与另一个单元进行区分。举例来说,在不背离示例性实施例的范围的情况下,第一单元可以被称为第二单元,并且类似地第二单元可以被称为第一单元。这里所使用的术语“和/或”包括其中一个或更多所列出的相关联项目的任意和所有组合。
这里所使用的术语仅仅是为了描述具体实施例而不意图限制示例性实施例。除非上下文明确地另有所指,否则这里所使用的单数形式“一个”、“一项”还意图包括复数。还应当理解的是,这里所使用的术语“包括”和/或“包含”规定所陈述的特征、整数、步骤、操作、单元和/或组件的存在,而不排除存在或添加一个或更多其他特征、整数、步骤、操作、单元、组件和/或其组合。
还应当提到的是,在一些替换实现方式中,所提到的功能/动作可以按照不同于附图中标示的顺序发生。举例来说,取决于所涉及的功能/动作,相继示出的两幅图实际上可以基本上同时执行或者有时可以按照相反的顺序来执行。
下面结合附图对本发明作进一步详细描述。
本发明可由用户设备实现。具体地,用户设备识别安装包进程;随后,用户设备获得该安装包进程运行期间的一个或多个进程行为信息;接着,如果所获得的进程行为信息满足预定条件,用户设备确定该安装包进程执行静默安装,其中,所述预定条件包括:进程行为信息包含软件安装行为信息,以及进程行为信息不包含用户界面调用行为信息。
优选地,本发明的方案可以由安装并运行于用户设备中的应用程序来实现。进一步地,本发明的方案可以作为一个功能模块集成在应用程序中。
本领域技术人员应能理解,本发明方案至少可以在以下2种时间点进行:
1)本发明方案可以在进程的运行期间开始进行。
在此,在进程的运行期间,用户设备例如可以实时监控该进程的进程创建行为信息,以识别该进程是否属于安装包进程。随后,用户设备可以获得所识别的安装包进程运行期间的一个或多个进程行为信息。接着,如果所获得的进程行为信息满足预定条件,用户设备可以确定相应安装包进程执行静默安装。
其中,进程行为信息包括但不限于各种用于表示进程的行为的信息。
2)本发明方案可以在进程结束后的任意时间开始进行。
在此,在进程的运行期间,用户设备例如可以将该进程的全部或部分行为记录为该进程的一个或多个进程行为信息。随后,在进程结束后的任意时间,用户设备可以通过读取的方式获得之前所记录的安装包进程运行期间的一个或多个进程行为信息。随后,如果所获得的进程行为信息满足预定条件,用户设备可以确定相应安装包进程执行静默安装。
图1示出根据本发明一个实施例的方法流程图,其具体示出一种识别软件的静默安装的过程。如图1所示,在步骤S1中,用户设备识别安装包进程;在步骤S2中,用户设备获得该安装包进程运行期间的一个或多个进程行为信息;在步骤S3中,如果所获得的进程行为信息满足预定条件,用户设备确定该安装包进程执行静默安装,其中,所述预定条件包括:进程行为信息包含软件安装行为信息,以及进程行为信息不包含用户界面调用行为信息。
具体地,在步骤S1中,用户设备识别安装包进程。
在此,用户设备确定一个或多个进程是否属于安装包进程。所述安装包进程意指其所对应的软件为安装包软件的进程。
用户设备至少可以通过以下2种方式识别安装包进程:
1)用户设备可以通过检测进程所对应的软件是否包含可移植的执行体(PortableExecutable,PE)文件的头部信息来确定该进程是否属于安装包进程。
在此,如果进程所对应的软件包含PE文件的头部信息,则该进程属于安装包进程。如果进程所对应的软件不包含PE文件的头部信息,则该进程不属于安装包进程。
2)用户设备可以通过查询进程所对应的软件的文件后缀名是否为exe、com等PE文件的后缀名来确定该进程是否属于安装包进程。
在此,如果进程所对应的软件的文件后缀名为任一个PE文件的后缀名,则该进程属于安装包进程。如果进程所对应的软件的文件后缀名非任一个PE文件的后缀名,则该进程不属于安装包进程。
对于不属于安装包进程的进程,用户设备则不对该进程进行后续处理步骤。
本领域技术人员应能理解,步骤S1至少可以在以下2种时间点进行:
1)步骤S1可以在进程的运行期间进行。
优选地,用户设备可以监控进程创建行为信息,以识别安装包进程。
在此,进程创建行为信息包括但不限于各种用于表示进程被创建的行为的信息。进程创建行为信息属于一种进程行为信息。进程创建行为信息例如进程创建结束和注册表修改的操作消息。
在此,用户设备例如可以包括在驱动层进行驱动监控的驱动监控单元以及在应用层识别安装包进程的进程识别单元。驱动监控单元可以监控并记录进程的行为,并且将所记录的进程创建行为信息上抛给进程识别单元。在获得进程创建行为信息之后,进程识别单元可以根据进程创建行为信息,获得该进程所对应的软件。例如,进程创建行为信息中包含该进程所对应的软件的存储路径。接着,进程识别单元可以按照前述任一种识别安装包进程的方式对该进程所对应的软件进行识别,以确定该进程是否属于安装包进程。
2)步骤S1可以在进程结束后的任意时间进行。
在此,在进程的运行期间,用户设备例如可以监控该进程的全部或部分行为并记录该进程的进程行为信息。随后,在进程结束后的任意时间,用户设备可以根据所记录的进程的进程行为信息,获得该进程所对应的软件。例如,进程行为信息中包含该进程所对应的软件的存储路径。接着,用户设备可以按照前述任一种识别安装包进程的方式对进程所对应的软件进行识别,以确定该进程是否属于安装包进程。
在步骤S2中,用户设备获得该安装包进程运行期间的一个或多个进程行为信息。
在此,如果步骤S1在进程的运行期间进行,用户设备可以监控进程的各种行为以获得该进程的进程行为信息。
可替代地,如果步骤S1在进程结束后进行,用户设备可以在步骤S2中通过读取的方式获得此前所记录的进程行为信息。例如,用户设备可以将进程运行期间的进程行为信息保存在本地磁盘的一个文件中。在步骤S2中,用户设备可以通过读取该文件来获得进程的进程行为信息。
在步骤S3中,如果所获得的进程行为信息满足预定条件,用户设备确定该安装包进程执行静默安装。
其中,所述预定条件包括以下2项:
1)所述预定条件包括进程行为信息包含软件安装行为信息。
其中,软件安装行为信息包括但不限于各种表示与软件的安装相关的行为的信息。
用户设备可以根据预先确定的一个或多个软件安装行为信息,分析安装包进程的进程行为信息,以确定进程行为信息中是否包含软件安装行为信息。如果安装包进程的进程行为信息包含软件安装行为信息,则用户设备可以确定该安装包进程执行了安装行为。
优选地,所述软件安装行为信息包括注册表修改行为信息。
其中,所述注册表修改行为信息包括但不限于各种表示对注册表进行修改的行为的信息。
所述注册表修改行为信息包括但不限于以下任一项:
i)启动项修改行为信息。
在此,启动项修改行为信息包括但不限于各种表示对注册表中启动项进行修改的行为信息。
ii)卸载项修改行为信息。
在此,启动项修改行为信息包括但不限于各种表示对注册表中卸载项进行修改的行为信息。
iii)服务项修改行为信息。
在此,启动项修改行为信息包括但不限于各种表示对注册表中服务项进行修改的行为信息。
iv)计划任务修改行为信息。
在此,启动项修改行为信息包括但不限于各种表示对注册表中计划任务项进行修改的行为信息。
2)所述预定条件包括进程行为信息不包含用户界面调用行为信息。
在此,用户界面调用行为信息包括但不限于各种表示对用户界面的调用的行为的信息。所述用户界面例如图形用户界面、命令行界面等。
在此,进程通常通过调用用户界面来与用户进行交互,以向用户提示与该进程有关的各种信息。例如,安装包进程通常通过调用用户界面来向用户展示安装过程。
用户设备可以根据预先确定的用户界面调用行为信息,分析安装包进程的进程行为信息,以确定进程行为信息中是否包含用户界面调用行为信息。如果进程的进程行为信息不包含用户界面调用行为信息,则用户设备可以确定该安装包进程为静默进程。也即,用户无法了解该安装包进程的执行过程。
综上所述,安装包进程的进程行为信息包含软件安装行为信息——表示该安装包进程执行了安装行为。而安装包进程的进程行为信息不包含用户界面调用行为信息——表示该安装包进程为静默进程。当进程行为信息满足这两个预定条件时,用户设备可以确定该安装包进程执行静默安装。也即,用户设备可以确定该安装包进程所对应的软件为静默安装的软件。
在此,安装包进程通常需要通过调用用户界面来与用户进行交互,例如向用户展示安装的过程。因此,由于未通过调用用户界面来与用户进行交互,执行静默安装的安装包进程通常即可以被直接认定为属于可疑进程。甚至,由于大部分捆绑软件的安装包进程执行静默安装,因此,执行静默安装的安装包进程所对应的软件通常即可以被直接认定为属于捆绑软件。
此外,用户设备还可以对执行静默安装的安装包进程进行其他识别处理(例如根据黑/白名单来进行识别),以更准确地确定该安装包进程是否存在问题,例如更准确地确定该安装包进程所对应的软件是否属于捆绑软件。
优选地,用户设备还可以识别安装包进程所对应的软件。随后,用户设备还可以向用户呈现该软件执行静默安装的提示信息。
其中,用户设备可以从进程行为信息中提取出进程的进程标识信息。所述进程标识信息例如进程的名称、进程的安装路径等。随后,用户设备可以根据所述进程标识信息,查询进程标识信息与软件名称的对应关系,以确定安装包进程所对应的软件名称。其中,进程标识信息与软件名称的对应关系可以保存在用户设备本地,也可以保存在网络服务器中。
在此,用户设备例如可以向用户呈现“风险提示——XX软件刚刚安装在了您的电脑中”的提示信息,以使用户知晓该“XX软件”已被安装的事实。
更优选地,用户设备对软件的识别的步骤在安装包进程结束后进行。
用户设备可以在安装包进程结束后识别安装包进程所对应的软件,并向用户呈现该软件执行静默安装的提示信息。在此,用户设备并不干扰或拦截安装包进程,而是在其结束后对软件进行识别并向用户呈现提示信息。这种对安装包进程的处理方式避免了现有技术中对安装包进程进行拦截所可能导致的***出错甚至崩溃的问题。
根据一个优选示例,用户设备还可以根据黑/白名单识别软件为捆绑软件。
在此,所述黑名单意指其中包含属于捆绑软件的一个或多个软件的软件名称的目录。所述黑名单例如可以包含一些经过确认的属于捆绑软件的软件的软件名称。
所述白名单意指其中包含不属于捆绑软件的一个或多个软件的软件名称的目录。所述白名单例如可以包含一些知名公司的知名软件的软件名称。尽管这些知名软件也通过静默安装的方式进行安装,然而这些知名软件并非捆绑软件。
用户设备可以根据所识别的软件的软件名称,查询前述黑名单,以确定该软件是否属于捆绑软件。如果所识别的软件的软件名称存在于该黑名单中,则该软件属于捆绑软件。如果所识别的软件的软件名称不存在于该黑名单中,则该软件可以被认定为不属于捆绑软件。
或者,用户设备可以根据所识别的软件的软件名称,查询前述白名单,以确定该软件是否属于捆绑软件。如果所识别的软件的软件名称存在于该白名单中,则该软件不属于捆绑软件。如果所识别的软件的软件名称不存在于该白名单中,则该软件可以被认定为属于捆绑软件。
在此,只要确定一安装包进程执行静默安装,并且用户设备根据黑/白名单将该安装包进程所对应的软件识别为捆绑软件,本发明即可认定该软件属于捆绑软件,而不论该软件是否与另一软件捆绑地进行安装。
进一步地,用户设备还可以通过其他方式确定执行静默安装的安装包进程所对应的软件是否与另一软件捆绑地进行安装。
例如,用户设备可以确定执行静默安装的安装包进程运行前的一段时间内,是否有其他安装包进程的运行。为清楚说明,在此,将执行静默安装的安装包进程称为安装包进程B,将在该安装包进程B运行前的一段时间内运行的其他安装包进程称为安装包进程A。
用户设备例如可以从此前记录的安装包进程A的进程行为信息中提取出安装包进程A的进程标识信息。随后,用户设备可以根据安装包进程A的进程标识信息以及安装包进程B的进程标识信息,查询捆绑关系表,以确定安装包进程A与安装包进程B是否具有捆绑关系。其中,所述捆绑关系表中保存有多个彼此之间具有捆绑关系的安装包进程的进程标识信息。例如,所述捆绑关系表中记录有安装包进程A和安装包进程B具有捆绑关系,则用户设备可以确定执行静默安装的安装包进程B与另一安装包进程A捆绑地进行了安装。
根据另一个优选示例,用户设备还可以根据用户对提示信息的反馈,卸载该软件。
在此,用户设备所呈现的提示信息例如可以包括“卸载可疑软件”的交互按钮。当用户选择该交互按钮时,用户设备例如可以运行该软件的卸载程序以卸载该软件。
图2示出根据本发明一个实施例的装置示意图,其具体示出一种识别软件的静默安装的装置,也即识别装置10。如图2所示,识别装置10被装置于用户设备中,并具体包括装置11-13。
装置11识别安装包进程(为便于区分,以下将装置11称为安装包进程识别装置11);装置12获得该安装包进程运行期间的一个或多个进程行为信息(为便于区分,以下将装置12称为行为信息获得装置12);如果所获得的进程行为信息满足预定条件,装置13确定该安装包进程执行静默安装,其中,所述预定条件包括:进程行为信息包含软件安装行为信息,以及进程行为信息不包含用户界面调用行为信息(为便于区分,以下将装置13称为静默安装确定装置13)。
具体地,安装包进程识别装置11识别安装包进程。
在此,安装包进程识别装置11确定一个或多个进程是否属于安装包进程。所述安装包进程意指其所对应的软件为安装包软件的进程。
安装包进程识别装置11至少可以通过以下2种方式识别安装包进程:
1)安装包进程识别装置11可以通过检测进程所对应的软件是否包含可移植的执行体(PortableExecutable,PE)文件的头部信息来确定该进程是否属于安装包进程。
在此,如果进程所对应的软件包含PE文件的头部信息,则该进程属于安装包进程。如果进程所对应的软件不包含PE文件的头部信息,则该进程不属于安装包进程。
2)安装包进程识别装置11可以通过查询进程所对应的软件的文件后缀名是否为exe、com等PE文件的后缀名来确定该进程是否属于安装包进程。
在此,如果进程所对应的软件的文件后缀名为任一个PE文件的后缀名,则该进程属于安装包进程。如果进程所对应的软件的文件后缀名非任一个PE文件的后缀名,则该进程不属于安装包进程。
对于不属于安装包进程的进程,识别装置10则不对该进程执行后续操作。
本领域技术人员应能理解,安装包进程识别装置11至少可以在以下2种时间点执行操作:
1)安装包进程识别装置11可以在进程的运行期间执行操作。
优选地,安装包进程识别装置11可以监控进程创建行为信息,以识别安装包进程。
在此,进程创建行为信息包括但不限于各种用于表示进程被创建的行为的信息。进程创建行为信息属于一种进程行为信息。进程创建行为信息例如进程创建结束和注册表修改的操作消息。
在此,安装包进程识别装置11例如可以包括在驱动层进行驱动监控的驱动监控单元以及在应用层识别安装包进程的进程识别单元。驱动监控单元可以监控并记录进程的行为,并且将所记录的进程创建行为信息上抛给进程识别单元。在获得进程创建行为信息之后,进程识别单元可以根据进程创建行为信息,获得该进程所对应的软件。例如,进程创建行为信息中包含该进程所对应的软件的存储路径。接着,进程识别单元可以按照前述任一种识别安装包进程的方式对该进程所对应的软件进行识别,以确定该进程是否属于安装包进程。
2)安装包进程识别装置11可以在进程结束后的任意时间执行操作。
在此,在进程的运行期间,识别装置10或识别装置10中的其他特定装置例如可以监控该进程的全部或部分行为并记录该进程的进程行为信息。随后,在进程结束后的任意时间,安装包进程识别装置11可以根据所记录的进程的进程行为信息,获得该进程所对应的软件。例如,进程行为信息中包含该进程所对应的软件的存储路径。接着,安装包进程识别装置11可以按照前述任一种识别安装包进程的方式对进程所对应的软件进行识别,以确定该进程是否属于安装包进程。
随后,行为信息获得装置12获得该安装包进程运行期间的一个或多个进程行为信息。
在此,如果安装包进程识别装置11在进程的运行期间执行操作,行为信息获得装置12可以监控进程的各种行为以获得该进程的进程行为信息。
可替代地,如果安装包进程识别装置11在进程结束后执行操作,行为信息获得装置12可以通过读取的方式获得此前识别装置10或识别装置10中的其他特定装置所记录的进程行为信息。例如,识别装置10或识别装置10中的其他特定装置可以将进程运行期间的进程行为信息保存在本地磁盘的一个文件中。随后,行为信息获得装置12可以通过读取该文件来获得进程的进程行为信息。
随后,如果所获得的进程行为信息满足预定条件,静默安装确定装置13确定该安装包进程执行静默安装。
其中,所述预定条件包括以下2项:
1)所述预定条件包括进程行为信息包含软件安装行为信息。
其中,软件安装行为信息包括但不限于各种表示与软件的安装相关的行为的信息。
静默安装确定装置13可以根据预先确定的一个或多个软件安装行为信息,分析安装包进程的进程行为信息,以确定进程行为信息中是否包含软件安装行为信息。如果安装包进程的进程行为信息包含软件安装行为信息,则静默安装确定装置13可以确定该安装包进程执行了安装行为。
优选地,所述软件安装行为信息包括注册表修改行为信息。
其中,所述注册表修改行为信息包括但不限于各种表示对注册表进行修改的行为的信息。
所述注册表修改行为信息包括但不限于以下任一项:
i)启动项修改行为信息。
在此,启动项修改行为信息包括但不限于各种表示对注册表中启动项进行修改的行为信息。
ii)卸载项修改行为信息。
在此,启动项修改行为信息包括但不限于各种表示对注册表中卸载项进行修改的行为信息。
iii)服务项修改行为信息。
在此,启动项修改行为信息包括但不限于各种表示对注册表中服务项进行修改的行为信息。
iv)计划任务修改行为信息。
在此,启动项修改行为信息包括但不限于各种表示对注册表中计划任务项进行修改的行为信息。
2)所述预定条件包括进程行为信息不包含用户界面调用行为信息。
在此,用户界面调用行为信息包括但不限于各种表示对用户界面的调用的行为的信息。所述用户界面例如图形用户界面、命令行界面等。
在此,进程通常通过调用用户界面来与用户进行交互,以向用户提示与该进程有关的各种信息。例如,安装包进程通常通过调用用户界面来向用户展示安装过程。
静默安装确定装置13可以根据预先确定的用户界面调用行为信息,分析安装包进程的进程行为信息,以确定进程行为信息中是否包含用户界面调用行为信息。如果进程的进程行为信息不包含用户界面调用行为信息,则静默安装确定装置13可以确定该安装包进程为静默进程。也即,用户无法了解该安装包进程的执行过程。
综上所述,安装包进程的进程行为信息包含软件安装行为信息——表示该安装包进程执行了安装行为。而安装包进程的进程行为信息不包含用户界面调用行为信息——表示该安装包进程为静默进程。当进程行为信息满足这两个预定条件时,静默安装确定装置13可以确定该安装包进程执行静默安装。也即,静默安装确定装置13可以确定该安装包进程所对应的软件为静默安装的软件。
在此,安装包进程通常需要通过调用用户界面来与用户进行交互,例如向用户展示安装的过程。因此,由于未通过调用用户界面来与用户进行交互,执行静默安装的安装包进程通常即可以被直接认定为属于可疑进程。甚至,由于大部分捆绑软件的安装包进程执行静默安装,因此,执行静默安装的安装包进程所对应的软件通常即可以被直接认定为属于捆绑软件。
此外,识别装置10还可以对执行静默安装的安装包进程执行其他识别操作(例如根据黑/白名单来进行识别),以更准确地确定该安装包进程是否存在问题,例如更准确地确定该安装包进程所对应的软件是否属于捆绑软件。
优选地,识别装置10还可以包括软件识别装置和提示信息呈现装置(图2中均未示出)。其中,软件识别装置可以识别安装包进程所对应的软件。随后,提示信息呈现装置可以向用户呈现该软件执行静默安装的提示信息。
其中,软件识别装置可以从进程行为信息中提取出进程的进程标识信息。所述进程标识信息例如进程的名称、进程的安装路径等。随后,软件识别装置可以根据所述进程标识信息,查询进程标识信息与软件名称的对应关系,以确定安装包进程所对应的软件名称。其中,进程标识信息与软件名称的对应关系可以保存在用户设备本地,也可以保存在网络服务器中。
在此,提示信息呈现装置例如可以向用户呈现“风险提示——XX软件刚刚安装在了您的电脑中”的提示信息,以使用户知晓该“XX软件”已被安装的事实。
更优选地,软件识别装置对软件的识别的操作在安装包进程结束后执行。
软件识别装置可以在安装包进程结束后识别安装包进程所对应的软件。接着,提示信息呈现装置可以向用户呈现该软件执行静默安装的提示信息。在此,软件识别装置和提示信息呈现装置并不干扰或拦截安装包进程,而是在其结束后由软件识别装置对软件执行识别并由提示信息呈现装置向用户呈现提示信息。这种对安装包进程的处理方式避免了现有技术中对安装包进程进行拦截所可能导致的***出错甚至崩溃的问题。
根据一个优选示例,软件识别装置还可以根据黑/白名单识别软件为捆绑软件。
在此,所述黑名单意指其中包含属于捆绑软件的一个或多个软件的软件名称的目录。所述黑名单例如可以包含一些经过确认的属于捆绑软件的软件的软件名称。
所述白名单意指其中包含不属于捆绑软件的一个或多个软件的软件名称的目录。所述白名单例如可以包含一些知名公司的知名软件的软件名称。尽管这些知名软件也通过静默安装的方式进行安装,然而这些知名软件并非捆绑软件。
软件识别装置可以根据所识别的软件的软件名称,查询前述黑名单,以确定该软件是否属于捆绑软件。如果所识别的软件的软件名称存在于该黑名单中,则该软件属于捆绑软件。如果所识别的软件的软件名称不存在于该黑名单中,则该软件可以被认定为不属于捆绑软件。
或者,软件识别装置可以根据所识别的软件的软件名称,查询前述白名单,以确定该软件是否属于捆绑软件。如果所识别的软件的软件名称存在于该白名单中,则该软件不属于捆绑软件。如果所识别的软件的软件名称不存在于该白名单中,则该软件可以被认定为属于捆绑软件。
在此,只要确定一安装包进程执行静默安装,并且软件识别装置根据黑/白名单将该安装包进程所对应的软件识别为捆绑软件,本发明即可认定该软件属于捆绑软件,而不论该软件是否与另一软件捆绑地进行安装。
进一步地,识别装置10或识别装置10中的其他特定装置还可以通过其他方式确定执行静默安装的安装包进程所对应的软件是否与另一软件捆绑地进行安装。
例如,识别装置10或识别装置10中的其他特定装置可以确定执行静默安装的安装包进程运行前的一段时间内,是否有其他安装包进程的运行。为清楚说明,在此,将执行静默安装的安装包进程称为安装包进程B,将在该安装包进程B运行前的一段时间内运行的其他安装包进程称为安装包进程A。
识别装置10或识别装置10中的其他特定装置例如可以从此前记录的安装包进程A的进程行为信息中提取出安装包进程A的进程标识信息。随后,识别装置10或识别装置10中的其他特定装置可以根据安装包进程A的进程标识信息以及安装包进程B的进程标识信息,查询捆绑关系表,以确定安装包进程A与安装包进程B是否具有捆绑关系。其中,所述捆绑关系表中保存有多个彼此之间具有捆绑关系的安装包进程的进程标识信息。例如,所述捆绑关系表中记录有安装包进程A和安装包进程B具有捆绑关系,则识别装置10或识别装置10中的其他特定装置可以确定执行静默安装的安装包进程B与另一安装包进程A捆绑地进行了安装。
根据另一个优选示例,识别装置10还可以包括软件卸载装置(图2中未示出)。软件卸载装置可以根据用户对提示信息的反馈,卸载该软件。
在此,识别装置10中的提示信息呈现装置所呈现的提示信息例如可以包括“卸载可疑软件”的交互按钮。当用户选择该交互按钮时,软件卸载装置例如可以运行该软件的卸载程序以卸载该软件。
需要注意的是,本发明可在软件和/或软件与硬件的组合体中被实施,例如,本发明的各个装置可采用专用集成电路(ASIC)或任何其他类似硬件设备来实现。在一个实施例中,本发明的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本发明的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本发明的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。***权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
Claims (16)
1.一种识别软件的静默安装的方法,其中,该方法包括:
-识别安装包进程;
-获得所述安装包进程运行期间的一个或多个进程行为信息;
-如果所述进程行为信息满足预定条件,确定所述安装包进程执行静默安装;
其中,所述预定条件包括:
-所述进程行为信息包含软件安装行为信息;
-所述进程行为信息不包含用户界面调用行为信息。
2.根据权利要求1所述的方法,其中,所述识别安装包进程的步骤具体包括:
-监控进程创建行为信息,以识别安装包进程。
3.根据权利要求1或2所述的方法,其中,所述软件安装行为信息包括注册表修改行为信息。
4.根据权利要求3所述的方法,其中,所述注册表修改行为信息包括以下任一项:
-启动项修改行为信息;
-卸载项修改行为信息;
-服务项修改行为信息;
-计划任务修改行为信息。
5.根据权利要求1至4中任一项所述的方法,其中,该方法还包括:
-识别所述安装包进程所对应的软件;
-向用户呈现所述软件执行静默安装的提示信息。
6.根据权利要求5所述的方法,其中,所述对所述软件的识别的步骤在所述安装包进程结束后进行。
7.根据权利要求5或6所述的方法,其中,所述对所述软件的识别的步骤还包括:
-根据黑/白名单识别所述软件为捆绑软件。
8.根据权利要求5所述的方法,其中,该方法还包括:
-根据所述用户对所述提示信息的反馈,卸载所述软件。
9.一种识别软件的静默安装的装置,其中,该装置包括:
-用于识别安装包进程的装置;
-用于获得所述安装包进程运行期间的一个或多个进程行为信息的装置;
-用于如果所述进程行为信息满足预定条件,确定所述安装包进程执行静默安装的装置;
其中,所述预定条件包括:
-所述进程行为信息包含软件安装行为信息;
-所述进程行为信息不包含用户界面调用行为信息。
10.根据权利要求9所述的装置,其中,所述识别安装包进程的装置具体用于:
-监控进程创建行为信息,以识别安装包进程。
11.根据权利要求9或10所述的装置,其中,所述软件安装行为信息包括注册表修改行为信息。
12.根据权利要求11所述的装置,其中,所述注册表修改行为信息包括以下任一项:
-启动项修改行为信息;
-卸载项修改行为信息;
-服务项修改行为信息;
-计划任务修改行为信息。
13.根据权利要求9至12中任一项所述的装置,其中,该装置还包括:
-用于识别所述安装包进程所对应的软件的装置;
-用于向用户呈现所述软件执行静默安装的提示信息的装置。
14.根据权利要求13所述的装置,其中,所述对所述软件的识别的操作在所述安装包进程结束后执行。
15.根据权利要求13或14所述的装置,其中,所述对所述软件的识别的装置还用于:
-根据黑/白名单识别所述软件为捆绑软件。
16.根据权利要求13所述的装置,其中,该装置还包括:
-用于根据所述用户对所述提示信息的反馈,卸载所述软件的装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510524452.4A CN105138366A (zh) | 2015-08-24 | 2015-08-24 | 一种识别软件的静默安装的方法与装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510524452.4A CN105138366A (zh) | 2015-08-24 | 2015-08-24 | 一种识别软件的静默安装的方法与装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105138366A true CN105138366A (zh) | 2015-12-09 |
Family
ID=54723723
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510524452.4A Pending CN105138366A (zh) | 2015-08-24 | 2015-08-24 | 一种识别软件的静默安装的方法与装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105138366A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106201634A (zh) * | 2016-07-28 | 2016-12-07 | 北京小米移动软件有限公司 | 软件安装方法及装置 |
WO2017206309A1 (zh) * | 2016-05-31 | 2017-12-07 | 宇龙计算机通信科技(深圳)有限公司 | 静默安装应用程序处理方法及移动终端 |
WO2017206253A1 (zh) * | 2016-05-31 | 2017-12-07 | 宇龙计算机通信科技(深圳)有限公司 | 一种应用程序管理方法及移动终端 |
CN108055582A (zh) * | 2017-12-14 | 2018-05-18 | 深圳市雷鸟信息科技有限公司 | 应用安装方法及智能电视 |
CN111639332A (zh) * | 2020-05-11 | 2020-09-08 | 珠海豹趣科技有限公司 | 软件安装方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050268112A1 (en) * | 2004-05-28 | 2005-12-01 | Microsoft Corporation | Managing spyware and unwanted software through auto-start extensibility points |
CN102779255A (zh) * | 2012-07-16 | 2012-11-14 | 腾讯科技(深圳)有限公司 | 判断恶意程序的方法及装置 |
CN103235913A (zh) * | 2013-04-03 | 2013-08-07 | 北京奇虎科技有限公司 | 一种用于识别、拦截捆绑软件的***、设备及方法 |
CN104376263A (zh) * | 2014-12-09 | 2015-02-25 | 北京奇虎科技有限公司 | 应用程序行为拦截的方法和装置 |
-
2015
- 2015-08-24 CN CN201510524452.4A patent/CN105138366A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050268112A1 (en) * | 2004-05-28 | 2005-12-01 | Microsoft Corporation | Managing spyware and unwanted software through auto-start extensibility points |
CN102779255A (zh) * | 2012-07-16 | 2012-11-14 | 腾讯科技(深圳)有限公司 | 判断恶意程序的方法及装置 |
CN103235913A (zh) * | 2013-04-03 | 2013-08-07 | 北京奇虎科技有限公司 | 一种用于识别、拦截捆绑软件的***、设备及方法 |
CN104376263A (zh) * | 2014-12-09 | 2015-02-25 | 北京奇虎科技有限公司 | 应用程序行为拦截的方法和装置 |
Non-Patent Citations (1)
Title |
---|
梁海华: "《InstallShield 6.x安装程序设计与制作》", 31 January 2002 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017206309A1 (zh) * | 2016-05-31 | 2017-12-07 | 宇龙计算机通信科技(深圳)有限公司 | 静默安装应用程序处理方法及移动终端 |
WO2017206253A1 (zh) * | 2016-05-31 | 2017-12-07 | 宇龙计算机通信科技(深圳)有限公司 | 一种应用程序管理方法及移动终端 |
CN107450938A (zh) * | 2016-05-31 | 2017-12-08 | 宇龙计算机通信科技(深圳)有限公司 | 一种应用程序管理方法及移动终端 |
CN106201634A (zh) * | 2016-07-28 | 2016-12-07 | 北京小米移动软件有限公司 | 软件安装方法及装置 |
CN108055582A (zh) * | 2017-12-14 | 2018-05-18 | 深圳市雷鸟信息科技有限公司 | 应用安装方法及智能电视 |
CN111639332A (zh) * | 2020-05-11 | 2020-09-08 | 珠海豹趣科技有限公司 | 软件安装方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9117079B1 (en) | Multiple application versions in a single virtual machine | |
CN105138366A (zh) | 一种识别软件的静默安装的方法与装置 | |
CN104375856A (zh) | 应用更新方法和装置 | |
US9747449B2 (en) | Method and device for preventing application in an operating system from being uninstalled | |
CN102520975B (zh) | 外接设备驱动的智能升级方法、装置及*** | |
EP4055477A1 (en) | Just-in-time containers | |
CN113127050B (zh) | 一种应用资源打包过程监控方法、装置、设备和介质 | |
CN105095759A (zh) | 文件的检测方法及装置 | |
CN105354498A (zh) | 一种注册表的操作方法和相关装置及设备 | |
CN108540509A (zh) | 一种终端浏览器的处理方法、装置及服务器、智能终端 | |
CN108090352B (zh) | 检测***及检测方法 | |
CN112783568A (zh) | 应用程序的初始化方法、装置、设备和存储介质 | |
US9632897B2 (en) | Monitoring components in a service framework | |
CN113760306A (zh) | 安装软件的方法、装置、电子设备及存储介质 | |
CN103440453A (zh) | 浏览器运行环境检测方法、客户端、服务器及*** | |
CN115934404A (zh) | 应用程序的异常处理方法及设备 | |
CN114282212A (zh) | 流氓软件识别方法、装置、电子设备及存储介质 | |
CN102446253B (zh) | 一种网页木马检测方法及*** | |
CN113761306A (zh) | 一种车端数据处理方法及装置 | |
CN109388770B (zh) | Web页面生成方法及装置 | |
WO2009097241A1 (en) | A method and system for assessing deployment and un-deployment of software installations | |
CN111797016B (zh) | 应用程序的测试方法、设备、存储介质及装置 | |
CN109634636B (zh) | 应用处理方法、装置、设备和介质 | |
US8904002B2 (en) | Reducing overhead in component interactions | |
CN106354602A (zh) | 一种服务监控方法和设备 |
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: 20181225 Address after: 100000 Room 708, 7th Floor, Building 10, No. 30, Shixing Street, Shijingshan District, Beijing Applicant after: Beijing Xiaoxiong Bowang Technology Co., Ltd. Address before: 100085 Baidu Building, 10 Shangdi Tenth Street, Haidian District, Beijing Applicant before: BEIJING BAIDU NETCOM SCIENCE AND TECHNOLOGY Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20151209 |
|
RJ01 | Rejection of invention patent application after publication |