安全漏洞的完整生命周期管理

2018-11-06 06:11
网络安全和信息化 2018年10期
关键词:信息库脚本补丁

平台总体架构

漏洞全生命周期管理平台总体架构如图1所示。

漏洞生命周期管理平台包括漏洞验证、漏洞处置、漏洞复查、漏洞归档四个阶段。

漏洞验证

1.针对系统漏洞,通过加载基于漏洞测试框架编写的漏洞函数,将oval语言封装的漏洞情报信息转换为可执行的POC脚本,形成漏洞验证脚本的自动化编辑模式,进而实现自动化的漏洞验证。

2.针对应用漏洞进行人工验证。

3.通过IT资产指纹信息的精确分析,实现漏洞情报信息对内部IT资产的精准推送,形成漏洞预警。

图1 漏洞全生命周期管理平台总体架构图

漏洞处置

通过自动化手段将资产、漏洞、补丁进行三方关联,并自动调用已经验证通过补丁进行批量、自动化补丁分发,实现自动加固。

漏洞复查

对比分析从漏洞、资产、责任人等维度将每次检查的系统漏洞和应用漏洞进行比对分析,及时发现新增漏洞、未加固的漏洞、加固完成后仍存在的漏洞、顽固漏洞等。

漏洞归档

针对漏洞处置的效果进行评价,通过漏洞状态管理标记各种漏洞信息,做到漏洞处置情况的精确掌握。

漏洞验证功能设计与实现

系统漏洞在线验证功能

1.在线验证平台

平台包括POC编写的SDK和自动化调用测试工具。

2.POC脚本管理

POC脚本管理包括:POC脚本的漏洞语言编译,将漏洞信息转化为自线验证平台可识别的通用漏洞语言;脚本的批量执行,将不同的脚本在不同的IT资产并行运行。

POC脚本的批量编写采用函数自动注入技术,即在POC脚本的预置模板中自动将verify和exploit函数写入脚本。

3.自动化调用测试工具

自动化调用测试工具采用Pyhton编写,支持验证与利用两种插件模式,管理员可以指定单个目标或从文件导入多个目标,使用单个 POC或POC集合进行漏洞验证。

4.平台负载调度

平台集成了多种不同类型的POC脚本,在具体使用过程中利用了系列的计算策略对这些异构类型的脚本进行了负载调度。

图2 IT资产指纹精确分析示意图

负载均衡策略采用了轮询、加权轮询、加权随机、按照服务类型优先级、当前负荷度等调度算法。实现对异构的安全检测POC的负载调度,首先需要先根据检测任务类型找到相适配的检测POC,然后获取工具上的任务状态信息,再根据任务信息设定不同的负载策略,将分解的原子级任务指派到适当POC。

漏洞情报精确预警功能

1.资产指纹精确分析

精准的资产管理是漏洞管理的基础,只有精确掌握主机系统部署的各类数据库软件、中间件软件、Web语言、开发框架等信息,掌握主机开放的服务、进程、端口等信息,才能做到快速的漏洞情报预警。资产指纹精确分析的功能架构如图2所示。

(1)指纹信息采集

指纹信息采集包括系统类资产指纹采集和应用类资产指纹采集。

(2)指纹信息分析

系统类资产指纹信息分析是通过系统层指纹TCP socket技术,对IT资产进行分析识别,分析得出资产的操作系统类型、操作系统版本、WebServer类型、开放的常规端口/服务等信息。

主机指纹采集检测工具作为定时任务在Server端后台执行,执行结果定时生成为xml格式文件。

程序对主机资产进行逐一扫描分析,并将分析结果存为xml格式结果文件;对分析的结果进行解析入库,并完善相对应资产的信息。

应用类资产指纹信息分析是Web指纹采集检测工具作为定时任务在Server端后台执行,并将结果定时生成为xml、json、html格式文件。

程序对Web站点进行逐一爬行并将爬行的URL及页面MD5等信息记录Web指纹分析核心功能对上一步获取的URL进行逐一分析,分析技术包括:正则、MD5等形式。系统对分析结果进行解析入库,完善相对应资产的信息。

