SCAP,Security Content Automation Protocol,即安全内容自动化协议。是由NIST(National Institute of Standards and Technology,美国国家标准与技术研究院)提出,而且NIST还建立了信息安全类产品的SCAP兼容性认证机制。
SCAP协议:
SCAP包含了Protocol(协议)与Content(内容),协议是指SCAP由一系列现有的公开标准构成,这些公开标准被称为SCAP Element(SCAP元素),Protocol规范了这些Element之间如何协同工作。Content指按照Protocol的约定,利用Element描述的生成应用于实际检查工作的数据。
SCAP版本1.0包含六个SCAP元素:XCCDF、OVAL、CVE、CCE、CPE、CVSS。
SCAP元素的三种类型:
1、语言类,用来描述评估内容和评估方法的标准,包括了XCCDF和OVAL(1.2版SCAP添加了OCIL)。
2、枚举类,描述对评估对象或配置项命名格式,并提供遵循这些命名的库,包括了CVE、CCE、CPE;
3、度量类,提供了对评估结果进行量化评分的度量方法,对应的元素是CVSS(1.2版SCAP添加了CCSS)。
SCAP元素关系图:
XCCDF元素:
XCCDF是由NSA(National Security Agency:美国国家安全局)与NIST共同开发,是一种用来定义安全检查单、安全基线、以及其他类似文档的一种描述语言。XCCDF使用标准的XML语言格式按照一定的格式(Schema)对其内容进行描述。在SCAP中,XCCDF完成两件工作:一是描述自动化的配置检查单(Checkilist),二是描述安全配置指南和安全扫描报告。一个XCCDF 文档包含一个或多个Profile,每个Profile可以理解为一个检查单。
OVAL元素:
OVAL由MITRE公司开发,是一种用来定义检查项、脆弱点等技术细节的一种描述语言。OVAL使用了标准的XML格式内容。可以用于分析Windows、Linux等各种操作系统的系统状态、漏洞、配置、补丁等情况,而且还能用于描述测试报告。OVAL的本质是Open(公开)。
CVE元素:
CVE(Common Vulnerabilities andExposures:通用漏洞及披露)是包含了公众已知的信息安全漏洞的信息和披露的集合。CCE(Common Configuration Enumeration:通用配置枚举)是用于描述计算机及设备配置的标准化语言。CPE(Common Platform Enumeration:通用平台枚举)是一种对应用程序、操作系统以及硬件设备进行描述和标识的标准化方案。
CVSS元素:
CVSS(Common Vulnerability Scoring System:通用漏洞评分系统)是一个行业公开标准,其被设计用来评测漏洞的严重程度,并帮助确定其紧急度和重要度。在SCAP版本1.2中,引入了另外两个新标准:OCIL(Open Checklist Interactive Language:开放检查单交互语言)和CCSS(Common Configuration Scoring System:通用配置评分系统)。OCIL能够用来处理安全检查中需要人工交互反馈才能完成的检查项,CCSS作用与CVSS类似,不过CCSS关注的是系统配置缺陷的严重程度。
SCAP内容:
SCAP Content指的是遵照SCAP Protocol标准设计制作的用于自动化评估的数据,其实体是一个或多个XML文件。一般来说正式发布的SCAP Content至少包含两个XML文件,一个是XCCDF,另一个是OVAL,这些文件能够直接输入到各类安全工具中执行实际的系统扫描。Content中也可以包含描述其他SCAPElement的XML文件。按照SCAP Protocol标准组织的多个XML 文件也被称为SCAP Data Stream(SCAP数据流)。
SCAP的中文社区:
地址 -> http://www.scap.org.cn/
(截至目前已经不能正常打开了,不知道为啥)
集成了SCAP框架协议的CVE、CVSS、OVAL、CCE、CPE、CWE等6种网络安全相关标准数据库,可提供用户使用,可以方便的查询CVE漏洞库、OVAL漏洞检查语言、CPE平台列表。
SCAP协议概览 -> http://wiki.scap.org.cn/scap/overview
SCAP开源工具介绍 -> http://www.scap.org.cn/article_home_38.html
开放漏洞与评估语言(OVAL)-> http://wiki.scap.org.cn/oval/architecture
SCAP的开源项目:
1、OpenSCAP由Redhat主导开发,是一个整合了SCAP中各标准的开源框架,其为SCAP的使用者提供了一套简单易用的接口。
OpenSCAP、OVALDi、jOVALDi、eSCAPe等,这些开源项目都会SCAP有一整套的开发和利用体系,其中OpenSCAP、OVALDi用于执行基于SCAP的扫描,而eSCAPe用于SCAPContent的生成。
地址 -> https://www.open-scap.org/
2、SCAP-Workbench,基于OpenSCAP框架的SCAP应用之一。在OpenSCAP框架上实现了简单易用的图形界面,具有配置检查、检查单剪裁、SCAP内容编辑和报表生成等非常实用的功能,SCAP-Workbench使用Python语言开发。
SCAP-Workbench Scanner,扫描器,SCAP-Workbench EditorXCCDF编辑器,可以很方便地编辑或生成XCCDF Benchmark文件。
地址 -> https://fedorahosted.org/scap-workbench/
地址 -> https://github.com/OpenSCAP/scap-workbench/
3、OVALDi由Mitre公司(OVAL语言的始创者)提供,OVALDi根据OVAL Definition(OVAL定义)收集主机的相关信息生成OVALSC(OVAL System Characteristics:OVAL系统概要)文件,通过对OVAL SC文件和标准的OVAL Definition进行对比得到检测结果。OVALDi是跨平台的,能够较好的支持各种操作系统,而且它能够紧跟OVAL技术的发展,但它无法解析SCAP中除OVAL以外的其他元素。
地址 -> http://sourceforge.net/projects/ovaldi/
地址 -> http://usgcb.nist.gov/
4、jOVALDi是一个Java的OVAL开源框架,它实现了诸如OVAL文档解析、执行扫描等常用的功能。jOVALDi是在jOVAL框架的基础上按照OVALDi设计模式使用纯Java语言编写的跨平台OVAL解释器和扫描器。
地址 -> https://github.com/joval/jOVAL