获取配置检查清单的方法、装置、电子设备及存储介质与流程

文档序号:20575067发布日期:2020-04-29 01:04阅读:247来源:国知局
获取配置检查清单的方法、装置、电子设备及存储介质与流程

本发明涉及网络安全技术领域,尤其涉及一种获取配置检查清单的方法、装置、电子设备及存储介质。



背景技术:

目前市场上对主机进行配置检查的方式往往只能通过配置管理员人工根据电脑的操作系统及所安装的软件,逐一制定配置检查清单。在电脑预装软件数量较多或检查配置电脑较多的时候,会存在以下问题:时间成本和人力成本高:由于数量偏多,配置管理员只能逐一根据电脑及电脑上的软件去完善配置清单,针对单个主机往往有上百种检测内容,且不同系统不同版本检测方法不尽相同,这样会花费大量的人力和时间。人工制定安全性低:在制作配置检查清单时,人工制定可能会漏掉部分软件或制定错误的检查项,这样就会导致使用错误的配置检查清单进行检查,所检查出来的结果就不一定正确,检查后的资产也就不能保证安全性。人工制定的清单不一定规范:人工制定清单存在许多不确定因素,制作的清单由制定者的水平决定,不能保证该配置检查清单的规范性。因此,目前亟需一种能够自动获取配置检查清单的方法,以解决上述问题。



技术实现要素:

本发明实施例提供了一种获取配置检查清单的方法、装置、电子设备及存储介质,用以解决现有配置方法耗费时间,人力成本极高,人工定制配置清单的安全性低且不一定规范问题。

基于上述问题,本发明实施例提供的一种获取配置检查清单的方法,包括:

获取主机的操作系统信息和软件信息;建立cpe数据库,将获取的主机的操作系统信息和软件信息在cpe数据库中进行模糊匹配;将模糊匹配得到的cpe数据中的名称及版本号作为检索条件;利用ncp进行检索,获得检查清单,将所述检查清单发送给配置检查人员。

进一步地,获取主机的操作系统信息和软件信息,具体为:获取主机操作系统的名称和版本号;若操作系统是windows系列系统,则通过扫描主机注册表获取主机安装的软件信息和操作系统厂商信息;若操作系统是linux系列系统,则通过命令获取主机安装的软件信息和操作系统厂商信息。

进一步地,建立cpe数据库,具体为:定时下载最新版cpe文件;若第一次下载,则读取并解析所述cpe文件的xml文件,并将xml文件的文件名及内容项录入数据库;若不是第一次下载,则下载最新版cpe文件,并与上次下载的cpe文件的xml文件名进行对比,若不一致,则读取并解析本次下载cpe文件的xml文件,根据cpe_uri字段进行内容项去重,保留新增的xml文件内容项,并将新增的xml文件内容项录入数据库;若一致,则本次下载文件不录入数据库;其中xml文件内容项包括:厂商、名称、版本号、类型、系统版本、软件版本、更新信息、软件平台、硬件平台、语言、其它、cpe_uri。

进一步地,将获取的主机操作系统信息和软件信息在cpe数据库中进行模糊匹配之前还包括:建立中英文对照库:获取常见中文名厂商、中文名软件名称以及操作系统版本名,调用翻译api接口,翻译为英文;判断获取的主机操作系统信息和软件信息是否存在中文名,若是,则利用中英文对照库将中文名替换为对应的英文名。

进一步地,利用ncp进行检索,获得检查清单,将所述检查清单发送给配置检查人员,具体为:利用ncp进行检索,分次获取检查列表及详细信息,并根据详细信息进行脚本数据下载,获得检查列表数据集;对检查列表数据集去重,并记录重复次数;利用正则匹配,查看检查列表中是否存在同一名称对应不同版本的情况,若存在,去除低版本的检查清单,并进行标记;将检查列表各个字段、重复次数及低版本去除情况写入excel表格中,获得检查清单;将所述检查清单及对应的脚本数据发送给配置检查人员。

本发明实施例提供的一种获取配置检查清单的装置,包括:信息获取模块:用于获取主机的操作系统信息和软件信息;模糊匹配模块:用于建立cpe数据库,将获取的主机的操作系统信息和软件信息在cpe数据库中进行模糊匹配;检索条件获取模块:用于将模糊匹配得到的cpe数据中的名称及版本号作为检索条件;检查清单获取模块:用于利用ncp进行检索,获得检查清单,将所述检查清单发送给配置检查人员。

进一步地,信息获取模块具体用于:获取主机操作系统的名称和版本号;若操作系统是windows系列系统,则通过扫描主机注册表获取主机安装的软件信息和操作系统厂商信息;若操作系统是linux系列系统,则通过命令获取主机安装的软件信息和操作系统厂商信息。