2.漏洞情报与IT资产的关联

图3 Struts2资产识别过程示意图

漏洞情报与IT资产的关联主要是从漏洞情报中提取出影响的资产信息并与企业内部IT资产指纹进行匹配,从而将漏洞情报推送给内部IT资产,形成漏洞预警。

3.主要实现技术

采用配置特征关联分析方法精确识别资产指纹的技术,其主要面向无法通过读取配置文件识别资产的类型和版本的资产,比如Struts2框架。分析过程如图3。

首先要掌握Struts2资产配置属性信息,包含前端控制器 FC、Action、ValueStack容器、Result、Interceptor拦截器、Tags标签6个核心组件;其次需要提取出Action、ValueStack容器和Tags标签三个组件特征,并进行关联,进而分析出Struts2。

补丁自动分发功能

补丁信息管理

补丁信息库分为两部分,一部分是通过对从网站采集、人工导入的补丁信息进行预处理后形成的全量补丁信息库,另一部分是通过补丁信息分析后形成的实际的安全资产自身的补丁信息库。

全量补丁信息库的补丁信息主要包括:IT系统名称、版本、补丁编号、补丁描述、补丁级别、影响平台。

自身补丁信息库的补丁信息主要包括:资产名称、资产ID、IP地址、所属业务系统、所属管理员、版本、补丁编号、补丁描述、补丁级别、影响平台。

自身补丁信息主要从资产采集现有的补丁信息和补丁信息库进行对比,将资产信息管理模块中的资产版本信息与补丁知识库进行比对,检查知识库中的IT系统版本与资产版本是否一致,如果一致,即证明该资产存在知识库中相关版本的IT系统存在的补丁,即进行告警展现。

补丁执行

该功能收集已经验证通过的各类补丁信息,并建立补丁镜像服务器,安全评估与检测平台按照各类服务器需要的补丁信息,向各类服务器执行补丁运行命令,各类服务器自动运行需要执行的补丁信息,完成自动化的补丁分发。

漏洞对比分析功能

漏洞对比分析从漏洞、资产、责任人等维度将每次检查的系统漏洞和应用漏洞进行比对分析,及时发现新增漏洞、未加固的漏洞、加固完成后仍存在的漏洞、顽固漏洞等信息。

漏洞对比分析分为三个维度:以漏洞为维度、以资产为维度和以责任人为维度,具体如图4所示。

具体的分析流程如下:

图4 漏洞对比分析示意图

表1 导入文件中的漏洞和多条记录中的漏洞对比

1.点击“导入文件”按钮,将漏扫文件导入其中并填写记录名称,点击“创建“,随即创建一条记录在对比结果列表中。除了查看创建的记录外对列表无其他操作权限。

此次导入文件中的漏洞要和多条记录中的漏洞做对比,其中分4种情况,如表1所示。

2.查看对比结果列表,其中展示的内容有:记录名称、处理状态、导入时间、完成时间、导入人和操作(分派漏洞和查看详情)。

3.分派漏洞功能指的是安全管理员向维护人员分派新发现的漏洞,让维护人员对这些漏洞进行加固处理或者报备。

4.操作列中的查看详情展示全量漏洞的详细信息,比如:漏洞名称、漏洞级别,资产名称、IP地址、CVE编号和对比状态等。

漏洞状态管理功能

漏洞归档针对漏洞处置的效果进行评价,通过漏洞状态管理标记各种漏洞信息,做到漏洞处置情况的精确掌握。如图5所示。

漏洞状态管理功能将安全检查结果与历史漏洞信息进行对比,确认漏洞当前所处状态。

图5 漏洞状态管理示意图

猜你喜欢
信息库脚本补丁
酒驾
安奇奇与小cool 龙(第二回)
健胃补丁
借助BIM构建动态造价信息库的新思路
绣朵花儿当补丁
补丁奶奶
快乐假期
小编的新年愿望
基于普元EOS平台的信息库的设计与实现
大病医保期待政策“补丁”