CN103095698A - 客户端软件的修复方法、装置和通信系统 - Google Patents

客户端软件的修复方法、装置和通信系统 Download PDF

Info

Publication number
CN103095698A
CN103095698A CN201310009128XA CN201310009128A CN103095698A CN 103095698 A CN103095698 A CN 103095698A CN 201310009128X A CN201310009128X A CN 201310009128XA CN 201310009128 A CN201310009128 A CN 201310009128A CN 103095698 A CN103095698 A CN 103095698A
Authority
CN
China
Prior art keywords
software
file
searching
client
mode
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.)
Granted
Application number
CN201310009128XA
Other languages
English (en)
Other versions
CN103095698B (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.)
Beijing Qihoo Technology Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing 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 Beijing Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201310009128.XA priority Critical patent/CN103095698B/zh
Publication of CN103095698A publication Critical patent/CN103095698A/zh
Application granted granted Critical
Publication of CN103095698B publication Critical patent/CN103095698B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种客户端软件的修复方法、装置和通信系统。本发明实施例提供的一种客户端软件的修复方法包括:查找客户端上可执行修复的软件;获取查找到的软件的描述信息;根据客户端利用描述信息和本地配置规则对软件的本地检查结果,和/或接收到的云端服务器利用获知的描述信息和云端配置规则对软件的云端检查结果,确认需要修复的软件;根据需要修复的软件的识别信息获取修复控制信息;根据修复控制信息对需要修复的软件进行修复。

Description