进一步地,模糊匹配模块还包括cpe数据库建立模块,具体用于:定时下载最新版cpe文件;若第一次下载,则读取并解析所述cpe文件的xml文件,并将xml文件的文件名及内容项录入数据库;若不是第一次下载,则下载最新版cpe文件,并与上次下载的cpe文件的xml文件名进行对比,若不一致,则读取并解析本次下载的cpe文件的xml文件,根据cpe_uri字段进行内容项去重,保留新增的xml文件内容项,并将新增的xml文件内容项录入数据库;若一致,则本次下载文件不录入数据库;其中xml文件内容项包括:厂商、名称、版本号、类型、系统版本、软件版本、更新信息、软件平台、硬件平台、语言、其它、cpe_uri。

进一步地,还包括中英文对照库建立模块:用于获取常见中文名厂商、中文名软件名称以及操作系统版本名,调用翻译api接口,翻译为英文;替换模块:用于判断获取的主机操作系统信息和软件信息是否存在中文名,若是,则利用中英文对照库将中文名替换为对应的英文名。

进一步地,检查清单获取模块具体用于:利用ncp进行检索,分次获取检查列表及详细信息,并根据详细信息进行脚本数据下载,获得检查列表数据集;对检查列表数据集去重,并记录重复次数;利用正则匹配,查看检查列表中是否存在同一名称对应不同版本的情况,若存在,去除低版本的检查清单,并进行标记;将检查列表各个字段、重复次数及低版本去除情况写入excel表格中,获得检查清单;将所述检查清单及对应的脚本数据发送给配置检查人员。

本发明实施例同时公开一种获取配置检查清单的电子设备,所述电子设备包括:壳体、处理器、存储器、电路板和电源电路,其中,电路板安置在壳体围成的空间内部,处理器和存储器设置在电路板上;电源电路,用于为上述电子设备的各个电路或器件供电;存储器用于存储可执行程序代码;处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行前述任一项所述的获取配置检查清单的方法。

本发明实施例提供了计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现前述任一项所述的获取配置检查清单的方法。

与现有技术相比,本发明实施例提供的一种获取配置检查清单的方法、装置、电子设备及存储介质,至少实现了如下的有益效果:获取主机的操作系统信息和软件信息;建立cpe数据库,将获取的主机的操作系统信息和软件信息在cpe数据库中进行模糊匹配;将模糊匹配得到的cpe数据中的名称及版本号作为检索条件;利用ncp进行检索,获得检查清单,将所述检查清单发送给配置检查人员。本发明实施例可以实现对资产自动生成配置检查清单,减少了人工操作的需求,降低了人力成本,避免了因人为误操作造成的损失;同时使用ncp得到清单列表数据项,保证了列表清单的规范性,减少了许多不确定因素,保证了检查之后资产的安全性;进一步降低了运维成本,提高了检查效率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。

图1为本发明实施例提供的一种获取配置检查清单的方法的流程图;

图2为本发明实施例提供的又一种获取配置检查清单的方法的流程图;

图3为本发明实施例提供的一种获取配置检查清单的装置的结构图;

图4为本发明实施例提供的电子设备的结构示意图。

具体实施方式

为了更清楚地说明本发明中的实施例,因此对涉及到的技术术语进行解释和说明:

cpe:cpe是(commonplatformenumeration的缩写)以标准化方式为软件应用程序、操作系统及硬件命名的方法。

ncp:ncp是nationalchecklistprogram的缩写,是由nistsp800-70定义的美国政府公开的安全清单(或基准)库,为操作系统和应用程序的安全配置提供详细的指导。

xml:可扩展标记语言,标准通用标记语言的子集,简称xml。是一种用于标记电子文件使其具有结构性的标记语言。在电子计算机中,标记指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种的信息比如文章等。它可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。

下面结合说明书附图,对本发明实施例提供的一种获取配置检查清单的方法、装置、电子设备及存储介质的具体实施方式进行说明。

本发明实施例提供的一种获取配置检查清单的方法,如图1所示,具体包括以下步骤:

s101、获取主机的操作系统信息和软件信息;

通过system.getproperties().getproperty("os.name")和system.getproperties().getproperty("os.version")获取主机操作系统的名称和版本号;若操作系统是windows系列系统,则通过扫描主机注册表获取主机安装的软件信息和操作系统厂商信息;若操作系统是linux系列系统,则通过命令获取主机安装的软件信息和操作系统厂商信息。

s102、建立cpe数据库,将获取的主机的操作系统信息和软件信息在cpe数据库中进行模糊匹配;

