《检测WINDOWS系统已知漏洞的方法和系统.pdf》由会员分享,可在线阅读,更多相关《检测WINDOWS系统已知漏洞的方法和系统.pdf(10页完整版)》请在专利查询网上搜索。
1、10申请公布号CN101986283A43申请公布日20110316CN101986283ACN101986283A21申请号201010545669022申请日20101116G06F11/36200601G06F21/0020060171申请人北京安天电子设备有限公司地址100085北京市海淀区农大南路1号硅谷亮城2B52172发明人徐翰隆范立志54发明名称检测WINDOWS系统已知漏洞的方法和系统57摘要本发明公开了一种检测WINDOWS系统已知漏洞的方法,包括跟踪微软发布的公告,收集最新的WINDOWS系统已知漏洞信息;读取WINDOWS系统注册表信息并结合最新的WINDOWS系统已知。
2、漏洞信息确定当前WINDOWS系统存在的漏洞列表;读取WINDOWS系统注册表补丁信息确定当前WINDOWS系统已经修复的漏洞列表;从当前WINDOWS系统存在的漏洞列表中去掉当前WINDOWS系统已经修复的漏洞列表包含的已经修复的漏洞,得到当前WINDOWS系统已知漏洞列表。本发明还公开了一种检测WINDOWS系统已知漏洞的系统。在面对最终用户的产品中使用本发明读取注册表信息即可确定系统中存在的已知漏洞,并且能够在软件产品打开的同时不需要用户等待就检测出WINDOWS系统已知的漏洞,加强用户体验。51INTCL19中华人民共和国国家知识产权局12发明专利申请权利要求书2页说明书5页附图2页C。
3、N101986284A1/2页21一种检测WINDOWS系统已知漏洞的方法,其特征在于,包括步骤A、跟踪微软发布的公告,收集最新的WINDOWS系统已知漏洞信息,其中至少包括漏洞KB编号和受影响的系统组件名称;步骤B、读取当前WINDOWS系统注册表信息,确定当前WINDOWS系统中已经安装的组件,根据当前WINDOWS系统中已经安装的组件名称查找是否有与步骤A中收集的相同的受影响的系统组件名称,如果有,则将所述受影响的系统组件名称对应的漏洞KB编号加入到当前WINDOWS系统存在的漏洞列表中;步骤C、读取当前WINDOWS系统注册表信息中已经安装的补丁信息,确定当前WINDOWS系统已经修复。
4、的漏洞列表;步骤D、从当前WINDOWS系统存在的漏洞列表中去掉当前WINDOWS系统已经修复的漏洞列表包含的已经修复的漏洞,得到当前WINDOWS系统已知漏洞列表。2如权利要求1所述的检测WINDOWS系统已知漏洞的方法,其特征在于,步骤A中,持续收集最新的WINDOWS系统已知漏洞信息,得到微软发布的WINDOWS系统已知漏洞完整列表。3如权利要求1或2所述的检测WINDOWS系统已知漏洞的方法,其特征在于,最新的WINDOWS系统已知漏洞信息还包括漏洞的名称、漏洞的危险级别、漏洞影响的WINDOWS操作系统版本。4如权利要求1所述的检测WINDOWS系统已知漏洞的方法,其特征在于,步骤B。
5、中,逐个读取注册表中卸载项HKEY_LOCAL_MACHINESOFTWAREMICROSOFTWINDOWSCURRENTVERSIONUNINSTALL的键值,根据其中的DISPLAYNAME属性来确定当前WINDOWS系统中已经安装的组件名称。5如权利要求1所述的检测WINDOWS系统已知漏洞的方法,其特征在于,步骤C中,读取注册表信息,遍历注册表中补丁信息的注册表项HKEY_LOCAL_MACHINESOFTWAREMICROSOFTWINDOWSNTCURRENTVERSIONHOTFIX,将此注册表项下面每一个子键包含的漏洞KB编号,加入到已经修复的WINDOWS系统漏洞列表中。6。
6、如权利要求5所述的检测WINDOWS系统已知漏洞的方法,其特征在于,遍历注册表项HKEY_LOCAL_MACHINESOFTWAREMICROSOFTWINDOWSCURRENTVERSIONUNINSTALL,如果UNINSTALL中子键的DISPLAYNAME属性为KB编号加上6位数字组成的漏洞补丁编号格式,则将该KB编号加入到已经修复的WINDOWS系统漏洞列表中。7一种检测WINDOWS系统已知漏洞的系统,其特征在于,包括信息获取模块,用于跟踪微软发布的公告,收集最新的WINDOWS系统已知漏洞信息,其中至少包括漏洞KB编号和受影响的系统组件名称;系统组件确定模块,用于读取当前WIND。
7、OWS系统注册表信息,确定当前WINDOWS系统中已经安装的组件;查找模块,用于根据当前WINDOWS系统中已经安装的组件名称,查找是否有与信息获取模块收集的相同的受影响的系统组件名称;加入模块,用于在查找模块查找到有与信息获取模块收集的相同的受影响的系统组件名称时,将所述受影响的系统组件名称对应的漏洞KB编号加入到当前WINDOWS系统存在的漏洞列表中;权利要求书CN101986283ACN101986284A2/2页3漏洞列表确定模块,用于读取当前WINDOWS系统注册表信息中已经安装的补丁信息,确定当前WINDOWS系统已经修复的漏洞列表;漏洞列表处理模块,用于从当前WINDOWS系统存。
8、在的漏洞列表中去掉当前WINDOWS系统已经修复的漏洞列表包含的已经修复的漏洞,得到当前WINDOWS系统已知漏洞列表。8如权利要求7所述的检测WINDOWS系统已知漏洞的系统,其特征在于,所述信息获取模块具体用于持续收集最新的WINDOWS系统已知漏洞信息,得到微软发布的WINDOWS系统已知漏洞完整列表。9如权利要求7或8所述的检测WINDOWS系统已知漏洞的系统,其特征在于,最新的WINDOWS系统已知漏洞信息还包括漏洞的名称、漏洞的危险级别、漏洞影响的WINDOWS操作系统版本。10如权利要求7所述的检测WINDOWS系统已知漏洞的系统,其特征在于,所述系统组件确定模块的功能具体包括逐。
9、个读取注册表中卸载项HKEY_LOCAL_MACHINESOFTWAREMICROSOFTWINDOWSCURRENTVERSIONUNINSTALL的键值,根据其中的DISPLAYNAME属性来确定当前WINDOWS系统中已经安装的组件名称。11如权利要求7所述的检测WINDOWS系统已知漏洞的系统,其特征在于,所述漏洞列表确定模块的功能具体包括读取注册表信息,遍历注册表中补丁信息的注册表项HKEY_LOCAL_MACHINESOFTWAREMICROSOFTWINDOWSNTCURRENTVERSIONHOTFIX,将此注册表项下面的每一个子键包含的系统漏洞KB编号,加入到已经修复的WIN。
10、DOWS系统漏洞列表中。12如权利要求7所述的快速检测WINDOWS系统已知漏洞的系统,其特征在于,所述漏洞列表确定模块的功能具体还包括遍历注册表项HKEY_LOCAL_MACHINESOFTWAREMICROSOFTWINDOWSCURRENTVERSIONUNINSTALL,如果UNINSTALL中子键的DISPLAYNAME属性为KB加上6位数字组成的补丁编号格式,则将该KB编号加入到已经修复的WINDOWS系统漏洞列表中。权利要求书CN101986283ACN101986284A1/5页4检测WINDOWS系统已知漏洞的方法和系统技术领域0001本发明涉及计算机操作系统安全领域,特别涉。
11、及一种检测WINDOWS系统已知漏洞的方法和系统。背景技术0002目前,绝大多数初级用户使用的操作系统都是WINDOWS系统,而WINDOWS系统在逻辑设计上的缺陷或者编写时产生的错误导致的漏洞可以被不法者或者黑客利用,通过植入木马、病毒的方式窃取用户电脑上的重要资料和信息。因此,WINDOWS系统漏洞的存在,给广大用户和整个互联网带来了巨大的危害。幸运的是,随着WINDOWS系统的漏洞不断暴露出来,微软公司也会不断发布补丁进行修补。所以,如果我们及时跟踪微软发布的WINDOWS系统已知漏洞和相应的补丁,并进行修补,仍然可以大大提高WINDOWS系统的安全性。0003为了帮助初级用户解决定期跟。
12、踪微软公告、逐个下载和安装补丁的烦恼,目前市场出现了很多自动检测WINDOWS系统已知漏洞并自动下载安装系统补丁的产品。这些产品都能发现WINDOWS系统中已知的漏洞,达到比较理想的修复效果。但是,目前的众多WINDOWS系统修复产品普遍存在一个问题,就是检测WINDOWS系统漏洞的速度非常缓慢。由于用户需要等待检测WINDOWS系统漏洞结束之后才能选择修复哪些漏洞需要修复,因此检测速度的快慢非常影响用户对产品的感受。发明内容0004针对以上不足,本发明要解决的技术问题是提供一种检测WINDOWS系统已知漏洞的方法和系统,该方法和系统能够在软件产品打开的同时不需要用户等待就快速检测出WINDO。
13、WS系统已知的漏洞,加强用户体验。0005为了解决上述技术问题,本发明提供一种检测WINDOWS系统已知漏洞的方法,包括步骤A、跟踪微软发布的公告,收集最新的WINDOWS系统已知漏洞信息,其中至少包括漏洞KB编号和受影响的系统组件名称;步骤B、读取当前WINDOWS系统注册表信息,确定当前WINDOWS系统中已经安装的组件,根据当前WINDOWS系统中已经安装的组件名称查找是否有与步骤A中收集的相同的受影响的系统组件名称,如果有,则将所述受影响的系统组件名称对应的漏洞KB编号加入到当前WINDOWS系统存在的漏洞列表中;步骤C、读取当前WINDOWS系统注册表信息中已经安装的补丁信息,确定当。
14、前WINDOWS系统已经修复的漏洞列表;步骤D、从当前WINDOWS系统存在的漏洞列表中去掉当前WINDOWS系统已经修复的漏洞列表包含的已经修复的漏洞,得到当前WINDOWS系统已知漏洞列表。0006进一步的,步骤A中,持续收集最新的WINDOWS系统已知漏洞信息,得到微软发布的WINDOWS系统已知漏洞完整列表。说明书CN101986283ACN101986284A2/5页50007进一步的,收集最新的WINDOWS系统已知漏洞信息还包括漏洞的名称、漏洞的危险级别、漏洞影响的WINDOWS操作系统版本。0008进一步的,步骤B中,逐个读取注册表中卸载项HKEY_LOCAL_MACHINES。
15、OFTWAREMICROSOFTWINDOWSCURRENTVERSIONUNINSTALL的键值,根据其中的DISPLAYNAME属性来确定当前WINDOWS系统中已经安装的组件名称。0009进一步的,步骤C中,读取注册表信息,遍历注册表中补丁信息的注册表项HKEY_LOCAL_MACHINESOFTWAREMICROSOFTWINDOWSNTCURRENTVERSIONHOTFIX,将此注册表项下面每一个子键包含的系统漏洞KB编号,加入到已经修复的WINDOWS系统漏洞列表中。0010进一步的,步骤C中,遍历注册表项HKEY_LOCAL_MACHINESOFTWAREMICROSOFTWI。
16、NDOWSCURRENTVERSIONUNINSTALL,如果UNINSTALL中子键的DISPLAYNAME属性为KB加上6位数字组成的漏洞补丁编号格式,则将该KB编号加入到已经修复的WINDOWS系统漏洞列表中。0011本发明还提供了一种检测WINDOWS系统已知漏洞的系统,包括信息获取模块,用于跟踪微软发布的公告,收集最新的WINDOWS系统已知漏洞信息,其中至少包括漏洞KB编号和受影响的系统组件名称;系统组件确定模块,用于读取当前WINDOWS系统注册表信息,确定当前WINDOWS系统中已经安装的组件;查找模块,用于根据当前WINDOWS系统中已经安装的组件名称,查找是否有与信息获取模。
17、块收集的相同的受影响的系统组件名称;加入模块,用于在查找模块查找到有与信息获取模块收集的相同的受影响的系统组件名称时,将所述受影响的系统组件名称对应的漏洞KB编号加入到当前WINDOWS系统存在的漏洞列表中;漏洞列表确定模块,用于读取当前WINDOWS系统注册表信息中已经安装的补丁信息,确定当前WINDOWS系统已经修复的漏洞列表;漏洞列表处理模块,用于从当前WINDOWS系统存在的漏洞列表中去掉当前WINDOWS系统已经修复的漏洞列表包含的已经修复的漏洞,得到当前WINDOWS系统已知漏洞列表。0012进一步的,所述信息获取模块具体用于持续收集最新的WINDOWS系统已知漏洞信息,得到微软发。
18、布的WINDOWS系统已知漏洞完整列表。0013进一步的,最新的WINDOWS系统已知漏洞信息还包括漏洞的名称、漏洞的危险级别、漏洞影响的WINDOWS操作系统版本。0014进一步的,所述系统组件确定模块的功能具体包括逐个读取注册表中卸载项HKEY_LOCAL_MACHINESOFTWAREMICROSOFTWINDOWSCURRENTVERSIONUNINSTALL的键值,根据其中的DISPLAYNAME属性来确定当前WINDOWS系统中已经安装的组件名称。0015进一步的,所述漏洞列表确定模块的功能具体包括读取注册表信息,遍历注册表中补丁信息的注册表项HKEY_LOCAL_MACHINES。
19、OFTWAREMICROSOFTWINDOWSNTCURRENTVERSIONHOTFIX,将此注册表项下面的每一个子键包含的系统漏洞KB编号,加入到已经修复的WINDOWS系统漏洞列表中。0016进一步的,所述漏洞列表确定模块的功能具体还包括遍历注册表项HKEY_LOCAL_MACHINESOFTWAREMICROSOFTWINDOWSCURRENTVERSIONUNINSTALL,如果说明书CN101986283ACN101986284A3/5页6UNINSTALL中子键的DISPLAYNAME属性为KB加上6位数字组成的补丁编号格式,则将该KB编号加入到已经修复的WINDOWS系统漏洞列。
20、表中。0017本发明的有益效果是在面对最终用户的产品中使用本发明读取注册表信息即可确定WINDOWS系统中存在的已知漏洞。读取注册表可以快速的得到数据,用户检测WINDOWS系统漏洞所需时间在1秒以内。对于经常主动执行WINDOWS系统修复的用户来说节约了大量的时间,并且提高了用户的体验,使用户乐于经常执行WINDOWS系统漏洞检测,从而提高用户计算机的安全性。附图说明0018为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下。
21、,还可以根据这些附图获得其他的附图。0019图1为本发明的一种检测WINDOWS系统已知漏洞的方法流程图;图2为本发明的一种检测WINDOWS系统已知漏洞的系统示意图。具体实施方式0020为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明中技术方案作进一步详细的说明。0021本发明提供一种检测WINDOWS系统已知漏洞的方法和系统,该方法和系统能够在软件产品打开的同时不需要用户等待就快速检测出WINDOWS系统已知的漏洞,加强用户体验。0022首先介绍本发明提供的检测WINDOWS系统已知漏洞的方法,具体实施步骤如图。
22、1所示,包括S01、跟踪微软发布的公告,收集最新的WINDOWS系统已知漏洞信息,其中至少包括漏洞KB编号和受影响的系统组件名称;持续收集最新的WINDOWS系统已知漏洞信息,得到微软发布的WINDOWS系统已知漏洞完整列表;最新的WINDOWS系统已知漏洞信息还包括漏洞的名称、漏洞的危险级别、漏洞影响的WINDOWS操作系统版本,其中以漏洞的KB编号作为漏洞的标识。0023S02、读取当前WINDOWS系统注册表信息,确定当前WINDOWS系统中已经安装的组件,根据当前WINDOWS系统中已经安装的组件名称查找是否有与步骤A中收集的相同的受影响的系统组件名称,如果有,则将所述受影响的系统组件。
23、名称对应的漏洞KB编号加入到当前WINDOWS系统存在的漏洞列表A中;确定当前WINDOWS系统中已经安装的组件具体方法包括逐个读取注册表中卸载项HKEY_LOCAL_MACHINESOFTWAREMICROSOFTWINDOWSCURRENTVERSIONUNINSTALL的键值,根据其中的DISPLAYNAME属性来确定当前WINDOWS系统中已经安装的组件名称。0024S03、读取当前WINDOWS系统注册表信息中已经安装的补丁信息,确定当前说明书CN101986283ACN101986284A4/5页7WINDOWS系统已经修复的WINDOWS系统漏洞列表B;确定当前WINDOWS系统。
24、已经修复的漏洞列表具体方法包括读取注册表信息,遍历注册表中补丁信息的注册表项HKEY_LOCAL_MACHINESOFTWAREMICROSOFTWINDOWSNTCURRENTVERSIONHOTFIX,将此注册表项下面每一个子键包含的漏洞KB编号,加入到已经修复的WINDOWS系统漏洞列表B中;个别组件的补丁安装后不会在HKEY_LOCAL_MACHINESOFTWAREMICROSOFTWINDOWSNTCURRENTVERSIONHOTFIX注册表项下面产生子键,对于这样的补丁需要结合注册表项HKEY_LOCAL_MACHINESOFTWAREMICROSOFTWINDOWSCURRE。
25、NTVERSIONUNINSTALL,如果UNINSTALL中子键的DISPLAYNAME属性是否有KB加上6位数字组成的漏洞补丁编号格式,则认为这个补丁编号对应的WINDOWS系统漏洞已经修复,加入到已经修复的WINDOWS系统漏洞列表B中。0025S04、从漏洞列表A中去掉漏洞列表B包含的WINDOWS系统漏洞,得到当前WINDOWS系统已知漏洞列表。0026本发明还提供了一种检测WINDOWS系统已知漏洞的系统,如图2所示,这种系统包括信息获取模块101,用于跟踪微软发布的公告,收集最新的WINDOWS系统已知漏洞信息,其中至少包括漏洞KB编号和受影响的系统组件名称;系统组件确定模块10。
26、2,用于读取当前WINDOWS系统注册表信息,确定当前WINDOWS系统中已经安装的组件;查找模块103,用于根据当前WINDOWS系统中已经安装的组件名称,查找是否有与信息获取模块收集的相同的受影响的系统组件名称;加入模块104,用于在查找模块查找到有与信息获取模块收集的相同的受影响的系统组件名称时,将所述受影响的系统组件名称对应的漏洞KB编号加入到当前WINDOWS系统存在的漏洞列表中;漏洞列表确定模块105,用于读取当前WINDOWS系统注册表信息中已经安装的补丁信息,确定当前WINDOWS系统已经修复的漏洞列表;漏洞列表处理模块106,用于从当前系统存在的漏洞列表中去掉当前WINDOW。
27、S系统已经修复的漏洞列表包含的已经修复的漏洞,得到当前WINDOWS系统已知漏洞列表。0027本发明提供的检测WINDOWS系统已知漏洞的系统中,信息获取模块101具体用于持续收集最新的WINDOWS系统已知漏洞信息,得到微软发布的WINDOWS系统已知漏洞完整列表。0028其中收集的最新WINDOWS系统已知漏洞信息包括漏洞的KB编号、漏洞的名称、漏洞的危险级别、漏洞影响的WINDOWS操作系统版本、受影响的系统组件名称,并以漏洞的KB编号作为漏洞的标识。0029本发明提供的检测WINDOWS系统已知漏洞的系统中,系统组件确定模块102的功能具体包括逐个读取注册表中卸载项HKEY_LOCAL。
28、_MACHINESOFTWAREMICROSOFTWINDOWSCURRENTVERSIONUNINSTALL的键值,根据其中的DISPLAYNAME属性来确定当前WINDOWS系统中已经安装的组件名称。0030本发明提供的检测WINDOWS系统已知漏洞的系统中,漏洞列表确定模块105的功能具体包括读取注册表信息,遍历注册表中补丁信息的注册表项HKEY_LOCAL_MACHINE说明书CN101986283ACN101986284A5/5页8SOFTWAREMICROSOFTWINDOWSNTCURRENTVERSIONHOTFIX,将此注册表项下面的每一个子键包含的系统漏洞KB编号,加入到已。
29、经修复的WINDOWS系统漏洞列表中;其中,遍历注册表中补丁信息的注册表项HKEY_LOCAL_MACHINESOFTWAREMICROSOFTWINDOWSNTCURRENTVERSIONHOTFIX,个别组件的补丁安装后不会在HKEY_LOCAL_MACHINESOFTWAREMICROSOFTWINDOWSNTCURRENTVERSIONHOTFIX注册表项下面产生子键,对于这样的补丁需要结合注册表项HKEY_LOCAL_MACHINESOFTWAREMICROSOFTWINDOWSCURRENTVERSIONUNINSTALL,如果UNINSTALL中子键的DISPLAYNAME属性为KB加上6位数字组成的补丁编号格式,则将该KB编号加入到已经修复的WINDOWS系统漏洞列表中。0031虽然通过实施例描绘了本发明,本领域普通技术人员知道,本发明有许多变形和变化而不脱离本发明的精神,希望所附的权利要求包括这些变形和变化而不脱离本发明的精神。说明书CN101986283ACN101986284A1/2页9图1说明书附图CN101986283ACN101986284A2/2页10图2说明书附图CN101986283A。