一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于钩子函数的补丁更新方法及系统与流程

2022-11-14 16:05:17 来源:中国专利 TAG:


1.本发明实施例涉及计算机技术领域,特别涉及一种基于钩子函数的补丁更新方法及系统。


背景技术:

2.计算机系统更新非常频繁,为了避免终端上安装的系统出现漏洞等问题,需要及时对windows系统进行补丁更新。目前,存在一些处于内网环境中的企业,由于安全原因企业中的终端不能访问外部互联网,会导致这些终端进行系统更新时出现中断,使得这些终端反而出现漏洞等一系列安全隐患。
3.传统对内网终端进行补丁更新的方法,是通过网络爬虫的方式从外网获取更新的补丁文件,进而向企业部署的内网服务器上传爬取到的补丁文件,由内网服务器为内网终端提供进行补丁更新的补丁文件。但是,该方式不仅存在爬取难度,且补丁文件的获取及时性较差。


技术实现要素:

4.本发明实施例提供了一种基于钩子函数的补丁更新方法及系统,能够及时且容易的获取到进行更新的补丁文件,以为部署在内网的终端提供所需的补丁文件。
5.第一方面,本发明实施例提供了一种基于钩子函数的补丁更新方法,应用于终端设备,所述终端设备中部署有至少一个钩子函数;所述方法包括:
6.基于所述至少一个钩子函数捕获所述终端设备的系统行为;
7.分析捕获的所述系统行为是否用于所述终端设备中windows系统的补丁更新;若是,则获取用于所述终端设备中windows系统的补丁更新的补丁文件和补丁信息;
8.向所述补丁管理服务器上报补丁更新内容,以使所述补丁管理服务器基于所述补丁更新内容对补丁库进行更新,进而利用更新后的补丁库为内网服务器提供所需的补丁文件;所述补丁更新内容至少包括所述补丁文件、补丁信息和所述终端设备的windows系统版本,所述内网服务器用于为部署在内网的终端提供windows系统的补丁更新。
9.在一种可能的实现方式中,所述钩子函数用于捕获所述终端设备产生向磁盘中下载文件的系统行为;
10.所述分析捕获的所述系统行为是否用于所述终端设备中windows系统的补丁更新,包括:
11.基于所述系统行为中包括的文件下载路径,从所述文件下载路径中获取该下载的文件;并基于预设补丁更新特征确定该下载的文件是否为补丁文件,若是,则确定所述系统行为用于所述终端设备中windows系统的补丁更新。
12.在一种可能的实现方式中,所述获取用于所述终端设备中windows系统的补丁更新的补丁文件,包括:
13.将该下载的文件确定为所述补丁文件。
14.在一种可能的实现方式中,在所述向所述补丁管理服务器上报补丁更新内容之前,还包括:
15.确定是否需要将所述补丁文件上报给所述补丁管理服务器,若需要,则执行所述向所述补丁管理服务器上报补丁更新内容。
16.在一种可能的实现方式中,所述确定是否需要将所述补丁文件上报给所述补丁管理服务器,包括:
17.计算所述补丁文件的哈希值,将所述哈希值和/或补丁信息发送至所述补丁管理服务器,以使所述补丁管理服务器基于所述哈希值和/或补丁信息确定补丁库中是否存储有所述补丁文件;
18.当接收到所述补丁管理服务器发送的上报指令时,则确定需要将所述补丁文件上传至所述补丁管理服务器。
19.第二方面,本发明实施例还提供了一种基于钩子函数的补丁更新方法,应用于补丁管理服务器,所述方法包括:
20.接收多个终端设备分别上报的补丁更新内容;所述补丁更新内容至少包括补丁文件、补丁信息和对应终端设备的windows系统版本;所述补丁文件是对应终端设备在监测到自身进行windows系统的补丁更新时获取并上报的,且所述补丁文件是从部署在对应终端设备的至少一个钩子函数所捕获的系统行为中得到的;
21.对接收到的补丁文件进行安全检查,当检查通过后,根据接收到的补丁更新内容对预设补丁库进行更新;所述补丁库中包括与windows系统版本对应的补丁文件和补丁信息;
22.响应于接收到内网服务器发送的补丁文件下载请求,根据所述补丁库和所述下载请求将请求下载的目标补丁文件发送至所述内网服务器,以使所述内网服务器利用所述目标补丁文件为部署在内网的终端提供windows系统的补丁更新。
23.在一种可能的实现方式中,在所述接收多个终端设备分别上报的补丁更新内容之前,还包括:
24.接收所述终端设备发送的哈希值和/或补丁信息;所述哈希值是所述终端设备针对待上报补丁文件计算得来的;
25.基于所述哈希值和/或补丁信息确定所述补丁库中是否存储有所述待上报补丁文件,若未存储,则向所述终端设备发送上报指令,以指示所述终端设备上报包含所述待上报补丁文件的补丁更新内容。
26.在一种可能的实现方式中,所述多个终端设备覆盖多个不同的windows系统版本;所述补丁库中包括不同windows系统版本对应的补丁文件和补丁信息。
27.在一种可能的实现方式中,还包括:建立补丁白名单列表,每当接收到终端设备上报的补丁更新内容后对所述补丁白名单列表进行更新;所述补丁白名单列表包括不同windows系统版本分别与补丁信息的对应关系;
28.在所述响应于接收到内网服务器发送的补丁文件下载请求之前,还包括:响应于接收到内网服务器的查询请求,并将所述补丁白名单列表发送给所述内网服务器,以使所述内网服务器根据所述补丁白名单列表和部署在内网的终端的补丁安装情况,确定是否存在需要更新的补丁文件,以请求下载该需要更新的补丁文件;所述补丁安装情况包括:部署
在内网的终端所对应的windows系统版本和当前安装补丁文件的补丁信息。
29.第三方面,本发明实施例还提供了一种基于钩子函数的补丁更新系统,包括:补丁管理服务器和多个终端设备;其中,每一个所述终端设备中部署有至少一个钩子函数;
30.每一个所述终端设备,用于基于所述至少一个钩子函数捕获所述终端设备的系统行为;分析捕获的所述系统行为是否用于所述终端设备中windows系统的补丁更新;若是,则获取用于所述终端设备中windows系统的补丁更新的补丁文件和补丁信息;以及向所述补丁管理服务器上报补丁更新内容;所述补丁更新内容至少包括所述补丁文件、补丁信息和所述终端设备的windows系统版本;
31.所述补丁管理服务器,用于接收多个终端设备分别上报的补丁更新内容;对接收到的补丁文件进行安全检查,当检查通过后,根据接收到的补丁更新内容对预设补丁库进行更新;所述补丁库中包括与windows系统版本对应的补丁文件和补丁信息;响应于接收到内网服务器发送的补丁文件下载请求,根据所述补丁库和所述下载请求将请求下载的目标补丁文件发送至所述内网服务器,以使所述内网服务器利用所述目标补丁文件为部署在内网的终端提供windows系统的补丁更新。
32.第四方面,本发明实施例还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现本说明书任一实施例所述的方法。
33.第五方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行本说明书任一实施例所述的方法。
34.本发明实施例提供了一种基于钩子函数的补丁更新方法及系统,通过在终端设备中部署钩子函数,可以利用钩子函数捕获终端设备的系统行为,通过分析捕获的系统行为是否用于终端设备中windows系统的补丁更新,当确定终端设备进行windows系统的补丁更新时,获取补丁更新的补丁文件,以上报给补丁管理服务器,由补丁管理服务器对补丁库进行更新,以为内网服务器提供所需的补丁文件,进而由内网服务器为部署在内网的终端提供windows系统的补丁更新。可见,本方案中,通过钩子函数捕获终端设备的系统行为,不会影响终端设备本身的业务运行,且可以及时监控到终端设备windows系统的补丁更新以及获取到补丁文件,难度较小;另外,当处于联网状态的终端设备在进行补丁更新时即可快速将补丁更新的补丁文件更新至补丁库,使得补丁库中的补丁文件为最新的,从而保证了内网终端所需的补丁文件的获取及时性。
附图说明
35.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
36.图1是本发明一实施例提供的一种补丁更新系统架构图;
37.图2是本发明一实施例提供的一种基于钩子函数的补丁更新方法流程图;
38.图3是本发明一实施例提供的另一种基于钩子函数的补丁更新方法流程图;
39.图4是本发明一实施例提供的一种基于钩子函数的补丁更新系统结构图。
具体实施方式
40.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
41.如前所述,通过网络爬虫方式从外网获取更新的补丁文件,若需要及时获取最新的补丁文件,则需要不停的进行网络爬虫,而网络爬虫不仅成本高且存在爬取难度,比如存在网络监管,会对网络爬虫进行禁止。因此,无法保证能够及时爬取到最新的补丁文件,及时性较差,那么就无法为部署在内网内网的终端提供所需的补丁文件,影响内网终端的安全性。
42.基于上述问题,本发明的发明构思在于:构建补丁管理服务器,在终端设备中部署至少一个钩子函数,利用钩子函数对终端设备进行监控,当终端设备进行windows系统的补丁更新时,则获取到补丁更新的补丁文件,快速对补丁库进行更新,从而可以为内网服务器所管理的终端提供所需的补丁文件,保障内网终端的安全性。
43.基于以上构思,对本发明实施例的系统架构进行说明。
44.请参考图1,本发明一个实施例提供了一种补丁更新系统,包括:补丁管理服务器10和多个终端设备20。其中,补丁管理服务器10可在需要时与每一个终端设备20连接;每一个终端设备20在需要时与微软服务器50连接。补丁管理服务器10可在需要时与内网服务器30连接,内网服务器30与多个终端40通过内网连接,该多个终端40均部署在内网环境中。
45.下面针对补丁更新系统中的补丁管理服务器和终端设备这两端,分别对本发明构思的具体实现过程进行说明。
46.请参考图2,为本发明一个实施例提供的一种基于钩子函数的补丁更新方法,应用于终端设备,该终端设备中部署有至少一个钩子函数;该方法包括:
47.步骤200,基于所述至少一个钩子函数捕获所述终端设备的系统行为。
48.windows系统是建立在事件驱动的消息处理机制之上,系统各部分之间的沟通也都是通过消息的相互传递而实现的。钩子函数是windows消息处理机制的一个平台,应用程序可以在平台中设置子程以监视指定窗口的某种消息,而且所监视的窗口可以是其他进程所创建的。当消息到达后,在目标窗口处理函数之前处理它。钩子机制允许应用程序截获处理window消息或特定事件。
49.其中,在终端设备中可以部署至少一个钩子函数,当部署多个钩子函数时,可以用于处理不同的消息。多个不同类型的钩子函数的指针构成钩子链表,由windows系统维护。
50.为了能够实现利用钩子函数捕获终端设备的系统行为,可以利用setwindowshookex函数将钩子函数部署到终端设备中。
51.一个实现方式中,可以通过如下函数实现钩子函数的最终部署:
52.[0053][0054]
本发明实施例中,钩子函数可以部署在终端设备的安全助手或杀毒软件中,用来监控安全问题。同时用来监控终端设备的系统行为,以捕获终端设备的系统行为。
[0055]
由于终端设备在进行windows系统的补丁更新时,会产生系统行为,比如,该系统行为为向微软服务器请求下载补丁文件、接收微软服务器下发的补丁文件、将文件存储到磁盘中等。因此,可以通过捕获终端设备的系统行为来监控终端设备是否进行windows系统的补丁更新。
[0056]
本发明实施例中,可以部署不同的钩子函数实现对不同系统行为的捕获。
[0057]
一个实现方式中,可以部署钩子函数,用于对终端设备产生与外网交互网络流量数据包的系统行为进行捕获,且同时捕获交互的网络流量数据包,并利用捕获的网络流量数据包执行步骤202。
[0058]
另一个实现方式中,可以部署钩子函数,用于对所述终端设备产生向磁盘中下载文件的系统行为进行捕获,并利用该系统行为执行步骤202。
[0059]
步骤202,分析捕获的所述系统行为是否用于所述终端设备中windows系统的补丁更新;若是,则获取用于所述终端设备中windows系统的补丁更新的补丁文件和补丁信息。
[0060]
本发明实施例中,当钩子函数用于捕获所述终端设备产生向磁盘中下载文件的系统行为时,本步骤202可以通过如下方式分析捕获的所述系统行为是否用于所述终端设备中windows系统的补丁更新:基于所述系统行为中包括的文件下载路径,从所述文件下载路径中获取该下载的文件;并基于预设补丁更新特征确定该下载的文件是否为补丁文件,若是,则确定所述系统行为用于所述终端设备中windows系统的补丁更新。
[0061]
其中,该补丁更新特征可以包括:补丁文件的名称、补丁文件的格式和/或补丁文件的后缀。
[0062]
进一步地,当确定所述系统行为用于所述终端设备中windows系统的补丁更新时,则将该下载的文件确定为补丁文件。
[0063]
需要说明的是,补丁信息可以从该下载的文件中得出,也可以从交互的网络数据流量包中解析出来。其中,补丁信息可以包括:补丁所属的操作系统、补丁列表、硬件信息和驱动、补丁的获取途径、补丁文件的官方信息。。
[0064]
步骤204,向所述补丁管理服务器上报补丁更新内容,以使所述补丁管理服务器基于所述补丁更新内容对补丁库进行更新,进而利用更新后的补丁库为内网服务器提供所需的补丁文件;所述补丁更新内容至少包括所述补丁文件、补丁信息和所述终端设备的windows系统版本,所述内网服务器用于为部署在内网的终端提供windows系统的补丁更新。
[0065]
在获取到补丁文件之后,需要及时将其上报给补丁管理服务器,以保证补丁文件的更新及时性。
[0066]
考虑到补丁管理服务器连接有多个终端设备,补丁管理服务器可能已经获取到由其它终端设备上报的该补丁文件,为了防止补丁文件的重复上报,以及上报过程中的资源浪费,本发明一个实施例中,在步骤204之前,还可以包括:确定是否需要将所述补丁文件上报给所述补丁管理服务器,若需要,则执行步骤204。
[0067]
一种实现方式中,可以通过上报补丁信息的方式确定补丁管理服务器的补丁库中是否已经存储有对应的补丁文件。
[0068]
另一种实现方式中,可以通过上报哈希值的方式确定补丁管理服务器的补丁库中是否已经存储有对应的补丁文件。
[0069]
在通过上报哈希值的方式,具体可以包括:计算所述补丁文件的哈希值,将所述哈希值发送至所述补丁管理服务器,以使所述补丁管理服务器基于所述哈希值确定补丁库中是否存储有所述补丁文件;当接收到所述补丁管理服务器发送的上报指令时,则确定需要将所述补丁文件上传至所述补丁管理服务器。
[0070]
其中,补丁管理服务器中可以预先针对存储的每一个补丁文件计算出哈希值,形成哈希值列表,每当接收到上报的哈希值时,与哈希值列表进行比对,若哈希值列表中包括上报的哈希值,则表明补丁库中已经存储有该补丁文件,否则表明补丁库中未存储该补丁文件。通过哈希值方式不仅能够表征补丁文件的唯一性,且能够减少传输数据量。
[0071]
由于终端设备的windows系统版本较多,补丁文件的种类复杂,且windows系统版本与补丁文件相对应,因此,在进行补丁文件的上报时,需要将终端设备的windows系统版本一同上报。
[0072]
其中,该windows系统版本可以是windows xp、windows vista、windows 7、windows 8/windows 8.1、windows 10、windows 11等。
[0073]
本发明实施例中,终端设备利用钩子函数捕获的系统行为来监控自身是否进行windows系统的补丁更新,并在监控到自身进行windows系统的补丁更新时,获取对应的补丁文件和补丁信息,以上报给补丁管理服务器,可以实现对补丁库的快速更新,从而能够使得补丁管理服务器为内网服务器提供所需的补丁文件,进而由内网服务器为部署在内网的终端提供windows系统的补丁更新,以保证内网终端所需的补丁文件的获取及时性。
[0074]
请参考图3,为本发明一个实施例提供的一种基于钩子函数的补丁更新方法,应用于补丁管理服务器,所述方法包括:
[0075]
步骤300,接收多个终端设备分别上报的补丁更新内容;所述补丁更新内容至少包括补丁文件、补丁信息和对应终端设备的windows系统版本;所述补丁文件是对应终端设备在监测到自身进行windows系统的补丁更新时获取并上报的。
[0076]
一个实现方式中,补丁文件是从部署在对应终端设备的至少一个钩子函数所捕获的系统行为中得到的。
[0077]
其中,补丁信息可以包括:补丁所属的操作系统、补丁列表、硬件信息和驱动、补丁的获取途径、补丁文件的官方信息。
[0078]
由于终端设备的windows系统版本较多,补丁文件的种类复杂,且windows系统版本与补丁文件相对应,因此,在进行补丁文件的上报时,需要将补丁文件的文件信息和终端
设备的windows系统版本一同上报。
[0079]
其中,该windows系统版本可以是windows xp、windows vista、windows 7、windows 8/windows 8.1、windows 10、windows 11等。
[0080]
本发明实施例中,为了保证补丁文件的获取及时性,该补丁文件是终端设备在确定至少一个钩子函数所捕获的系统行为是用于所述终端设备中windows系统的补丁更新后基于系统行为得到的。可见,终端设备几乎是在监控到自身进行windows系统的补丁更新的同时,及时进行了补丁文件的上报,从而保障了补丁文件的获取及时性。
[0081]
在本发明一个实施例中,由于补丁管理服务器连接有多个终端设备,任意一个终端设备进行windows系统的补丁更新时,均可以向补丁管理服务器上报补丁文件。为了防止补丁文件的重复上报,以及上报过程中的资源浪费,可以在本步骤之前包括:接收所述终端设备发送的哈希值和/或补丁信息;所述哈希值是终端设备针对待上报补丁文件计算得来的;基于所述哈希值和/或补丁信息确定所述补丁库中是否存储有所述待上报补丁文件,若未存储,则向所述终端设备发送上报指令,以指示所述终端设备上报包含所述待上报补丁文件的补丁更新内容。
[0082]
当利用哈希值方式确定补丁库中是否存储有待上报补丁文件时,具体地,补丁管理服务器中可以预先针对存储的每一个补丁文件计算出哈希值,形成哈希值列表,每当接收到上报的哈希值时,与哈希值列表进行比对,若哈希值列表中包括上报的哈希值,则表明补丁库中已经存储有该待上报补丁文件,否则表明补丁库中未存储该待上报补丁文件。
[0083]
当利用补丁信息方式确定补丁库中是否存储有待上报补丁文件时,具体地,补丁管理服务器可以将接收到的补丁信息与补丁库中存储的补丁信息进行比对,若补丁库中存在该补丁信息,则表明补丁库中已经存储有该待上报补丁文件,否则表明以补丁库中未存储该待上报补丁文件。
[0084]
在本发明一个实施例中,由于一个企业内网中的终端可能使用的windows系统版本不同,为了保证补丁库中补丁文件的全面性,以能够为不同windows系统版本的终端提供所需的补丁文件,与补丁管理服务器建立连接的多个终端设备可覆盖多个不同的windows系统版本;所述补丁库中包括不同windows系统版本对应的补丁文件和补丁信息。
[0085]
比如,所需覆盖的windows系统版本为windows xp、windows vista、windows 7、windows 8/windows 8.1、windows 10和windows 11,那么针对上述每一个windows系统版本,与补丁管理服务器建立连接的多个终端设备中至少存在一台终端设备的windows系统为对应覆盖的windows系统版本。
[0086]
步骤302,对接收到的补丁文件进行安全检查,当检查通过后,根据接收到的补丁更新内容对预设补丁库进行更新;所述补丁库中包括与windows系统版本对应的补丁文件和补丁信息。
[0087]
由于补丁管理服务器需要为不同企业的内网服务器提供所需的补丁文件,需要保证所提供补丁文件的安全性。因此,当接收到补丁更新内容之后,可以对补丁文件进行安全检查,以确定是否安全和合法。
[0088]
一个实现方式中,可以对接外部对威胁情报中心和各种杀毒引擎,以实现对补丁文件的安全检查。
[0089]
步骤304,响应于接收到内网服务器发送的补丁文件下载请求,根据所述补丁库和
所述下载请求将请求下载的目标补丁文件发送至所述内网服务器,以使所述内网服务器利用所述目标补丁文件为部署在内网的终端提供windows系统的补丁更新。
[0090]
内网服务器是企业内部部署的,用于对部署在内网的终端提供windows系统的补丁更新。补丁管理服务器为内网服务器提供服务,供其下载所需的补丁文件。
[0091]
为了提高用户体验以及保证内网终端补丁更新的及时性,本发明一个实施例中,还可以包括:建立补丁白名单列表,每当接收到终端设备上报的补丁更新内容后对所述补丁白名单列表进行更新;所述补丁白名单列表包括不同windows系统版本分别与补丁信息的对应关系。其中,补丁白名单列表中针对同一个windows系统版本可以只包括最新的补丁信息,也可以包括最新的补丁信息和历史补丁信息,以供内网服务器进行选择。
[0092]
在所述响应于接收到内网服务器发送的补丁文件下载请求之前,还包括:响应于接收到内网服务器的查询请求,并将所述补丁白名单列表发送给所述内网服务器,以使所述内网服务器根据所述补丁白名单列表和部署在内网的终端的补丁安装情况,确定是否存在需要更新的补丁文件,以请求下载该需要更新的补丁文件;所述补丁安装情况包括:部署在内网的终端所对应的windows系统版本和当前安装补丁文件的补丁信息。
[0093]
具体地,内网服务器可以预先获知内网的终端的补丁安装情况,并根据接收到的补丁白名单列表确定是否存在需要更新的补丁文件。其中,该需要更新的补丁文件可以是最新的补丁信息对应的补丁文件,也可以是历史补丁信息对应的补丁文件。
[0094]
当内网服务器确定存在需要更新的补丁文件时,向补丁管理服务器发送补丁文件下载请求,该补丁文件下载请求中携带windows系统版本和补丁信息。
[0095]
本发明实施例中,内网服务器可以定期向补丁管理服务器发送查询请求,以确定是否存在需要更新的补丁文件。
[0096]
进一步地,补丁管理服务器还可以对补丁文件按照紧急程度进行分类,当紧急程度满足设定情况时,可以直接将对应的补丁文件发送给内网服务器,以使内网服务器及时对内网的终端提供windows系统的补丁更新,保障内网的终端的安全。
[0097]
另外,内网服务器在获取到需要更新的补丁文件之后,可以控制内网的终端在适当的时间段内进行补丁更新。
[0098]
本发明实施例中,补丁管理服务器通过终端设备上报的补丁更新内容对补丁库进行更新,以使补丁库能够及时为内网服务器提供所需的补丁文件,进而由内网服务器能够为部署在内网的终端提供windows系统的补丁更新,保障内网的终端的安全性。
[0099]
如图4所示,本发明实施例提供了一种基于钩子函数的补丁更新系统,包括:补丁管理服务器401和多个终端设备402;其中,每一个所述终端设备402中部署有至少一个钩子函数;
[0100]
每一个所述终端设备402,用于基于所述至少一个钩子函数捕获所述终端设备的系统行为;分析捕获的所述系统行为是否用于所述终端设备中windows系统的补丁更新;若是,则获取用于所述终端设备中windows系统的补丁更新的补丁文件和补丁信息;以及向所述补丁管理服务器上报补丁更新内容;所述补丁更新内容至少包括所述补丁文件、补丁信息和所述终端设备的windows系统版本;
[0101]
所述补丁管理服务器401,用于接收多个终端设备分别上报的补丁更新内容;对接收到的补丁文件进行安全检查,当检查通过后,根据接收到的补丁更新内容对预设补丁库
进行更新;所述补丁库中包括与windows系统版本对应的补丁文件和补丁信息;响应于接收到内网服务器发送的补丁文件下载请求,根据所述补丁库和所述下载请求将请求下载的目标补丁文件发送至所述内网服务器,以使所述内网服务器利用所述目标补丁文件为部署在内网的终端提供windows系统的补丁更新。
[0102]
在本发明一个实施例中,所述钩子函数用于捕获所述终端设备产生向磁盘中下载文件的系统行为;
[0103]
所述终端设备在分析捕获的所述系统行为是否用于所述终端设备中windows系统的补丁更新时,具体用于:基于所述系统行为中包括的文件下载路径,从所述文件下载路径中获取该下载的文件;并基于预设补丁更新特征确定该下载的文件是否为补丁文件,若是,则确定所述系统行为用于所述终端设备中windows系统的补丁更新。
[0104]
在本发明一个实施例中,所述终端设备在获取用于所述终端设备中windows系统的补丁更新的补丁文件时,具体用于将该下载的文件确定为所述补丁文件。
[0105]
在本发明一个实施例中,所述终端设备还用于确定是否需要将所述补丁文件上报给所述补丁管理服务器,若需要,则执行所述向所述补丁管理服务器上报补丁更新内容。
[0106]
在本发明一个实施例中,所述终端设备在确定是否需要将所述补丁文件上报给所述补丁管理服务器时,具体用于:计算所述补丁文件的哈希值,将所述哈希值和/或补丁信息发送至所述补丁管理服务器;当接收到所述补丁管理服务器发送的上报指令时,则确定需要将所述补丁文件上传至所述补丁管理服务器;
[0107]
补丁管理服务器,还用于接收所述终端设备发送的哈希值和/或补丁信息,基于所述哈希值和/或补丁信息确定所述补丁库中是否存储有所述待上报补丁文件,若未存储,则向所述终端设备发送上报指令。
[0108]
在本发明一个实施例中,所述多个终端设备覆盖多个不同的windows系统版本;所述补丁库中包括不同windows系统版本对应的补丁文件和补丁信息。
[0109]
在本发明一个实施例中,补丁管理服务器还用于建立补丁白名单列表,每当接收到终端设备上报的补丁更新内容后对所述补丁白名单列表进行更新;所述补丁白名单列表包括不同windows系统版本分别与补丁信息的对应关系;并响应于接收到内网服务器的查询请求,将所述补丁白名单列表发送给所述内网服务器,以使所述内网服务器根据所述补丁白名单列表和部署在内网的终端的补丁安装情况,确定是否存在需要更新的补丁文件,以请求下载该需要更新的补丁文件;所述补丁安装情况包括:部署在内网的终端所对应的windows系统版本和当前安装补丁文件的补丁信息。
[0110]
本发明实施例还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现本发明任一实施例中的一种基于钩子函数的补丁更新方法。
[0111]
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序在被处理器执行时,使所述处理器执行本发明任一实施例中的一种基于钩子函数的补丁更新方法。
[0112]
具体地,可以提供配有存储介质的系统或者装置,在该存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机(或cpu或mpu)读出并执行存储在存储介质中的程序代码。
[0113]
在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的一部分。
[0114]
用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如cd-rom、cd-r、cd-rw、dvd-rom、dvd-ram、dvd-rw、dvd rw)、磁带、非易失性存储卡和rom。可选择地,可以由通信网络从服务器计算机上下载程序代码。
[0115]
此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且可以通过基于程序代码的指令使计算机上操作的操作系统等来完成部分或者全部的实际操作,从而实现上述实施例中任意一项实施例的功能。
[0116]
此外,可以理解的是,将由存储介质读出的程序代码写到插入计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展模块中设置的存储器中,随后基于程序代码的指令使安装在扩展板或者扩展模块上的cpu等来执行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。
[0117]
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
…”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
[0118]
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质中。
[0119]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献