IT系统安全配置基线采集与评价系统设计方案

2015-03-18 10:20
网络安全和信息化 2015年5期
关键词:脚本服务器模块

引言

主机、网络设备等配置不当一直以来都是造成信息安全问题的主要原因之一。这些配置存在于主机、网络设备等各类设备中。涉及帐号、口令、认证、授权、日志配置、IP协议安全等诸多方面,覆盖面极为广泛。任何配置不当都会导致设备存在安全风险,进而给整个业务系统的正常运行带来隐患。如果采用人工方式检查安全配置会带来很大的工作量。人工检查方式对于知识的积累和延续有很大阻碍,而且还可能由于检查人员对系统不熟悉造成误操作。

主机、网络设备等的安全配置建议是面向通用领域的,只从通用的角度描述相关的安全影响,其供应商不能针对不同的使用场景进行扩展补充,导致安全建议不能完全符合实际场景,进而也就不能完全满足实际使用中的安全配置要求。

以下描述一种可以实现高度自动化、可扩展性强的安全配置检查系统。

同类产品对比

目前业内的配置检查系统数量众多,但原理主要有两种:

1.调用被查设备API,获取所需配置信息。该方法通过调用系统API进行检查,需要深入研究被查设备,配置项开发难度大。如基于SCAP规范的配置检查系统。

2.通过命令行,获取所需配置信息的回显,再通过正则表达式匹配出所需字段。该方法相对简单,配置项的开发难度也相对较低。

下文论述的配置检查系统是基于第二种方式,并且在此基础上,将检查命令和配置检查系统自身程序做了进一步剥离,使得配置项的新增、扩展更加方便、独立。

系统概述

安全配置检查系统实现了高度自动化、可扩展性强。主要体现在其模块化,分布式的系统结构。

从功能模块角度考虑,安全配置检查系统分为:被检查设备信息管理模块、配置项管理模块、配置检查任务制定、设备信息采集、设备配置信息分析模块、数据存储模块等。

从系统部署角度,安全配置检查的部署服务器分为三类:数据库服务器、核心/WEB服务器、采集服务器等。数据库服务器用于存储安全配置检查的所有数据,核心/WEB服务器为用户提供维护配置项和制定配置检查任务的图形化Web页面,以及配置项检查结果分析、呈现等核心功能,采集服务器用于下发采集脚本,并获取脚本回显结果。

系统平台功能实现

1.WEB服务器节点功能:提供安全配置项维护界面、检查任务制定界面、检查结果展示界面等。

2.核心服务器节点功能:核心服务器承担的主要功能是访问和存储被检查设备信息、向采集服务器发起采集分析指令、分析采集服务器返回的采集脚本回显信息、并生成和导出配置检查报表。主要由以下六个功能模块组成:

(1)被检查设备信息录入模块:负责录入被检查设备信息,并存入数据库服务器中。包括设备类型、设备名称、IP地址、登录帐号、登录密码等信息。

(2)配置项管理模块:配置项管理模块用于管理检查项,包括配置项管理、采集脚本管理、基准值管理、判断逻辑定义等模块,是该系统的核心功能模块,其设计方案决定了该系统具有很强的易用性和扩展性。配置项管理用于描述该配置项的基本信息,如配置项名称、编号、分类、检查步骤、判断条件、加固方案等;采集脚本管理用于管理采集被查设备信息的脚本文件;基准值管理用于设置配置项检查结果是否合理的判断基准;判断逻辑定义用于定义从设备上采集的配置信息和基准值之间的逻辑关系,如大于、等于、存在等。

(3)检查任务制定模块:配置检查任务制定部分用于制定配置检查任务,检查任务分三类,包括快捷检查、调度检查、离线检查等。快捷检查只对保证检查能够正常执行的基本信息进行设置,其他信息均采用默认设置;调度检查可以对任务进行复杂配置,如只检查该类型设备配置项的一部分、任务开始时间、任务执行周期等;离线检查采用导出离线检查脚本的形式,对网络不可达的设备采用手动登录设备,执行离线脚本的方法对其进行检查。

(4)采集消息发送模块:当用户选定要检查的设备之后,此模块会根据其设备类型、设备ID等信息查找对应的登录信息、采集脚本等信息,组合成可识别的消息格式发送给采集服务器。