客户端软件的修复方法、装置和通信系统
技术领域
本发明涉及计算机软件技术领域,特别涉及一种客户端软件的修复方法、装置和通信系统。
背景技术
恶意程序的数量近几年呈几何级增长,恶意程序攻击网络安全的一种常见方式为篡改用户电脑中安装的软件,通常是此软件的主程序或其运行过程中需要加载的动态链接库(Dynamic Link Library,DLL),则在用户启动这些软件时就会激活恶意程序。如恶意程序把QQ音乐的主程序QQMusic.exe替换成木马,则在用户启动QQ音乐时就会激活木马。
传统的恶意程序的查杀方式为基于特征码查杀和定期更新特征码病毒库,将软件的特征码与病毒库中的特征码进行比对,查找出恶意程序。
然而,现有方案主要关注于恶意程序的查杀过程,且由于特征码病毒库往往滞后于恶意程序,传统的基于特征码的恶意程序查杀方式难以应对越来越严重的网络安全状况,且现有方案对如何处理被恶意程序破坏的软件没有提出有效的应对方案。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的客户端软件的修复方法、装置和通信系统。
依据本发明的一个方面,本发明实施例提供了一种客户端软件的修复方法,包括:
查找客户端上可执行修复的软件;
获取查找到的软件的描述信息;
根据客户端利用描述信息和本地配置规则对软件的本地检查结果,和/或接收到的云端服务器利用获知的描述信息和云端配置规则对软件的云端检查结果,确认需要修复的软件;
根据需要修复的软件的识别信息获取修复控制信息;
根据修复控制信息对需要修复的软件进行修复。
其中,上述根据需要修复的软件的识别信息获取修复控制信息包括:
将需要修复的软件的识别信息发送至云端服务器,接收云端服务器根据识别信息返回的修复控制信息;和/或,
将需要修复的软件的识别信息通知客户端的查杀引擎,由客户端的查杀引擎生成修复控制信息。
其中,在查找客户端上可执行修复的软件之前,上述方法还包括:
将客户端上收集到的多种软件的信息上报至云端服务器,以使云端服务器根据该信息确认可执行修复的软件;
根据来自云端服务器的返回信息获知可执行修复的软件。
其中,上述查找客户端上可执行修复的软件包括:
设置多种查找方式,并建立软件和至少一种查找方式的对应关系;
按照软件对应的查找方式在客户端上查找软件;
其中,该查找方式至少包括下述方式:
通过查找注册表中的特定键值来查找软件;或者,从开始菜单、桌面和快速启动栏目录中快捷方式指向的目标软件中查找软件;或者,从当前客户端系统正在运行的进程文件所在目录下查找软件;或者,在需要执行软件修复的客户端设备的全部磁盘上搜索软件。
其中,当软件对应于多种查找方式时,为该软件的不同查找方式设置不同的优先级,以及,
为第一查找方式设置的优先级高于为第二查找方式设置的优先级;
为第二查找方式设置的优先级高于为第三查找方式设置的优先级;
为第三查找方式设置的优先级高于为第四查找方式设置的优先级;
第一查找方式为通过查找注册表中的特定键值来查找软件,第二查找方式为从开始菜单、桌面和快速启动栏目录中快捷方式指向的目标软件中查找软件,第三查找方式为从当前客户端系统正在运行的进程文件所在目录下查找软件,第四查找方式为在客户端的全部磁盘上搜索软件。
其中,描述信息包括软件中的文件名称、文件版本信息、文件签名信息和/或文件安全等级,
本地配置规则或云端配置规则包括下述的一种或多种规则:
当软件没有包括必需的特定文件时,需要修复该软件,该特定文件为软件正常运行时的必需文件;
当软件中指定文件的版本信息中没有包含第一特定字符串时,需要修复该软件;
当软件中指定文件中没有签名信息时,需要修复该软件;
当软件中指定文件的签名信息中颁发者信息没有包含第二特定字符串时,需要修复该软件;
当软件中文件的文件安全等级为危险级别时,需要修复该软件中的文件。
其中,上述根据客户端利用描述信息和本地配置规则对软件的本地检查结果,和/或接收到的云端服务器利用获知的描述信息和云端配置规则对软件的云端检查结果,确认需要修复的软件包括:
当本地检查结果指示软件需要修复时,确认该软件为需要修复的软件,不再利用云端配置规则对该软件进行检查;或者,
当本地检查结果指示软件不需要修复时,将该软件的描述信息发送至云端服务器;接收云端服务器利用该描述信息和云端配置规则下发的云端检查结果,当云端检查结果指示该软件不需要修复时,确认该软件为不需要修复的软件,当云端检查结果指示该软件需要修复时,确认该软件为需要修复的软件;或者,
不利用本地配置规则对软件进行检查,当接收到的云端检查结果指示软件需要修复时,确认该软件为需要修复的软件。
其中,上述根据修复控制信息对需要修复的软件进行修复包括:
根据修复控制信息中指示目标文件下载点地址的信息,从下载点地址对应的云端服务器中下载目标文件;利用目标文件替换需要修复的软件或该软件中的相应软件,或将目标文件设置在需要修复的软件中;
和/或,
根据修复控制信息获知需要删除软件或软件中的文件时,将该软件或该软件中的相应文件删除;和/或,
根据修复控制信息获知软件中被计算机病毒感染的文件,利用客户端的查杀引擎将被感染文件中的恶意代码删除。
依据本发明的另一个方面,本发明实施例提供了一种客户端软件的修复装置,包括:
软件查找单元,适于查找客户端上可执行修复的软件;
描述信息获取单元,适于获取查找到的软件的描述信息;
软件确认单元,适于根据客户端利用描述信息和本地配置规则对软件的本地检查结果,和/或接收到的云端服务器利用获知的描述信息和云端配置规则对软件的云端检查结果,确认需要修复的软件;
控制信息获取单元,适于根据需要修复的软件的识别信息获取修复控制信息;
修复单元,适于根据修复控制信息对需要修复的软件进行修复。
其中,控制信息获取单元将需要修复的软件的识别信息发送至云端服务器,接收云端服务器根据识别信息返回的修复控制信息;和/或,
将需要修复的软件的识别信息通知客户端的查杀引擎,由客户端的查杀引擎生成修复控制信息。
其中,上述装置还包括软件获知单元,适于在查找客户端上可执行修复的软件之前,将客户端上收集到的多种软件的信息上报至云端服务器,以使云端服务器根据该信息确认可执行修复的软件;以及,根据来自云端服务器的返回信息获知可执行修复的软件。
其中,软件查找单元,具体适于设置多种查找方式,并建立软件和至少一种查找方式的对应关系,按照软件对应的查找方式在客户端上查找软件;
其中,该查找方式至少包括下述方式:
通过查找注册表中的特定键值来查找软件;或者,从开始菜单、桌面和快速启动栏目录中快捷方式指向的目标软件中查找软件;或者,从当前客户端系统正在运行的进程文件所在目录下查找软件;或者,在需要执行软件修复的客户端设备的全部磁盘上搜索软件。
其中,软件查找单元,还适于当软件对应于多种查找方式时,为该软件的不同查找方式设置不同的优先级,以及,为第一查找方式设置的优先级高于为第二查找方式设置的优先级;为第二查找方式设置的优先级高于为第三查找方式设置的优先级;为第三查找方式设置的优先级高于为第四查找方式设置的优先级;
第一查找方式为通过查找注册表中的特定键值来查找软件,第二查找方式为从开始菜单、桌面和快速启动栏目录中快捷方式指向的目标软件中查找软件,第三查找方式为从当前客户端系统正在运行的进程文件所在目录下查找软件,第四查找方式为在客户端的全部磁盘上搜索软件。
其中,软件确认单元中使用的描述信息包括软件中的文件名称、文件版本信息、文件签名信息和/或文件安全等级,
本地配置规则或云端配置规则包括下述的一种或多种:
当软件没有包括必需的特定文件时,需要修复该软件,该特定文件为软件正常运行时的必需文件;
当软件中指定文件的版本信息中没有包含第一特定字符串时,需要修复该软件;
当软件中指定文件中没有签名信息时,需要修复该软件;
当软件中指定文件的签名信息中颁发者信息没有包含第二特定字符串时,需要修复该软件;
当软件中文件的文件安全等级为危险级别时,需要修复该软件中的文件。
其中,软件确认单元,具体适于当本地检查结果指示软件需要修复时,确认该软件为需要修复的软件,不再利用云端配置规则对该软件进行检查;或者,
当本地检查结果指示软件不需要修复时,将该软件的描述信息发送至云端服务器;接收云端服务器利用该描述信息和云端配置规则下发的云端检查结果,当云端检查结果指示该软件不需要修复时,确认该软件为不需要修复的软件,当云端检查结果指示该软件需要修复时,确认该软件为需要修复的软件;或者,
不利用本地配置规则对软件进行检查,当接收到的云端检查结果指示软件需要修复时,确认该软件为需要修复的软件。
其中,修复单元,适于根据修复控制信息中指示目标文件下载点地址的信息,从下载点地址对应的云端服务器中下载目标文件;利用目标文件替换需要修复的软件或该软件中的相应软件,或将目标文件设置在需要修复的软件中;和/或,根据修复控制信息获知需要删除软件或软件中的文件时,将该软件或该软件中的相应文件删除;和/或,根据修复控制信息获知软件中被计算机病毒感染的文件,利用客户端的查杀引擎将被感染文件中的恶意代码删除。
依据本发明的又一个方面,本发明实施例还提供了一种通信系统,该系统包括客户端设备和云端服务器,客户端设备通过网络与云端服务器相连接,客户端设备上设置有如上述的客户端软件的修复装置,客户端设备利用该客户端软件的修复装置对客户端中的软件进行修复。
由上所述,本发明实施例通过利用查找到的可执行修复的软件的描述信息以及客户端的本地配置规则和/或云端服务器侧的云端配置规则确认客户端中需要修复的软件的技术手段,提供了一种新型的客户端本地查杀引擎与云端服务器结合的查杀方式,能够在充分利用客户端资源的同时,基于云安全平台提高对恶意程序查杀的准确率和及时性。并且,本发明实施例通过对客户端软件的识别、在识别出的软件中确认需要修复的软件以及根据获取到的修复控制信息对需要修复的软件进行修复的技术手段,提供了一套完整的修复被恶意程序破坏的软件的应对方案,有效地遏制了恶意程序通过篡改合法软件危害网络安全的现象,提高了网络通信的安全性。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的一种客户端软件的修复装置的结构示意图;
图2示出了根据本发明另一个实施例的一种通信系统的结构示意图;
图3示出了根据本发明一个实施例的一种客户端软件的修复方法流程示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本发明的一个实施例提供了一种客户端软件的修复装置100,参见图1,该装置100包括软件查找单元110、描述信息获取单元111、软件确认单元112、控制信息获取单元113、修复单元114和软件获知单元115。下面分别对这些单元进行说明。
软件查找单元110,适于查找客户端上可执行修复的软件。
软件查找单元110具体适于设置多种查找方式,并建立软件和至少一种查找方式的对应关系,按照软件对应的查找方式在客户端上查找软件;
其中,该查找方式包括下述的一种方式或其组合:
第一查找方式:通过查找注册表中的特定键值来查找软件;
第二查找方式:从开始菜单、桌面和快速启动栏目录中快捷方式指向的目标软件中查找软件;或
第三查找方式:从当前客户端系统正在运行的进程文件所在目录下查找软件;
第四查找方式:在需要执行软件修复的客户端设备的全部磁盘上搜索软件。需要执行软件修复的客户端设备可以为一个或多个,在每个客户端设备中进行全盘搜索以查找软件。
可以理解,根据软件在客户端中存储的位置,软件查找单元110可以增删或调整软件的查找方式。
例如,软件查找单元110维护一个配置文件,该配置文件中记录软件与该软件的查找方式的对应关系,如当该对应关系指示某一软件的查找方式为第一查找方式时,则软件查找单元110通过查找注册表中的特定键值来查找该软件。
当上述对应关系指示某一软件同时对应于多种查找方式时,软件查找单元110还适于为该软件的不同查找方式设置不同的优先级,则在查找过程中,软件查找单元110会按照各查找方式优先级的高低顺序依次执行软件的查找。
一个示例性的优先级设置方式包括:为第一查找方式设置的优先级高于为第二查找方式设置的优先级,为第二查找方式设置的优先级高于为第三查找方式设置的优先级,为第三查找方式设置的优先级高于为第四查找方式设置的优先级。则当某一软件同时对应于这四种查找方式时,软件查找单元110先按照第一查找方式查找该软件,当未找到该软件时按照第二查找方式查找该软件,再次按照第三查找方式查找该软件,最后才按照第四查找方式查找该软件,在上述逐次的查找过程中一旦软件查找单元查找出软件便会停止查找操作,不再执行后续的查找过程。
通过软件查找单元的查找操作能够识别出客户端中的所有可执行修复的软件。并且,在软件识别的过程中,软件查找单元还可以获取到软件的安装目录、软件版本、软件支持32位的操作系统还是支持64位的操作系统等信息。
进一步的,上述装置100还包括软件获知单元115,适于在查找客户端上可执行修复的软件之前,将客户端上收集到的多种软件的信息上报至云端服务器,以使云端服务器根据该信息确认可执行修复的软件;则软件查找单元110可以根据来自云端服务器的返回信息获知可执行修复的软件,即对于需要云安全平台参与软件修复的场景中,可执行修复的软件必须能够得到云端服务器支持的,当云端服务器无法支持客户端中存在的某一软件时,则无法利用云端服务器实现对该软件的修复。
描述信息获取单元111适于获取查找到的软件的描述信息。根据描述信息的不同内容,描述信息获取单元会采用不同的方式获取该描述信息。一种方式下,描述信息获取单元111对识别出的软件进行扫描,检查软件中文件的属性,如文件名称、文件大小、文件版本信息和文件签名信息等,这些信息构成一部分描述信息;又一种方式下,描述信息获取单元111从云安全平台中获取相应的描述信息,如描述信息获取单元111通过客户端与云端服务器200之间的连接,从云端服务器200中获取相应的描述信息,该描述信息可以包括文件安全等级,文件安全等级可以指示文件的安全等级为危险等级、安全等级、未知等级等。
软件确认单元112适于根据客户端利用描述信息和本地配置规则对软件的本地检查结果,和/或接收到的云端服务器利用获知的描述信息和云端配置规则对软件的云端检查结果,确认需要修复的软件。
软件确认单元112根据本地配置规则和云端服务器返回的云端配置规则对软件的完整性和安全性进行检查,如判断文件是否被篡改、是否有缺失、软件目录中是否存在多余的恶意程序等。
本地配置规则或云端配置规则可以包括下述的一种或多种:
规则1:当软件没有包括必需的特定文件时,需要修复该软件,该特定文件为软件正常运行时的必需文件。对该规则1的一种变形可以为软件中包含的文件不是预定文件时,需要修复该软件,该预定文件为软件正常运行时需要的文件,当软件中的文件多于或少于该预定文件时,需要修复该软件。即通过规则1判断软件中是否缺失文件或者是否存在多余的恶意文件。
规则2:当软件中指定文件的版本信息中没有包含第一特定字符串时,需要修复该软件;
规则3:当软件中指定文件中没有签名信息时,需要修复该软件;
规则4:当软件中指定文件的签名信息中颁发者信息没有包含第二特定字符串时,需要修复该软件。
通过上述规则2至规则4判断软件中的文件是否被篡改。在此,不对上述第一特定字符串和第二特定字符串中的具体内容进行限定。
规则5:当软件中文件的文件安全等级为危险级别时,需要修复该软件中的文件。
通过规则5可以判断软件目录中是否存在恶意程序或者软件中是否存在恶意文件。文件安全等级还可以与其他规则结合使用,例如,与规则2结合起来使用时,当软件中文件的文件安全等级为安全级别或未知级别时,再判断该文件的版本信息中是否包含特定字符串。
软件确认单元112可以仅利用本地配置规则检查出需要修复的软件,如当本地检查结果指示软件需要修复时,确认该软件为需要修复的软件,不再利用云端配置规则对该软件进行检查;或者,
软件确认单元112可以结合本地配置规则和云端配置规则检查出需要修复的软件,如当本地检查结果指示软件不需要修复时,将该软件的描述信息发送至云端服务器200;接收云端服务器200利用该描述信息和云端配置规则下发的云端检查结果,当云端检查结果指示该软件不需要修复时,确认该软件为不需要修复的软件,当云端检查结果指示该软件需要修复时,确认该软件为需要修复的软件;或者,
软件确认单元112也可以直接利用云端配置规则检查出需要修复的软件,如软件确认单元112不利用本地配置规则对软件进行检查,将该软件的描述信息发送至云端服务器200,当软件确认单元112接收到的云端检查结果指示软件需要修复时,确认该软件为需要修复的软件。
控制信息获取单元113适于根据需要修复的软件的识别信息获取修复控制信息。一种方式下,可以从云端服务器200获取修复控制信息,则控制信息获取单元113将需要修复的软件的识别信息发送至云端服务器200,由云端服务器200生成修复控制信息,控制信息获取单元113接收云端服务器200根据识别信息返回的修复控制信息;又一种方式下,可以从客户端本地的查杀引擎获取修复控制信息,则控制信息获取单元113将需要修复的软件的识别信息通知客户端的查杀引擎,由查杀引擎生成修复控制信息,从而使客户端上的控制信息获取单元113获知修复控制信息。这种由本地查杀引擎生成修复控制信息的方式对修复感染型计算机病毒造成的破坏十分有效。
修复单元114,适于根据修复控制信息对需要修复的软件进行修复。根据修复控制信息中指示的内容,修复单元114执行的具体修复方式也不同。
一种修复方式下,修复单元114适于根据修复控制信息中指示目标文件下载点地址的信息,从下载点地址对应的云端服务器中下载目标文件;利用目标文件替换需要修复的软件或该软件中的相应软件,或将目标文件设置在需要修复的软件中(即该目标文件为软件中缺少的必需文件);
另一种修复方式下,修复单元114根据修复控制信息获知需要删除软件或软件中的文件时,将该软件或该软件中的相应文件删除;
又一种修复方式下,修复单元114根据修复控制信息获知软件中被计算机病毒感染的文件,利用客户端的查杀引擎将被感染文件中的恶意代码删除。
在一次修复过程中,修复单元114根据修复控制信息的指示可以执行上述的任一种修复操作,或者同时执行上述的两种或多种修复操作。
本发明另一实施例还提供了一种通信系统,该系统包括客户端设备和云端服务器,客户端设备通过网络与云端服务器相连接,客户端设备上设置有如上述的客户端软件的修复装置,客户端设备利用该客户端软件的修复装置对客户端中的软件进行修复。本实施例中客户端软件的修复装置的具体工作方式可以参见本发明其他实施例中的相关内容。参见图2,示出了本实施例提供的一种通信系统的结构示意图,在图2中主要对云安全平台中各设备进行了细化,云安全平台中包括从设备(SLAVE)210、主设备(MASTER)211、下载服务器212、发布机213和数据处理机214等。客户端软件的修复装置100设置在客户端的计算机设备中,客户端可以通过因特网(INTERNET)连接向云端设备发起文件修复的请求,先由所设置的从设备210(如设置在电信机房或联通机房中)接收客户端的请求,根据该请求查询主设备211中的数据库,并将查询结果返回至从设备,由从设备将查询结果通过因特网发送至客户端。主设备211的数据库中的数据包含常用软件的信息,如软件的名称、软件的版本号以及软件中文件的信息等,由客户端侧的信息收集设备215收集这些常用软件信息,并上报至数据处理机214,数据处理机214中部署常用软件处理包程序以对信息收集设备上报的信息进行处理,处理完毕后,数据处理机214通过上传机服务将处理结果上传至数据库,并通过常用软件索引数据装入程序将处理结果载入至数据库中。数据处理机214还可以将一部分的处理结果发送至发布机213,由发布机213将该处理结果通过上传数据包服务发送至下载服务器212(该服务器可以设置在电信机房或联通机房中),下载服务器可以向客户端提供软件或软件中文件的下载服务等。
本发明又一实施例还提供了一种客户端软件的修复方法,参见图3,包括:
S300:查找客户端上可执行修复的软件。
S302:获取查找到的软件的描述信息。
S304:确认需要修复的软件。
根据客户端利用描述信息和本地配置规则对软件的本地检查结果,和/或接收到的云端服务器利用获知的描述信息和云端配置规则对软件的云端检查结果,确认需要修复的软件。
S306:根据需要修复的软件的识别信息获取修复控制信息。
S308:根据修复控制信息对需要修复的软件进行修复。
其中,在上述步骤S306中,一种方式下,可以从云端服务器获取修复控制信息,则客户端将需要修复的软件的识别信息发送至云端服务器,由云端服务器生成修复控制信息,并接收云端服务器根据识别信息返回的修复控制信息;又一种方式下,可以从客户端本地的查杀引擎获取修复控制信息,则客户端将需要修复的软件的识别信息通知客户端本地的查杀引擎,由查杀引擎生成修复控制信息,从而使客户端获知修复控制信息。这种由本地查杀引擎生成修复控制信息的方式对修复感染型计算机病毒造成的破坏十分有效。可以理解,在一次修复控制信息的获取过程中,根据需要既可以同时执行上述两种方式的操作,也可以仅执行其中的任一种操作。
其中,在执行步骤S300之前,上述方法还包括:将客户端上收集到的多种软件的信息上报至云端服务器,以使云端服务器根据该信息确认可执行修复的软件;根据来自云端服务器的返回信息获知可执行修复的软件。这种处理方式,可以根据来自云端服务器的返回信息获知可执行修复的软件,即对于需要云安全平台参与软件修复的场景中,可执行修复的软件必须能够得到云端服务器支持的,当云端服务器无法支持客户端中存在的某一软件时,则无法利用云端服务器实现对该软件的修复。
其中,上述步骤S300具体包括:设置多种查找方式,并建立软件和至少一种查找方式的对应关系;按照软件对应的查找方式在客户端上查找软件,该查找方式至少包括下述方式:
通过查找注册表中的特定键值来查找软件;或者,从开始菜单、桌面和快速启动栏目录中快捷方式指向的目标软件中查找软件;或者,从当前客户端系统正在运行的进程文件所在目录下查找软件;或者,在需要执行软件修复的客户端设备的全部磁盘上搜索软件。
并且,当软件对应于多种查找方式时,为该软件的不同查找方式设置不同的优先级,以及,
为第一查找方式设置的优先级高于为第二查找方式设置的优先级;为第二查找方式设置的优先级高于为第三查找方式设置的优先级;为第三查找方式设置的优先级高于为第四查找方式设置的优先级;其中,第一查找方式为通过查找注册表中的特定键值来查找软件,第二查找方式为从开始菜单、桌面和快速启动栏目录中快捷方式指向的目标软件中查找软件,第三查找方式为从当前客户端系统正在运行的进程文件所在目录下查找软件,第四查找方式为在客户端的全部磁盘上搜索软件。
其中,本实施例中的描述信息包括但不局限于软件中的文件名称、文件版本信息、文件签名信息和/或文件安全等级,在步骤S304中采用的本地配置规则或云端配置规则包括下述的一种或多种规则:
当软件没有包括必需的特定文件时,需要修复该软件,该特定文件为软件正常运行时的必需文件;当软件中指定文件的版本信息中没有包含第一特定字符串时,需要修复该软件;当软件中指定文件中没有签名信息时,需要修复该软件;当软件中指定文件的签名信息中颁发者信息没有包含第二特定字符串时,需要修复该软件;当软件中文件的文件安全等级为危险级别时,需要修复该软件中的文件。
则步骤S304中,当本地检查结果指示软件需要修复时,确认该软件为需要修复的软件,不再利用云端配置规则对该软件进行检查;或者,当本地检查结果指示软件不需要修复时,将该软件的描述信息发送至云端服务器;接收云端服务器利用该描述信息和云端配置规则下发的云端检查结果,当云端检查结果指示该软件不需要修复时,确认该软件为不需要修复的软件,当云端检查结果指示该软件需要修复时,确认该软件为需要修复的软件;或者,不利用本地配置规则对软件进行检查,当接收到的云端检查结果指示软件需要修复时,确认该软件为需要修复的软件。
上述步骤S308具体包括:根据修复控制信息中指示目标文件下载点地址的信息,从下载点地址对应的云端服务器中下载目标文件;利用目标文件替换需要修复的软件或该软件中的相应软件,或将目标文件设置在需要修复的软件中;和/或,根据修复控制信息获知需要删除软件或软件中的文件时,将该软件或该软件中的相应文件删除;和/或,根据修复控制信息获知软件中被计算机病毒感染的文件,利用客户端的查杀引擎将被感染文件中的恶意代码删除。
本发明方法实施例中各步骤的具体执行方式可以参见本发明的装置和系统实施例,在此不再赘述。
由上所述,本发明实施例通过利用查找到的可执行修复的软件的描述信息以及客户端的本地配置规则和/或云端服务器侧的云端配置规则确认客户端中需要修复的软件的技术手段,提供了一种新型的客户端本地查杀引擎与云端服务器结合的查杀方式,能够在充分利用客户端资源的同时,基于云安全平台提高对恶意程序查杀的准确率和及时性。并且,本发明实施例通过对客户端软件的识别、在识别出的软件中确认需要修复的软件以及根据获取到的修复控制信息对需要修复的软件进行修复的技术手段,提供了一套完整的修复被恶意程序破坏的软件的应对方案,有效地遏制了恶意程序通过篡改合法软件危害网络安全的现象,提高了网络通信的安全性。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的客户端软件的修复装置和通信系统中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