建立cpe数据库,具体方法为:定时下载最新版cpe文件;若第一次下载,则读取并解析所述cpe文件的xml文件,并将xml文件的文件名及内容项录入数据库;若不是第一次下载,则下载最新版cpe文件,并与上次下载的cpe文件的xml文件名进行对比,若不一致,则读取并解析本次下载的cpe文件的xml文件,根据cpe_uri字段进行内容项去重,保留新增的xml文件内容项,并将新增的xml文件内容项录入数据库;若一致,则本次下载文件不录入数据库;其中xml文件内容项包括:厂商、名称、版本号、类型、系统版本、软件版本、更新信息、软件平台、硬件平台、语言、其它、cpe_uri,其中名称是指软件名称或者是操作系统名称,类型是指软件、硬件或者操作系统这三种中的哪一类型,系统版本指的是发行版、企业版、专业版等,其他可以为信息备注等内容,cpe_uri是内容项的唯一识别,按照一定的格式组合而成。

s103、将模糊匹配得到的cpe数据中的名称及版本号作为检索条件;

s104、利用ncp进行检索,获得检查清单,将所述检查清单发送给配置检查人员;

具体为:利用ncp进行检索,分次获取检查列表及详细信息,并根据详细信息进行脚本数据下载,获得检查列表数据集;对检查列表数据集去重,并记录重复次数;利用正则匹配,查看检查列表中是否存在同一名称对应不同版本的情况,若存在,去除低版本的检查清单,并进行标记;将检查列表各个字段、重复次数及低版本去除情况写入excel表格中,获得检查清单;将所述检查清单及对应的脚本数据发送给配置检查人员;其中检查列表的各个字段包括:引用、配套资源、检查目标、检查表摘要、已知问题、检查表角色、目标受众、目标操作环境、测试信息、检查清单名、法规遵从性、依赖性/要求、评论/警告/其他、联系方法,担保人,许可协议,变更历史,产品支持、免责声明等。

本发明实施例可以实现对资产自动生成配置检查清单,减少了人工操作的需求,降低了人力成本,避免了因人为误操作造成的损失;同时使用ncp得到清单列表数据项,保证了列表清单的规范性,减少了许多不确定因素,保证了检查之后资产的安全性;进一步降低了运维成本,提高了检查效率。

本发明实施例提供的又一种获取配置检查清单的方法,如图2所示,具体包括以下步骤:

s201、获取主机的操作系统信息和软件信息;

s202、建立中英文对照库;

通过爬虫获取常见中文名厂商、中文名软件名称以及操作系统版本名,调用翻译api接口,翻译为英文。

s203、判断获取的主机操作系统信息和软件信息是否存在中文名,若是,则执行步骤s204,否则执行步骤s205;

s204、利用中英文对照库将中文名替换为对应的英文名;

查看获取的操作系统厂商、操作系统名称、操作系统版本、软件厂商、软件名称、软件版本是否存在中文名,若存在,将中文名替换为对应的英文名。

s205、建立cpe数据库,将获取的主机的操作系统信息和软件信息在cpe数据库中进行模糊匹配;

s206、将模糊匹配得到的cpe数据中的名称及版本号作为检索条件,利用ncp进行检索;

s207、分次获取检查列表及详细信息,并根据详细信息进行脚本数据下载,获得检查列表数据集;

分次通过ncp网站获取检查列表,依次访问检查列表链接,获取检查列表的详情信息;与此同时,根据详细信息中的脚本下载链接,将数据下载到本地,由于下载的脚本数量可能会比较多,所以可以同时开启多个下载任务进行下载,提高下载效率。

s208、对检查列表数据集去重,并记录重复次数;

将获取到的检查列表数据集,通过检查列表名进行去重操作,记录每个列表的重复次数。

s209、利用正则匹配,查看检查列表中是否存在同一名称对应不同版本的情况,若存在,执行步骤s210,否则,执行步骤s211;

s210、去除低版本的检查清单,并进行标记;

s211、将检查列表各个字段、重复次数及低版本去除情况写入excel表格中,获得检查清单;

将获取到的信息,写入excel表中,按照重复次数进行排序,重复次数高的则检查优先级高;excel表第一行为表头,写入检查列表的各个字段,列表重复次数和该列表低版本链接,从第二行开始,按照刚刚排序的顺序,依次将配置检查列表数据写入到对应的单元格中;将低版本链接写入对应行的对应列表低版本链接列,可以方便配置人员进行查看。

s212、将所述检查清单及对应的脚本数据发送给配置检查人员;

将所有下载的检查清单脚本数据,按照不同的清单列表创建文件夹,并将对应的文件夹命名为该清单列表名;将excel信息表和打包后的脚本数据进行压缩,将压缩包发送给配置检查人员。

s213、配置检查人员通过该压缩包的列表信息和文件,对主机进行配置检查。