(5)结果解析模块:采集服务器根据核心服务器发送的信息,登录设备并执行采集脚本,将采集脚本的执行回显返回给核心服务器进行解析,获取检查中必要的配置信息,进行逻辑判断,完成解析,得到配置项是否配置正确的结果。

(6)报表展现及报表导出模块:报表展现和导出模块提供丰富、详实的报表功能。可以直观的查看配置检查任务的各个过程的中间数据及检查结果。

3.数据库服务器节点功能:为安全配置检查系统提供数据存储服务。主要存储包括存储被检查设备信息、存储安全配置检查项信息、存储检查任务信息、存储检查结果信息等数据信息。

4.采集服务器节点功能:主要完成登录设备和执行脚本两个功能。

总体流程

1.用户登录系统WEB界面。

2.在任务管理界面,新建检查任务。

3.核心服务器根据新建任务的设置,获取设备登录信息(如用户名、密码、IP地址等)和配置项信息(如配置项名称、检查脚本等信息)。

4.将第3步获取的基本信息构建为采集服务器可识别的格式,生成消息。

5.将消息发送给采集服务器。

6.采集服务器根据消息中传递的信息,登录设备。

7.判断登录是否成功,如果不成功,返回第2步,重新设置检查任务;如果成功,继续以下步骤。

8.执行检查脚本,得到设备回显,获取设备配置信息,返回给采集服务器。

9.采集服务器将第8步得到的配置信息发送给核心服务器进行解析、判断,得到检查结果。

10. 检查结果存储在数据库服务器内,在WEB页面呈现。

11.结果报表支持导出成Word、Excel、PDF格式文档。

优势

此安全配置检查系统的优势主要体现在三方面。

1.自动化批量检查

自动化批量检查体现在制定检查任务方面,用户可以在制定检查任务时,选择多台设备和多个配置检查项,并且可以制定周期性任务。任务开始执行后,系统会定时对任务所选设备进行安全配置检查。做到了完全的自动化和批量化。

2.设备类型覆盖面广

检查范围可以覆盖到主机类设备、路由交换设备、防火墙设备、数据库设备、中间件设备、负载均衡设备。理论上,只要存在命令行管理界面的设备均可以纳入检查范围。

3.可扩展性强

扩展性主要体现在配置项管理方面。配置项管理将配置项管理、采集脚本管理、基准值管理、判断逻辑定义等模块与后台处理逻辑进行了隔离,使得配置项的增加不依赖于编程能力、也不依赖于对系统代码的了解。以下举例重点讨论。

例如,需要增加AIX操作系统的配置项,检查AIX口令锁定策略是否满足要求。该配置项的基本组成如下。

配置项描述:检查AIX口令锁定策略是否满足要求。要求对于采用静态口令认证技术的设备,应配置当用户连续认证失败次数超过六次(不含六次),锁定该用户使用的账号。可以通过创建一个普通账号,为其配置相应的口令;并用新建的账号通过错误的口令进行系统登录六次以上(不含六次),帐户被锁定,不再提示让再次登录的方法来判断是否正确配置。

采 集 脚 本:lssec-f/etc/security/usersdefault-aminlen-aminalpha-amindiffaminother-apwdwarntime-ahistexpire-ahistsize-aloginretries-amaxage

基准值:设置为6

判断逻辑定义:如果NO1>=1并且NO1<=6则'正确'否则'不正确'

通过以上举例可以看出,新增配置项时,用户仅需要对被检查设备的检查命令有一定的了解,可以编写采集脚本,然后自行定义判断逻辑和基准值即可,并没有涉及被检查设备底层接口,也没有涉及安全配置检查系统后台代码。保证了系统具有极强的可扩展性。

结束语

随着信息产业的发展,自动化替代人工方式,极大地提高了工作效率,带来了巨大的经济收益。但是由于系统配置不当也造成了很大的损失。安全配置检查,是保证系统正常运行的基础手段之一。安全配置检查系统,将原有依靠人工保障的工作采用自动化的方式实现,提高了工作效率,节省了人力投入,其广泛的覆盖面和良好的可扩展性,使得此系统具有很强的生命力,具有广泛的市场价值。

猜你喜欢
脚本服务器模块
酒驾
28通道收发处理模块设计
“选修3—3”模块的复习备考
安奇奇与小cool 龙(第二回)
通信控制服务器(CCS)维护终端的设计与实现
快乐假期
小编的新年愿望
中国服务器市场份额出炉
得形忘意的服务器标准
计算机网络安全服务器入侵与防御