一种安全策略适配框架及其方法技术领域
本发明实施方式涉及信息安全技术领域,特别是涉及一种安全策略适配框架及其
方法。
背景技术
随着云计算和大数据时代的到来,云计算和大数据安全问题逐渐成为现代信息安
全所要解决的主要问题。解决云计算和大数据安全问题的有效途径之一即是安全管理,而
安全策略管理是实现安全管理的重要手段,它是安全管理的核心,通过安全策略的集中统
一的配置和管理能实现系统、安全设备等安全机制的高效管理,提高系统、安全设备的运行
效率。
然而,安全策略管理的现状是,在诸如云计算环境这样的大规模分布式环境中,随
着安全设备越来越多、应用访问越来越广、结构越来越复杂,对高效管理复杂多样的安全设
备提出近乎苛刻的要求。这些种类繁多的安全软件和设备,其各自的安全管理接口都不开
放,即使开放所要求的格式、数据类型也千差万别,无法实现安全策略的集中而统一的自适
应部署和管理;由于当前没有制定统一的策略标准和策略描述规范,各个厂商提供的安全
设备都具有自己独立的一套策略定义和描述规范,造成兼容性较差,互操作性不强,接口不
规范。要实现真正意义上的与厂商无关的策略管理,必须制定一种各厂商都能接受的统一
策略规范描述标准和协议。作为策略的一大分支,安全策略在继承策略基本特征的基础上,
赋予了新的内涵。同时,安全策略也存在着不同的表达方式和适用的范围,即策略层次。策
略层次的不同影响着策略的转换效果,高层抽象策略通常以自然语言的形式存在,描述的
是系统安全需求和安全管理目标,必须转换为较低层次的策略才能实施执行。
80年代起,英国皇家学院分布式系统管理小组的领袖人物Morris Sloman最先推
广策略概念,并开展与策略相关课题的研究。随后,IETF、DMTF等国际标准组织、国外学术机
构和知名网络设备厂商也对策略管理的相关问题展开研究,产生了一些实现策略管理解决
方案的思路和技术。但这些解决方案往往局限于特定企业的产品,因为没有推出基于策略、
策略描述、策略管理的标准,兼容性较差。
鉴于上述情况,IETF等推出了基于策略管理的标准体系结构以及多种不同的策略
描述规范如贝尔实验室的PDL策略描述语言、英国皇家学院的PONDER策略描述语言、OASIS
的xACML通用访问控制策略语言和执行授权策略框架,但仍然缺乏通用的语言规范标准。国
内对这方面的研究相对较少,或多或少都有些缺陷,不能满足现有的策略管理要求
发明内容
本发明实施方式主要解决的技术问题是提供一种安全策略适配框架及其方法。能
够用自然语言描述的通用安全策略转换为目标对象中可执行的安全策略规则,具有较强的
通用性,支持多种异构安全设备的安全策略集中统一管理。
为解决上述技术问题,本发明实施方式采用的一个技术方案是:提供一种安全策
略适配方法,方法包括:预存目标对象的安全信息以及策略转换的安全信息;扫描所述目标
对象,以获取所述目标对象的安全信息;对所述目标对象的原始策略进行词法和语法分析,
并进行策略语义转换,进一步采用基于所述策略转换的安全信息的策略组装技术将经过策
略语义转换后的策略转换为适合多个目标对象的可执行安全策略规则;根据所述目标对象
的安全信息,将适合所述目标对象的可执行安全策略规则下发给所述目标对象实施执行。
其中,目标对象的安全信息包括所述目标对象的设备类型、系统软件、业务软件类
型及系统补丁信息、可能存在的漏洞及安全风险、已部署的安全策略及安全要求。
其中,策略转换的安全信息包括安全策略模板、适合不同等级保护的等级安全要
求、安全场景和安全需求的安全策略和规范、主流操作系统、安全设备的安全策略和规范、
配置文件、配置内容及相应的取值。
其中,对所述目标对象的原始策略进行词法和语法分析,并进行策略语义转换,进
一步采用基于所述策略转换的安全信息的策略组装技术将经过策略语义转换后的策略转
换为适合多个目标对象的可执行安全策略规则的步骤包括:
词法和语法分析步骤:将所述原始策略的字符串进行词法分析扫描,识别出策略
关键字及相应的值,按照策略描述语言既定的语法规则对原始策略进行语法检查,并识别
出相应的语法成分,经过词法分析和语法分析处理后,形成原始策略的中间策略;
策略语义转换步骤:根据所述目标对象的安全信息,将所述原始策略的高层抽象
语义结合所述策略转换的安全信息,转换为所述目标对象的低层抽象语义;
策略组装步骤:根据所述低层抽象语义获取到所述词法和语法分析步骤得到的中
间策略相对应的策略转换的安全信息,进而利用所述策略转换的安全信息结合所述目标对
象的安全信息,对所述词法和语法分析步骤得到的中间策略组装形成适合所述目标对象的
可执行策略规则。
其中,以适合所述目标对象的策略下发给所述目标对象实施执行的步骤包括:
以命令行、配置脚本或策略结构的形式下发给所述目标对象实施执行。
为解决上述技术问题,本发明实施方式采用的另一个技术方案是:提供一种安全
策略适配框架,该框架包括:
存储模块,用于预存目标对象的安全信息以及策略转换的安全信息;
识别模块,用于扫描所述目标对象,以获取所述目标对象的安全信息;
策略转换模块,用于对所述目标对象的原始策略进行词法和语法分析,并进行策
略语义转换,进一步采用基于所述策略转换的安全信息的策略组装技术将经过策略语义转
换后的策略转换为适合多个目标对象的可执行安全策略规则;
下发模块,用于根据所述目标对象的安全信息,将适合所述目标对象的可执行安
全策略规则下发给所述目标对象实施执行。
其中,目标对象的安全信息包括所述目标对象的设备类型、系统软件、业务软件类
型及系统补丁信息、可能存在的漏洞及安全风险、已部署的安全策略及安全要求。
其中,策略转换的安全信息包括安全策略模板、适合不同等级保护的等级安全要
求、安全场景和安全需求的安全策略和规范、主流操作系统、安全设备的安全策略和规范、
配置文件、配置内容及相应的取值。
其中,转换模块包括:
词法和语法分析单元,用于将所述原始策略的字符串进行词法分析扫描,识别出
策略关键字及相应的值,按照策略描述语言既定的语法规则对原始策略进行语法检查,并
识别出相应的语法成分,经过词法分析和语法分析处理后,形成原始策略的中间策略;
策略语义转换单元,用于根据所述目标对象的安全信息,将所述原始策略的高层
抽象语义结合所述策略转换的安全信息,转换为所述目标对象的低层抽象语义;
策略组装单元,用于根据所述低层抽象语义获取到所述词法和语法分析步骤得到
的中间策略相对应的策略转换的安全信息,进而利用所述策略转换的安全信息结合所述目
标对象的安全信息,对所述词法和语法分析步骤得到的中间策略组装形成适合所述目标对
象的可执行策略规则。
其中,下发模块具体以命令行、配置脚本或策略结构的形式下发给所述目标对象
实施执行。
本发明实施方式的有益效果是:区别于现有技术的情况,本发明实施方式提供一
种安全策略适配框架及其方法。该方法包括以下步骤:首先预存目标对象的安全信息以及
策略转换的安全信息,然后扫描目标对象,以获取目标对象的安全信息,进而对目标对象的
原始策略进行词法和语法分析,并进行策略语义转换,进一步采用基于策略转换的安全信
息的策略组装技术将经过策略语义转换后的策略转换为适合多个目标对象的可执行安全
策略规则,最后根据目标对象的安全信息,将适合目标对象的可执行安全策略规则下发给
目标对象实施执行。因此,本发明能够用自然语言描述的通用安全策略转换为目标对象中
可执行的安全策略规则,具有较强的通用性,支持多种异构安全设备的安全策略集中统一
管理。
附图说明
图1是本发明实施方式提供的一种安全策略适配方法的流程图;
图2是本发明实施方式提供的一种安全策略适配框架的结构示意图;
图3是本发明实施方式提供的另一种安全策略适配框架的结构示意图。
具体实施方式
参阅图1,图1是本发明实施方式提供的一种安全策略适配方法的流程图。如图1所
示,本发明实施方式的方法包括以下步骤:
步骤S1:预存目标对象的安全信息以及策略转换的安全信息。
其中,目标对象的安全信息包括目标对象的设备类型、目标对象中的系统软件、业
务软件类型及系统补丁信息、目标对象可能存在的漏洞及安全风险、目标对象中已部署的
安全策略及目标对象的安全要求。
其中,设备类型包括主机类型、网络类型以及安全类型。系统软件包括操作系统、
数据库以及中间件。安全要求包括等级保护要求或企业要求。
目标对象的安全信息的存储采用面向对象表示法进行表示,采用树型结构组织知
识库知识之间的层次结构关系。在实现上采用LDAP或关系数据库等存储。同时在存储过程
中,保持策略知识的一致性和完整性。
策略转换的安全信息包括安全策略模板、适合不同等级保护的等级安全要求、安
全场景和安全需求的安全策略和规范、主流操作系统、安全设备的安全策略和规范、配置文
件、配置内容及相应的取值。具体是采用LDAP(Light Directory Access Protocol,轻量级
目录访问协议)协议实现安全信息的访问操作和存储。
策略转换的安全信息的存储是实现策略转换和策略统一管理的基础。
步骤S2:扫描目标对象,以获取目标对象的安全信息。
步骤S3:对目标对象的原始策略进行词法和语法分析,并进行策略语义转换,进一
步采用基于策略转换的安全信息的策略组装技术将经过策略语义转换后的策略转换为适
合多个目标对象的可执行安全策略规则。
本步骤是安全策略适配方法的核心,借鉴人工智能专家系统的一般结构,融合编
译原理的思想进行。具体包括词法和语法分析步骤、策略语义转换步骤以及策略组装步骤。
其中:
词法和语法分析步骤:将目标对象的原始策略的字符串进行词法分析扫描,识别
出策略关键字及相应的值,按照策略描述语言既定的语法规则对原始策略进行语法检查,
具体是对单词(属性字)形式的原始策略进行语法检查,并识别出相应的语法成分,经过词
法分析和语法分析处理后,形成原始策略的中间策略,优选用正则表达式表示。其中,原始
策略为用自然语言或半形式化语言描述的通用安全策略。并且策略关键字及相应的值优选
以键值的形式存在。
策略语义转换步骤:根据目标对象的安全信息,将原始策略的高层抽象语义结合
策略转换的安全信息,转换为目标对象的低层抽象语义。具体是根据目标对象中的系统软
件、安全设备类型以及安全要求等信息,将原始策略的高层抽象语义结合策略转换中相应
的系统软件、设备类型等的实施策略信息,转换为目标对象的低层抽象语义。
策略组装步骤:根据低层抽象语义获取到词法和语法分析步骤得到的中间策略相
对应的策略转换的安全信息,进而利用策略转换的安全信息结合目标对象的安全信息,优
选为结合目标对象的操作系统及安全要求等信息,对词法和语法分析步骤得到的中间策略
组装形成适合目标对象的可执行策略规则。具体是对词法和语法分析步骤得到的中间策略
进行匹配、替换、插入以及排序等操作以组装形成适合目标对象的可执行策略规则。
本步骤中,首先是采用预定的搜索策略对存储的策略转换的安全信息进行搜索,
以获得中间策略相对应的策略转换的安全信息。其中,搜索策略包括广度优先搜索策略以
及深度优先搜索策略。中间策略相对应的策略转换的安全信息包括相对应的安全策略模板
等。
步骤S4:根据目标对象的安全信息,将适合目标对象的可执行安全策略规则下发
给目标对象实施执行。具体是根据目标对象的系统软件或设备类型,将适合目标对象的可
执行安全策略规则以命令行、配置脚本或策略结构的形式下发给目标对象实施执行。
因此,本发明实现对目标对象中安全机制的统一管控,本发明的方法具有较强的
通用性,支持多种异构目标对象安全策略的适配转换,能满足大规模安全策略管理的要求,
支持安全策略的一体化管理。
本发明还提供一种安全策略适配框架,该框架适用于前文所述的方法中,具体请
参阅图2。
如图2所示,本发明的框架20包括识别模块21、存储模块22、策略转换模块23以及
下发模块24。
其中,识别模块21用于扫描目标对象,以获取所述目标对象的安全信息。其中,目
标对象的安全信息包括目标对象的设备类型、目标对象中的系统软件、业务软件类型及系
统补丁信息、目标对象可能存在的漏洞及安全风险、目标对象中中已部署的安全策略及目
标对象的安全要求。
其中,设备类型包括主机类型、网络类型以及安全类型。系统软件包括操作系统、
数据库以及中间件。安全要求包括等级保护要求或企业要求。
存储模块22包括策略库和知识库。其中,知识库和策略库分别用于预存目标对象
的安全信息以及策略转换的安全信息。
其中,知识库作为策略转换的辅助决策工具,存储目标对象的安全信息。知识库采
用面向对象表示法进行表示,采用树型结构组织知识库知识之间的层次结构关系。在实现
上采用LDAP或关系数据库等存储。同时在知识库的建立和存储过程中,保持策略知识的一
致性和完整性。
策略库是实现策略转换和策略统一管理的基础,存放由策略转换模块23产生的策
略转换的安全信息。具体是采用LDAP(Light Directory Access Protocol,轻量级目录访
问协议)协议实现策略库中安全信息的访问操作和存储。
策略转换的安全信息包括安全策略模板、适合不同等级保护的等级安全要求、安
全场景和安全需求的安全策略和规范、主流操作系统、安全设备的安全策略和规范、配置文
件、配置内容及相应的取值。
策略转换模块23用于对目标对象的原始策略进行词法和语法分析,并进行策略语
义转换,进一步采用基于策略转换的安全信息的策略组装技术将经过策略语义转换后的策
略转换为适合多个目标对象的可执行安全策略规则。
策略转换模块23是安全策略适配方法的核心,借鉴人工智能专家系统的一般结
构,融合编译原理的思想进行。具体包括词法和语法分析单元231、策略语义转换单元232以
及策略组装单元233。
其中,词法和语法分析单元231用于将目标对象的原始策略的字符串进行词法分
析扫描,识别出策略关键字及相应的值,按照策略描述语言既定的语法规则对原始策略进
行语法检查,具体是对单词(属性字)形式的原始策略进行语法检查,并识别出相应的语法
成分,经过词法分析和语法分析处理后,形成原始策略的中间策略,优选用正则表达式表
示。其中,原始策略为用自然语言或半形式化语言描述的通用安全策略。并且策略关键字及
相应的值优选以键值的形式存在。
策略语义转换单元232用于根据目标对象的安全信息,将原始策略的高层抽象语
义结合策略转换的安全信息,转换为目标对象的低层抽象语义。具体是根据目标对象中的
系统软件、安全设备类型以及安全要求等信息,将原始策略的高层抽象语义结合策略转换
中相应的系统软件、设备类型等的实施策略信息,转换为目标对象的低层抽象语义。
策略组装单元233用于根据低层抽象语义获取到词法和语法分析单元231得到的
中间策略相对应的策略转换的安全信息,进而利用策略转换的安全信息结合目标对象的安
全信息,优选为结合目标对象的操作系统及安全要求等信息,对词法和语法分析模块231得
到的中间策略组装形成适合目标对象的可执行策略规则。具体是对词法和语法分析模块
231得到的中间策略进行匹配、替换、插入以及排序等操作以组装形成适合目标对象的可执
行策略规则。
策略组装单元233首先是采用预定的搜索策略对存储的策略转换的安全信息进行
搜索,以获得中间策略相对应的策略转换的安全信息。其中,搜索策略包括广度优先搜索策
略以及深度优先搜索策略。中间策略相对应的策略转换的安全信息包括相对应的安全策略
模板等。
下发模块24用于根据目标对象的安全信息,将适合目标对象的可执行安全策略规
则下发给目标对象实施执行。具体是根据目标对象的系统软件或设备类型,将适合目标对
象的可执行安全策略规则以命令行、配置脚本或策略结构的形式下发给目标对象实施执
行。
以上介绍了本发明的一种安全策略框架及其方法,以下将以操作系统CentOS 7的
系统安全策略为例说明,具体请参阅图3,包括:
(1)识别模块31:管理员通过策略编辑界面给目标对象,在此为目标主机添加操作
系统CentOS 7的安全策略,如:密码长度至少为8位。然后,通过对目标对象的主动扫描,识
别出目标对象的设备类型为主机服务器;识别出目标对象中的系统软件为x86_64位的
CentOS 7操作系统及系统补丁信息;识别出目标对象存在的漏洞并评估安全风险;识别出
目标对象中已部署的安全策略;识别出目标对象的安全需求为等级保护三级安全要求。
(2)策略转换模块33:包括词法和语法分析单元331、策略语义转换单元332和策略
组装单元333。策略转换模块33借助编译原理的思想,词法和语法分析单元331对原始策略
“密码长度至少为8位”进行词法分析,得到原始策略的关键字“密码”,“长度”和“8位”及相
应的值,以键值对的形式存在。对原始策略进行语法检查,判断原始策略是否存在语法错
误。
策略语义转换单元332对词法和语法分析单元331的策略中间结果进行策略语义
转换,将原始策略的高层抽象语义结合策略库中关于目标对象的安全策略规范和模板,转
换为低层的抽象语义,形成用正则表达式表示的中间策略。根据关键字“密码”查找策略库
351中存储的CentOS 7操作系统的安全策略、配置文件(/etc/login.defs)、配置内容
(PASS_MIN_LEN)及相应的取值,利用这些策略信息由策略组装单元333将中间策略组装为
目的对象可执行的脚本,并发送给策略下发模块34。
(3)下发模块34:建立与目标对象的安全通信通道,将可执行安全策略脚本传送给
目标对象,由目标对象操作系统CentOS 7实施执行。
(4)策略库351:存放由策略转换模块产生的策略及相关的各种信息,包括适合不
同等级保护要求、安全设备、安全场景和安全需求的安全策略和规范;主流操作系统、安全
设备的安全策略和规范、配置文件、配置内容及相应的取值。策略库采用LDAP协议组织和存
储CentOS 7安全策略。
(5)知识库352:存储安全标准、目标对象安全要求,包括等级保护标准不同等级的
安全技术要求,主流操作系统和安全设备的漏洞信息;主流操作系统、数据库、网络设备和
安全设备的安全基线库等。
因此,本发明实现对目标对象中安全机制的统一管控,本发明的方法具有较强的
通用性,支持多种异构目标对象安全策略的适配转换,能满足大规模安全策略管理的要求,
支持安全策略的一体化管理。
以上所述仅为本发明的实施方式,并非因此限制本发明的专利范围,凡是利用本
发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的
技术领域,均同理包括在本发明的专利保护范围内。