Claims (17)

1.一种客户端软件的修复方法,包括:
查找客户端上可执行修复的软件;
获取所述查找到的软件的描述信息;
根据客户端利用所述描述信息和本地配置规则对所述软件的本地检查结果,和/或接收到的云端服务器利用获知的所述描述信息和云端配置规则对所述软件的云端检查结果,确认需要修复的软件;
根据所述需要修复的软件的识别信息获取修复控制信息;
根据所述修复控制信息对需要修复的软件进行修复。
2.根据权利要求1所述的方法,其中,所述根据所述需要修复的软件的识别信息获取修复控制信息包括:
将需要修复的软件的识别信息发送至云端服务器,接收云端服务器根据所述识别信息返回的修复控制信息;和/或,
将需要修复的软件的识别信息通知客户端的查杀引擎,由客户端的查杀引擎生成所述修复控制信息。
3.根据权利要求1所述的方法,其中,在查找客户端上可执行修复的软件之前,所述方法还包括:
将客户端上收集到的多种软件的信息上报至云端服务器,以使云端服务器根据该信息确认可执行修复的软件;
根据来自云端服务器的返回信息获知可执行修复的软件。
4.根据权利要求1所述的方法,其中,所述查找客户端上可执行修复的软件包括:
设置多种查找方式,并建立软件和至少一种查找方式的对应关系;
按照软件对应的查找方式在客户端上查找软件;
其中,所述查找方式至少包括下述方式:
通过查找注册表中的特定键值来查找软件;或者,
从开始菜单、桌面和快速启动栏目录中快捷方式指向的目标软件中查找软件;或者,
从当前客户端系统正在运行的进程文件所在目录下查找软件;或者,
在需要执行软件修复的客户端设备的全部磁盘上搜索软件。
5.根据权利要求3所述的方法,其中,当软件对应于多种查找方式时,为该软件的不同查找方式设置不同的优先级,以及,
为第一查找方式设置的优先级高于为第二查找方式设置的优先级;
为第二查找方式设置的优先级高于为第三查找方式设置的优先级;
为第三查找方式设置的优先级高于为第四查找方式设置的优先级;
所述第一查找方式为通过查找注册表中的特定键值来查找软件,所述第二查找方式为从开始菜单、桌面和快速启动栏目录中快捷方式指向的目标软件中查找软件,所述第三查找方式为从当前客户端系统正在运行的进程文件所在目录下查找软件,所述第四查找方式为在客户端的全部磁盘上搜索软件。
6.根据权利要求1所述的方法,其中,所述描述信息包括软件中的文件名称、文件版本信息、文件签名信息和/或文件安全等级,
所述本地配置规则或云端配置规则包括下述的一种或多种规则:
当软件没有包括必需的特定文件时,需要修复该软件,所述特定文件为软件正常运行时的必需文件;
当软件中指定文件的版本信息中没有包含第一特定字符串时,需要修复该软件;
当软件中指定文件中没有签名信息时,需要修复该软件;
当软件中指定文件的签名信息中颁发者信息没有包含第二特定字符串时,需要修复该软件;
当软件中文件的文件安全等级为危险级别时,需要修复该软件中的文件。
7.根据权利要求1所述的方法,其中,所述根据客户端利用所述描述信息和本地配置规则对所述软件的本地检查结果,和/或接收到的云端服务器利用获知的所述描述信息和云端配置规则对所述软件的云端检查结果,确认需要修复的软件包括:
当本地检查结果指示软件需要修复时,确认该软件为需要修复的软件,不再利用云端配置规则对该软件进行检查;或者,
当本地检查结果指示软件不需要修复时,将该软件的描述信息发送至云端服务器;接收云端服务器利用该描述信息和云端配置规则下发的云端检查结果,当云端检查结果指示该软件不需要修复时,确认该软件为不需要修复的软件,当云端检查结果指示该软件需要修复时,确认该软件为需要修复的软件;或者,
不利用本地配置规则对软件进行检查,当接收到的云端检查结果指示软件需要修复时,确认该软件为需要修复的软件。
8.根据权利要求1所述的方法,其中,所述根据所述修复控制信息对需要修复的软件进行修复包括:
根据所述修复控制信息中指示目标文件下载点地址的信息,从所述下载点地址对应的云端服务器中下载目标文件;利用所述目标文件替换需要修复的软件或该软件中的相应软件,或将所述目标文件设置在需要修复的软件中;
和/或,
根据所述修复控制信息获知需要删除软件或软件中的文件时,将该软件或该软件中的相应文件删除;和/或,
根据所述修复控制信息获知软件中被计算机病毒感染的文件,利用客户端的查杀引擎将所述被感染文件中的恶意代码删除。
9.一种客户端软件的修复装置,包括:
软件查找单元,适于查找客户端上可执行修复的软件;
描述信息获取单元,适于获取所述查找到的软件的描述信息;
软件确认单元,适于根据客户端利用所述描述信息和本地配置规则对所述软件的本地检查结果,和/或接收到的云端服务器利用获知的所述描述信息和云端配置规则对所述软件的云端检查结果,确认需要修复的软件;
控制信息获取单元,适于根据所述需要修复的软件的识别信息获取修复控制信息;
修复单元,适于根据所述修复控制信息对需要修复的软件进行修复。
10.根据权利要求9所述的装置,其中,所述控制信息获取单元将需要修复的软件的识别信息发送至云端服务器,接收云端服务器根据所述识别信息返回的修复控制信息;和/或,
将需要修复的软件的识别信息通知客户端的查杀引擎,由客户端的查杀引擎生成所述修复控制信息。
11.根据权利要求9所述的装置,其中,所述装置还包括软件获知单元,
所述软件获知单元,适于在查找客户端上可执行修复的软件之前,将客户端上收集到的多种软件的信息上报至云端服务器,以使云端服务器根据该信息确认可执行修复的软件;以及,根据来自云端服务器的返回信息获知可执行修复的软件。
12.根据权利要求9所述的装置,其中,所述软件查找单元,具体适于设置多种查找方式,并建立软件和至少一种查找方式的对应关系,按照软件对应的查找方式在客户端上查找软件;
其中,所述查找方式至少包括下述方式:
通过查找注册表中的特定键值来查找软件;或者,
从开始菜单、桌面和快速启动栏目录中快捷方式指向的目标软件中查找软件;或者,
从当前客户端系统正在运行的进程文件所在目录下查找软件;或者,
在需要执行软件修复的客户端设备的全部磁盘上搜索软件。
13.根据权利要求12所述的装置,其中,所述软件查找单元,还适于当软件对应于多种查找方式时,为该软件的不同查找方式设置不同的优先级,以及,为第一查找方式设置的优先级高于为第二查找方式设置的优先级;为第二查找方式设置的优先级高于为第三查找方式设置的优先级;为第三查找方式设置的优先级高于为第四查找方式设置的优先级;
所述第一查找方式为通过查找注册表中的特定键值来查找软件,所述第二查找方式为从开始菜单、桌面和快速启动栏目录中快捷方式指向的目标软件中查找软件,所述第三查找方式为从当前客户端系统正在运行的进程文件所在目录下查找软件,所述第四查找方式为在客户端的全部磁盘上搜索软件。
14.根据权利要求9所述的装置,其中,所述软件确认单元中使用的描述信息包括软件中的文件名称、文件版本信息、文件签名信息和/或文件安全等级,
所述本地配置规则或云端配置规则包括下述的一种或多种规则:
当软件没有包括必需的特定文件时,需要修复该软件,所述特定文件为软件正常运行时的必需文件;
当软件中指定文件的版本信息中没有包含第一特定字符串时,需要修复该软件;
当软件中指定文件中没有签名信息时,需要修复该软件;
当软件中指定文件的签名信息中颁发者信息没有包含第二特定字符串时,需要修复该软件;
当软件中文件的文件安全等级为危险级别时,需要修复该软件中的文件。
15.根据权利要求8所述的装置,其中,所述软件确认单元,具体适于当本地检查结果指示软件需要修复时,确认该软件为需要修复的软件,不再利用云端配置规则对该软件进行检查;或者,
当本地检查结果指示软件不需要修复时,将该软件的描述信息发送至云端服务器;接收云端服务器利用该描述信息和云端配置规则下发的云端检查结果,当云端检查结果指示该软件不需要修复时,确认该软件为不需要修复的软件,当云端检查结果指示该软件需要修复时,确认该软件为需要修复的软件;或者,
不利用本地配置规则对软件进行检查,当接收到的云端检查结果指示软件需要修复时,确认该软件为需要修复的软件。
16.根据权利要求8所述的装置,其中,所述修复单元,适于根据所述修复控制信息中指示目标文件下载点地址的信息,从所述下载点地址对应的云端服务器中下载目标文件;利用所述目标文件替换需要修复的软件或该软件中的相应软件,或将所述目标文件设置在需要修复的软件中;和/或,根据所述修复控制信息获知需要删除软件或软件中的文件时,将该软件或该软件中的相应文件删除;和/或,根据所述修复控制信息获知软件中被计算机病毒感染的文件,利用客户端的查杀引擎将所述被感染文件中的恶意代码删除。
17.一种通信系统,该系统包括客户端设备和云端服务器,所述客户端设备通过网络与云端服务器相连接,所述客户端设备上设置有如上述权利要求9至16任一项所述的客户端软件的修复装置,所述客户端设备利用该客户端软件的修复装置对客户端中的软件进行修复。
CN201310009128.XA 2013-01-10 2013-01-10 客户端软件的修复方法、装置和通信系统 Active CN103095698B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310009128.XA CN103095698B (zh) 2013-01-10 2013-01-10 客户端软件的修复方法、装置和通信系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310009128.XA CN103095698B (zh) 2013-01-10 2013-01-10 客户端软件的修复方法、装置和通信系统

