一种基于漏洞信息库的漏洞修复系统及方法与流程
未命名
08-29
阅读:82
评论:0

1.本发明涉及一种漏洞修复系统及方法,属于网络安全领域,尤其涉及一种基于漏洞信息库的漏洞修复系统及方法。
背景技术:
2.随着信息技术迅猛发展,5g得到了大规模应用,安全漏洞披露数量逐年增加。据cnvd国家信息安全漏洞共享平台统计,2018年披露漏洞共计13964条,2019年披露漏洞共计16096条,2020年披露漏洞共计20256条,2021年披露漏洞共计176337条。信息安全问题已成为世界各国关注的重点。
[0003][0004]
目前,市面上的安全运维漏洞修复工具五花八门。最知名的如,360和火绒等开发的漏洞修复工具,主要针对操作系统进行漏洞修复,而对于部署在系统上的应用软件漏洞则无法修复。此外,现有的系统修复方式通常为:遍历系统中的补丁信息以匹配自身的补丁信息,然后安装系统默认缺少的全部补丁,这也导致此类修复工具缺少针对性。再比如,windows操作系统自带的系统升级程序,主要是定期更新windows操作系统补丁,故无法对应用软件进行修复。
[0005]
现有漏洞修复、脆弱性检测等安全工具使用困难、复杂、无法自动修复,如:web应用、中间件等系统漏洞,修复时需要人工干预且人工必须具有较高的技术素养。如火绒的漏洞修复工具,首先需要在系统上进行工具的安装,然后开始漏洞扫描,以扫描系统补丁是否完整,如果缺少则提示需要安装相关补丁。该漏洞修复工具主要针对系统漏洞,可以防御如:ms17-010永恒之蓝、cve-2019-0708rdp溢出漏洞等,但是对于如log4j2远程命令执行、tomcat put方式文件上传等的漏洞就无法进行修复。同样windows update也只能更新微软发布的补丁,其它第三方软件的漏洞无法进行修复。
技术实现要素:
[0006]
根据本技术的一个方面,提供了一种基于漏洞信息库的漏洞修复系统,该系统能够解决操作系统漏洞及第三方系统漏洞修复问题,且实现全程自动化修复,降低工作难度和复杂度。
[0007]
所述基于漏洞信息库的漏洞修复系统包括:web前端子系统、业务操作管理子系统、自动化漏洞修复子系统和数据库;其中,所述业务操作管理子系统分别与所述web前端子系统、所述数据库进行数据交互,并通过api与所述自动化漏洞修复子系统连接;
[0008]
所述web前端子系统,用于管理前端页面展示;
[0009]
所述业务操作管理子系统,用于管理任务流转相关内容;
[0010]
所述自动化漏洞修复子系统,用于对目标系统进行信息收集、漏洞检测、漏洞修复;
[0011]
所述数据库,用于存储数据信息、所述自动化漏洞修复子系统中的不同程序,所述
数据信息包括用户信息、任务信息;所述自动化漏洞修复子系统中的不同程序用于在被所述业务操作管理子系统调用后进行任务流转。
[0012]
优选地,所述web前端子系统管理的前端页面展示至少包含以下任一种:资产信息展示、漏洞信息展示、漏洞修复效果展示以及攻击人机交互入口。
[0013]
优选地,所述web前端子系统,使用html+css+js进行开发。
[0014]
优选地,所述业务操作管理子系统中的所述管理任务流转相关内容包括:调用所述自动化漏洞修复子系统中不同功能的插件程序引擎进行系统信息收集、系统漏洞定位,将漏洞信息与操作系统版本信息匹配,选择对应的漏洞修复程序。
[0015]
优选地,所述业务操作管理子系统,使用java语言开发。所述漏洞修复引擎,使用python,shell,powershell语言开发各自漏洞修复插件及漏洞检测插件。
[0016]
优选地,所述自动化漏洞修复子系统包括:
[0017]
信息收集引擎,用于获取目标主机的系统信息;
[0018]
漏洞检测引擎,用于根据所述系统信息进行探测,进行漏洞定位,得到漏洞信息;
[0019]
漏洞修复引擎,用于根据所述漏洞信息和所述系统信息,将适合的漏洞修复程序自动修复漏洞下发给目标主机。
[0020]
优选地,所述目标主机的系统信息包括:目标ip地址、目标mac地址、目标开发端口、目标系统中包含的服务信息。
[0021]
优选地,所述漏洞修复引擎根据所述系统信息进行探测包括初步探测和深度探测。其中,所述初步探测是指根据漏洞信息库中的漏洞服务版本,匹配目标主机中存在的版本信息,进行初步漏洞定位。所述深度探测是指基于漏洞原理对所述初步漏洞定位结果进行原理性探测,判断是否存在漏洞,若存在则进行加固。
[0022]
现有的漏洞修复准确率通常在50%左右,而单独使用原理性探测判断漏洞的时间会受到网络延迟、目标响应时间限制而达到10s以上。本技术将初步探测和深度探测相结合,先通过初步探测可以秒级耗时快速筛选出可能存在漏洞的目标,再通过深度探测提高探测的准确性,使准确率达到95%以上,解决了当前检测耗时长、准确性低的问题。如cve-2015-1635漏洞初步探测只会检测目标系统是否安装了微软iis7.0及以上版本的iis中间件,如果安装则表明存在漏洞,反之不存在。深度探测则是通过在请求包中相关字段包含类似0xffffffffffffffff的大整数值参数,获取目标返回值确认是否存在漏洞。
[0023]
优选地,所述漏洞修复引擎包含按照特定格式编写的小程序。所述小程序至少包括以下一种:漏洞检测程序poc(proof of concept)、目标系统信息收集插件、针对不同操作系统的不同漏洞修复程序。
[0024]
优选地,所述数据库采用mysql数据库。
[0025]
根据本技术的又一个方面,提供了一种基于漏洞信息库的自动化漏洞修复方法,包括以下步骤:
[0026]
(1)建立漏洞修复任务,包括配置目标主机的登录密码;
[0027]
(2)根据输入的ip、用户名密码及协议进行登录测试,如果可以登录目标系统则进行下一步,如果不能登录目标系统则提示用户名密码错误并提示重新输入;
[0028]
(3)常规登录目标系统之后进行系统信息获取,包含端口信息、安装服务信息、系统版本信息、补丁信息;
[0029]
(4)根据漏洞信息库中的漏洞服务版本,匹配目标主机中存在的版本信息,进行初步漏洞定位;
[0030]
(5)对步骤(4)得到的初步定位结果进行原理性探测,深度检测漏洞是否存在;
[0031]
(6)如果漏洞不存在,则跳转到步骤(4),检测是否存在其它漏洞,否则进入步骤(7);
[0032]
(7)在漏洞信息库中,根据操作系统版本信息、漏洞信息,选择对应的修复脚本加固系统。
[0033]
优选地,步骤(1)中,所述配置被修复主机的登录密码采用远程登录方式,所述远程登录方式根据操作系统选择。
[0034]
优选地,当所述操作系统为windows操作系统时,使用smb(server message block)进行远程登陆。
[0035]
优选地,当所述操作系统为linux操作系统时,使用ssh(secure shell)进行远程登陆。
[0036]
优选地,步骤(5)中,所述原理性探测采用poc扫描,所述poc扫描以已发送漏洞探测包的形式定位漏洞是否存在;对于tomact put漏洞,poc会向目标机器发送put请求包,上传用于检测的jsp文件,通过http响应码判断是否存在漏洞。
[0037]
进一步地,若所述http响应码为201,则漏洞存在,反之则不存在漏洞。
[0038]
优选地,所述步骤(7)包括:对于apache log4j2远程代码执行漏洞,如果目标系统为windows 64位漏洞系统,则使用cve-2021-44228_rep_win_x64插件进行加固;如果漏洞信息库中操作系统为all,则该插件适用所有操作系统。
[0039]
本技术能产生的有益效果包括:
[0040]
本技术只需要用户提供被加固系统的ip和登录账号密码,即可自动去收集端口信息、安装服务信息、系统版本信息、补丁信息,再根据对应的端口及服务去匹配目标主机中应用软件初步定位是否存在漏洞,根据初步定位的漏洞信息去调用对应poc漏洞检测脚本,再次判断是否存在漏洞,能够实现对目标主机中存在漏洞的精准定位。确保漏洞真实存在之后,再根据漏洞信息和操作系统信息去匹配对应的修复插件,从而有针对性地对系统进行自动修复。本技术解决了现有漏洞修复工具只能修复操作系统漏洞不能修复第三方软件漏洞、修复技术针对性差、系统待修复漏洞需要人工鉴别以及漏洞修复难度较大等问题。同时满足了在信息安全领域漏洞不断披露无法精准修复、系统容易被攻击的难题。
附图说明
[0041]
图1是本技术一种实施方式中的基于漏洞信息库的漏洞修复系统架构图;
[0042]
图2是本技术一种实施方式中的基于漏洞信息库的漏洞修复方法流程图;
[0043]
图3是本技术一种实施方式中的漏洞信息库的局部信息说明。
具体实施方式
[0044]
请参见图1,其示出了本技术一种实施方式中的基于漏洞信息库的漏洞修复系统,包括:web前端子系统、业务操作管理子系统、自动化漏洞修复子系统和数据库。
[0045]
所述web前端子系统,用于管理前端页面展示。
[0046]
在一种实施方式中,web前端子系统使用html+css+js进行开发;业务操作管理子系统使用java语言开发;漏洞修复引擎使用python,shell,powershell语言开发各自漏洞修复插件及漏洞检测插件;数据库使用mysql数据库。
[0047]
在一种实施方式中,web前端子系统负责前端页面展示,包含:资产信息展示、漏洞信息展示、漏洞修复效果展示以及攻击人机交互入口等。
[0048]
所述业务操作管理子系统分别与web前端子系统、业务操作管理子系统、数据库进行数据交互,用于从所述web前端子系统获得任务信息,管理任务流转相关内容。
[0049]
在一种实施方式中,业务操作管理子系统负责任务流转相关内容,包含:调用所述自动化漏洞修复子系统中不同功能的插件程序引擎进行系统信息收集、系统漏洞定位,通过漏洞和操作系统版本匹配对应的漏洞修复程序。
[0050]
所述自动化漏洞修复子系统通过api与所述业务操作管理子系统连接,用于对目标系统进行信息收集、漏洞检测、漏洞修复。
[0051]
在一种实施方式中,所述自动化漏洞修复子系统包括:
[0052]
信息收集引擎,用于获取目标主机的系统信息;
[0053]
漏洞检测引擎,用于根据所述系统信息进行探测,进行漏洞定位,得到漏洞信息;
[0054]
漏洞修复引擎,用于根据所述漏洞信息和所述系统信息,将适合的漏洞修复程序自动修复漏洞下发给目标主机。
[0055]
在一种实施方式中,所述漏洞修复引擎根据所述系统信息进行探测包括初步探测和深度探测,其中,所述初步探测是指根据漏洞信息库中的漏洞服务版本,匹配目标主机中存在的版本信息,进行初步漏洞定位;所述深度探测是指对所述初步漏洞定位结果进行原理性探测,判断是否存在漏洞,若存在则进行加固。
[0056]
在一种实施方式中,漏洞修复引擎主要包含多个按照特定格式编写的小程序,如:漏洞检测程序poc、目标系统信息收集插件、针对不同操作系统的不同漏洞修复程序。
[0057]
所述数据库,用于存储数据信息、所述自动化漏洞修复子系统中的不同程序,供所述业务操作管理子系统进行任务流转使用,是所述自动化漏洞修复子系统中的漏洞修复引擎和业务操作管理子系统之间的纽带。所述数据信息包括用户信息、任务信息;所述自动化漏洞修复子系统中的不同程序用于在被所述业务操作管理子系统调用后进行任务流转。所述数据库中最核心的是漏洞信息库。
[0058]
如图2所示,本技术还提供了一种实施方式中所述基于漏洞信息库的漏洞修复方法,包括如下步骤:
[0059]
步骤一、web前端子系统接收用户建立的漏洞修复任务信息,配置目标主机的登录密码,同时将所述任务信息存储到数据库中,并通过api接口下发给自动化漏洞修复子系统中的信息收集引擎、漏洞检测引擎、漏洞修复引擎;其中,所述数据库包括漏洞信息库;
[0060]
步骤二、根据输入的ip以及输入的用户名密码及协议进行登录测试,如果可以登录目标系统则进行下一步,如果不能登录目标系统则提示用户名密码错误并提示要重新输入;
[0061]
步骤三、常规登录目标系统之后,所述信息收集引擎进行系统信息获取,包含目标的ip信息、mac信息、端口信息、安装服务信息、系统版本信息、补丁信息等;
[0062]
步骤四、初步探测:所述漏洞检测引擎通过漏洞信息库中的漏洞服务版本匹配目
标主机中存在的版本信息,进行初步漏洞定位;
[0063]
步骤五、深度探测:对上一步匹配版本排查到的漏洞,漏洞检测引擎进行原理性探测,深度检测漏洞是否存在;
[0064]
步骤六、如果漏洞检测引擎原理性探测检测漏洞不存在,则执行步骤四、步骤五,检测是否存在其他漏洞;
[0065]
步骤七、所述漏洞修复引擎在漏洞信息库中匹配系统版本信息、漏洞信息,根据对应的对应的修复脚本去加固系统。
[0066]
步骤八、所述漏洞检测引擎再对加固后的系统进行检测,判断漏洞是否已被修复,若没有返回步骤七,若已修复则生成修复报告。
[0067]
所述信息收集引擎、漏洞检测引擎、漏洞修复引擎产生的数据会通过api回传给业务操作管理子系统,业务操作管理子系统再将数据反馈给web前端子系统,并存储至数据库。
[0068]
在一种实施方式中,所述步骤一中,所述配置被修复主机的登录密码,如是windows操作系统使用smb进行远程登录,linux操作系统使用ssh登录系统;
[0069]
在一种实施方式中,所述步骤五中,所述原理性探测采用poc扫描,所述poc扫描以已发送漏洞探测包的形式定位漏洞是否存在;对于tomact put漏洞,poc会向目标机器发送put请求包,上传用于检测的jsp文件,判断http响应码是否为201,若是则为漏洞存在,反之则不存在漏洞。
[0070]
在一种实施方式中,所述步骤七中,对于apache log4j2远程代码执行漏洞,如果目标系统为windows 64位漏洞系统则使用cve-2021-44228_rep_win_x64插件进行加固;如果漏洞信息库中操作系统为all则该插件适用所有操作系统。
[0071]
图3示出了本技术的所述漏洞信息库的局部信息,包含端口、服务、漏洞名称、漏洞编号、漏洞检测脚本、攻漏洞修复脚本等字段信息。
[0072]
以上所述,仅是本技术的几个实施例,并非对本技术做任何形式的限制,虽然本技术以较佳实施例揭示如上,然而并非用以限制本技术,任何熟悉本专业的技术人员,在不脱离本技术技术方案的范围内,利用上述揭示的技术内容做出些许的变动或修饰均等同于等效实施案例,均属于技术方案范围内。
技术特征:
1.一种基于漏洞信息库的漏洞修复系统,其特征在于,包括web前端子系统、业务操作管理子系统、自动化漏洞修复子系统和数据库;其中,所述业务操作管理子系统分别与所述web前端子系统、所述数据库进行数据交互,并通过api与所述自动化漏洞修复子系统连接;所述web前端子系统,用于管理前端页面展示;所述业务操作管理子系统,用于管理任务流转相关内容;所述自动化漏洞修复子系统,用于对目标系统进行信息收集、漏洞检测、漏洞修复;所述数据库,用于存储数据信息、所述自动化漏洞修复子系统中的不同程序,所述数据信息包括用户信息、任务信息;所述自动化漏洞修复子系统中的不同程序用于在被所述业务操作管理子系统调用后进行任务流转。2.根据权利要求1所述的基于漏洞信息库的漏洞修复系统,其特征在于,所述前端页面展示至少包含以下任一种:资产信息展示、漏洞信息展示、漏洞修复效果展示以及攻击人机交互入口。3.根据权利要求1所述的基于漏洞信息库的漏洞修复系统,其特征在于,所述管理任务流转相关内容包括:调用所述自动化漏洞修复子系统中不同功能的插件程序引擎进行系统信息收集、系统漏洞定位;根据漏洞信息和操作系统版本信息,匹配对应的漏洞修复程序。4.根据权利要求1所述的基于漏洞信息库的漏洞修复系统,所述自动化漏洞修复子系统包括:信息收集引擎,用于获取目标主机的系统信息;漏洞检测引擎,用于根据所述系统信息进行探测,进行漏洞定位,得到漏洞信息;漏洞修复引擎,用于根据所述漏洞信息和所述系统信息,将适合的漏洞修复程序自动修复漏洞下发给目标主机。5.根据权利要求4所述的基于漏洞信息库的漏洞修复系统,其特征在于,所述漏洞修复引擎根据所述系统信息进行探测包括初步探测和深度探测,其中,所述初步探测是指根据漏洞信息库中的漏洞服务版本,匹配目标主机中存在的版本信息,进行初步漏洞定位;所述深度探测是指对所述初步漏洞定位结果进行原理性探测,判断是否存在漏洞,若存在则进行加固;优选地,所述漏洞修复引擎包含按照特定格式编写的小程序,所述小程序至少包括以下一种:漏洞检测程序poc、目标系统信息收集插件、针对不同操作系统的漏洞修复程序。6.一种基于漏洞信息库的漏洞修复方法,其特征在于,该方法包括:(1)建立漏洞修复任务,包括配置目标主机的登录密码;(2)根据输入的ip、用户名密码及协议进行登录测试,如果可以登录目标系统则进行下一步,如果不能登录目标系统则提示用户名密码错误并提示重新输入;(3)常规登录目标系统之后进行系统信息获取,包含端口信息、安装服务信息、系统版本信息、补丁信息;(4)根据漏洞信息库中的漏洞服务版本,匹配目标主机中存在的版本信息,进行初步漏洞定位;(5)对步骤(4)得到的初步定位结果进行原理性探测,深度检测漏洞是否存在;(6)如果漏洞不存在,则跳转到步骤(4),检测是否存在其它漏洞,否则进入步骤(7);
(7)在漏洞信息库中,根据操作系统版本信息、漏洞信息,选择对应的修复脚本加固系统。7.根据权利要求6所述的漏洞修复方法,其特征在于,步骤(1)中,所述配置被修复主机的登录密码采用远程登录方式,所述远程登录方式根据操作系统选择。8.根据权利要求6所述的漏洞修复方法,其特征在于,步骤(5)中,所述原理性探测采用poc扫描,所述poc扫描以已发送漏洞探测包的形式定位漏洞是否存在;对于tomact put漏洞,poc会向目标机器发送put请求包,上传用于检测的jsp文件,通过http响应码判断是否存在漏洞。9.根据权利要求6所述的漏洞修复方法,其特征在于,所述步骤(7)包括:对于apache log4j2远程代码执行漏洞,如果目标系统为windows 64位漏洞系统,则使用cve-2021-44228_rep_win_x64插件进行加固;如果漏洞信息库中操作系统为all,则该插件适用所有操作系统。10.根据权利要求7所述的漏洞修复方法,其特征在于,当所述操作系统为windows操作系统时,使用smb进行远程登陆;优选地,当所述操作系统为linux操作系统时,使用ssh进行远程登陆。
技术总结
本申请公开了一种基于漏洞信息库的漏洞修复系统及方法,其中系统包括业务操作管理子系统,分别与web前端子系统、自动化漏洞修复子系统和数据库进行数据交互。web前端子系统用于管理前端页面展示;业务操作管理子系统用于根据web前端子系统获取的任务信息,管理任务流转内容;自动化漏洞修复子系统用于在收到业务操作管理子系统下发的任务信息后,对目标系统进行信息收集、漏洞检测、漏洞修复;数据库用于存储数据信息。本申请降低了操作系统漏洞及第三方系统漏洞修复的复杂度,实现了全程自动化漏洞修复,提高了修复效率和准确性。提高了修复效率和准确性。提高了修复效率和准确性。
技术研发人员:傅涛 周经鑫 季文博 王璇 程旺宗 黄鑫 陈猛 许金台
受保护的技术使用者:博智安全科技股份有限公司
技术研发日:2023.04.28
技术公布日:2023/8/28
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/