例如,某主机预装的操作系统是windows10,预装的软件有googlechrome46,microsoftoffice2016,microsoftpowerpoint2016和microsoftexcel2016等一系列软件。根据本实施例提供的方法进行处理之后,即可得到microsoftpowerpoint2016stig(version1,release1),cismicrosoftpowerpoint2016benchmark(1.0.1),windows10stig(version1,release19),cismicrosoftwindows10enterpriserelease1809benchmark(1.6.0),microsoftexcel2016stig(version1,release2),cismicrosoftexcel2016benchmark(1.0.1),cisgooglechromebenchmark(2.0.0)等一系列配置检查清单的excel列表信息和脚本文件。在excel列表信息里面有详细的配置检查指导,根据该列表的信息和所提供的脚本文件,配置检查人员可以更快捷的进行配置检查。

本发明实施例将获取的信息转化为cpe数据再进行检索,可以使检索条件更加准确,同时也可减少查询次数,提高检索效率;实现了对资产自动生成配置检查清单,减少了人工操作的需求,降低了人力成本,减少了繁琐复杂的人工操作导致的错误;同时使用ncp得到清单列表数据项,遵守了nistsp800-70规范,减少了许多不确定因素,保证了检查之后资产的安全性;进一步降低了运维成本,提高了检查效率。

本发明实施例还提供的一种获取配置检查清单的装置,如图3所示,包括:

信息获取模块301:用于获取主机的操作系统信息和软件信息;

模糊匹配模块302:用于建立cpe数据库,将获取的主机的操作系统信息和软件信息在cpe数据库中进行模糊匹配;

检索条件获取模块303:用于将模糊匹配得到的cpe数据中的名称及版本号作为检索条件;

检查清单获取模块304:用于利用ncp进行检索,获得检查清单,将所述检查清单发送给配置检查人员。

进一步地,信息获取模块301具体用于:获取主机操作系统的名称和版本号;若操作系统是windows系列系统,则通过扫描主机注册表获取主机安装的软件信息和操作系统厂商信息;若操作系统是linux系列系统,则通过命令获取主机安装的软件信息和操作系统厂商信息。

进一步地,模糊匹配模块302还包括cpe数据库建立模块3021,具体用于:定时下载最新版cpe文件;若第一次下载,则读取并解析所述cpe文件的xml文件,并将xml文件的文件名及内容项录入数据库;若不是第一次下载,则下载最新版cpe文件,并与上次下载的cpe文件的xml文件名进行对比,若不一致,则读取并解析本次下载的cpe文件的xml文件,根据cpe_uri字段进行内容项去重,保留新增的xml文件内容项,并将新增的xml文件内容项录入数据库;若一致,则本次下载文件不录入数据库;其中xml文件内容项包括:厂商、名称、版本号、类型、系统版本、软件版本、更新信息、软件平台、硬件平台、语言、其它、cpe_uri。

进一步地,还包括中英文对照库建立模块305:用于获取常见中文名厂商、中文名软件名称以及操作系统版本名,调用翻译api接口,翻译为英文;替换模块:用于判断获取的主机操作系统信息和软件信息是否存在中文名,若是,则利用中英文对照库将中文名替换为对应的英文名。

进一步地,检查清单获取模块304具体用于:利用ncp进行检索,分次获取检查列表及详细信息,并根据详细信息进行脚本数据下载,获得检查列表数据集;对检查列表数据集去重,并记录重复次数;利用正则匹配,查看检查列表中是否存在同一名称对应不同版本的情况,若存在,去除低版本的检查清单,并进行标记;将检查列表各个字段、重复次数及低版本去除情况写入excel表格中,获得检查清单;将所述检查清单及对应的脚本数据发送给配置检查人员。

本发明实施例还提供一种电子设备,图4为本发明电子设备一个实施例的结构示意图,可以实现本发明图1-2所示实施例的流程,如图4所示,上述电子设备可以包括:壳体41、处理器42、存储器43、电路板44和电源电路45,其中,电路板44安置在壳体41围成的空间内部,处理器42和存储器43设置在电路板44上;电源电路45,用于为上述电子设备的各个电路或器件供电;存储器43用于存储可执行程序代码;处理器42通过读取存储器43中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行前述任一实施例所述的方法。

处理器42对上述步骤的具体执行过程以及处理器42通过运行可执行程序代码来进一步执行的步骤,可以参见本发明图1-2所示实施例的描述,在此不再赘述。

该电子设备以多种形式存在,包括但不限于:

(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iphone)、多媒体手机、功能性手机,以及低端手机等。

(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:pda、mid和umpc设备等,例如ipad。

(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如ipod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。

(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。

(5)其他具有数据交互功能的电子设备。

本发明的实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现前述任一实施例所述的方法。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。

尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

为了描述的方便,描述以上装置是以功能分为各种单元/模块分别描述。当然,在实施本发明时可以把各单元/模块的功能在同一个或多个软件和/或硬件中实现。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)或随机存储记忆体(randomaccessmemory,ram)等。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1