Publications (2)

Publication Number Publication Date
CN103095698A true CN103095698A (zh) 2013-05-08
CN103095698B CN103095698B (zh) 2016-07-13

Family

ID=48207831

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310009128.XA Active CN103095698B (zh) 2013-01-10 2013-01-10 客户端软件的修复方法、装置和通信系统

Country Status (1)

Country Link
CN (1) CN103095698B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104021342A (zh) * 2014-05-06 2014-09-03 可牛网络技术(北京)有限公司 应用程序的处理方法及装置
CN106022125A (zh) * 2016-05-03 2016-10-12 北京金山安全软件有限公司 一种客户端的修复方法及装置
CN106502665A (zh) * 2016-10-18 2017-03-15 广州视睿电子科技有限公司 一种应用程序的修复方法及装置
CN104123223B (zh) * 2014-07-02 2017-11-10 珠海市君天电子科技有限公司 软件的修复方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102810138A (zh) * 2012-06-19 2012-12-05 北京奇虎科技有限公司 一种用户端文件的修复方法和系统
CN102855160A (zh) * 2012-08-22 2013-01-02 北京奇虎科技有限公司 软件修复方法、装置及系统
CN102855181A (zh) * 2011-07-01 2013-01-02 腾讯科技(深圳)有限公司 软件修复方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102855181A (zh) * 2011-07-01 2013-01-02 腾讯科技(深圳)有限公司 软件修复方法及系统
CN102810138A (zh) * 2012-06-19 2012-12-05 北京奇虎科技有限公司 一种用户端文件的修复方法和系统
CN102855160A (zh) * 2012-08-22 2013-01-02 北京奇虎科技有限公司 软件修复方法、装置及系统

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104021342A (zh) * 2014-05-06 2014-09-03 可牛网络技术(北京)有限公司 应用程序的处理方法及装置
CN104123223B (zh) * 2014-07-02 2017-11-10 珠海市君天电子科技有限公司 软件的修复方法和装置
CN106022125A (zh) * 2016-05-03 2016-10-12 北京金山安全软件有限公司 一种客户端的修复方法及装置
CN106022125B (zh) * 2016-05-03 2019-09-17 珠海豹趣科技有限公司 一种客户端的修复方法及装置
CN106502665A (zh) * 2016-10-18 2017-03-15 广州视睿电子科技有限公司 一种应用程序的修复方法及装置
CN106502665B (zh) * 2016-10-18 2019-09-03 广州视睿电子科技有限公司 一种应用程序的修复方法及装置

Also Published As

Publication number Publication date
CN103095698B (zh) 2016-07-13

Similar Documents

Publication Publication Date Title
CN103679029A (zh) 一种修复山寨应用程序的方法及装置
CN102833258A (zh) 网址访问方法及系统
CN103632100A (zh) 一种网站漏洞检测方法及装置
CN110287696B (zh) 一种反弹shell进程的检测方法、装置和设备
CN104537308A (zh) 提供应用安全审计功能的系统及方法
CN103226485A (zh) 代码发布方法、代码发布机和代码发布系统
CN103019879A (zh) 浏览器崩溃信息的处理方法及系统
CN103078945B (zh) 对浏览器崩溃数据进行处理的方法与系统
CN107239701B (zh) 识别恶意网站的方法及装置
CN102982284A (zh) 用于恶意程序查杀的扫描设备、云端管理设备及方法和系统
CN105303109A (zh) 一种恶意代码情报检测分析方法及系统
CN104144142A (zh) 一种Web漏洞挖掘方法及系统
CN104320312A (zh) 网络应用安全测试工具及模糊测试用例生成方法和系统
CN103095698A (zh) 客户端软件的修复方法、装置和通信系统
CN101950339B (zh) 一种电脑安全防护方法和系统
CN103023885A (zh) 安全数据处理方法及系统
CN104036193B (zh) 一种应用程序的本地跨域漏洞检测方法及装置
CN103500114A (zh) 一种应用程序的安装方法及装置
CN108363931B (zh) 一种对隔离区文件进行还原的方法及装置
CN111966630B (zh) 文件类型的检测方法、装置、设备和介质
CN102929733A (zh) 一种错误文件处理方法、装置和客户端设备
CN102929732A (zh) 应用程序调用文件的方法和装置及客户端设备
CN103530155A (zh) 一种用于应用程序的安装方法及装置
CN115080114B (zh) 应用程序的移植处理方法、装置和介质
CN103167016A (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
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220801

Address after: Room 801, 8th floor, No. 104, floors 1-19, building 2, yard 6, Jiuxianqiao Road, Chaoyang District, Beijing 100015

Patentee after: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Address before: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park)

Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Patentee before: Qizhi software (Beijing) Co.,Ltd.