用于安全需求引出的安全本体论
在当今数字化时代,安全需求的有效引出对于保障系统和组织的安全至关重要。本文将介绍一种核心安全本体论,它在安全需求引出过程中具有重要作用。
1. 本体构建概述
本体构建过程包含六个主要步骤:目标、范围、知识获取、概念化、实现和验证。
-
目标
:目标本体的主要目的是提供一个通用平台,包含与安全相关的核心概念(如威胁、漏洞、对策、需求等)的知识。它将支持安全需求的引出以及安全需求工程(SRE)方法和工具的开发,还能作为文献中不同安全本体的元视图,协调安全术语,帮助需求工程师相互沟通。
-
范围
:该本体涵盖安全领域的高级方面(威胁和处理)以及组织方面(安全程序、安全管理流程、资产和人员)。
2. 知识获取
安全知识的获取从标准(如 ISO27000)开始,其他知识来源是文献中存在的不同安全本体。我们分析了约 20 个安全本体,通过对这些本体的系统和句法分析提取相关概念和关系。以下是部分知识来源的简要介绍:
-
ISSRM 模型
:在对风险管理标准、安全相关标准和安全管理方法进行调查后定义。该模型提出的三组概念(资产相关概念、风险相关概念和风险处理相关概念)用于定义本体的三个维度(组织、风险、处理)。
-
Fenz 等人的本体
:用于建模信息安全领域。我们复用了该本体的一些概念和关系,特别是与组织基础设施(资产、组织)、威胁与资产之间以及威胁与漏洞之间的关系,还复用了一些标准控制来定义我们的安全需求。
-
Lashras 等人的安全需求本体
:对定义我们本体中的安全需求很有用。
知识获取和概念化阶段的流程如下:
graph LR
A[知识来源(不同本体)] --> B[概念对齐]
B --> C[概念化(借助专家和文档)]
C --> D[生成本体概念]
3. 概念化
基于知识获取步骤的结果,将概念组织和结构化在一个术语表中,并考虑它们之间的各种关系,形成本体的概念模型。概念和关系的名称根据源本体中名称的出现次数选择,同时咨询了 5 位安全专家进行验证和细化。概念围绕三个主要维度组织:
-
组织维度
:
-
组织
:包含人力、硬件和软件资源(资产)的结构。
-
人员
:代表人类代理,可能是组织内部人员(如管理员)或外部人员(如客户)。
-
资产
:有价值的资源,包括有形资产(如空调、灭火器、计算机)和无形资产(如软件、数据、工业制造过程)。
-
位置
:定义资产的位置,可以是实体物理位置或存储在数据库中的信息。
-
风险维度
:
-
风险
:漏洞和威胁的组合,会对一个或多个资产造成损害。
-
严重程度
:风险的级别,如高、中、低。
-
威胁
:违反安全准则的情况,可能是自然的、意外的或故意的(攻击)。
-
漏洞
:资产或资产组的弱点,可被一个或多个威胁利用。
-
影响
:从简单的可用性损失到整个信息系统控制的丧失,也可能对公司形象造成损害。
-
威胁代理
:实施威胁的人(或程序)。
-
攻击方法
:威胁代理用于实施攻击的不同方法,如嗅探、欺骗、社会工程。
-
攻击工具
:用于执行攻击的工具,如 Wireshark、Subterfuge、Nmap 等。
-
处理维度
:
-
安全目标
:利益相关者/组织希望在未来实现的安全目标。
-
安全需求
:为实现安全目标和减轻风险而需要满足的环境条件。
-
控制
:保护资产和实现安全需求的手段,如警报或密码。
-
安全准则
:定义安全属性,如保密性、完整性、可用性和可追溯性。
-
需求文档
:记录保护资产所需的安全需求的文档,主要包括安全策略和规范文档。
本体中概念之间的关系分为四种:IsA、HasA、SubClassOf 和 AssociatedTo。以下是部分关系的简要描述:
|关系类型|描述|
| ---- | ---- |
|Has_Asset|组织拥有资产|
|Has_Location|资产可能有位置|
|SubClassOf|有形和无形资产是资产概念的子类|
|Has_Person|组织包含与之打交道的人员|
|Threatens|资产受到一个或多个威胁|
|Exploits|威胁利用资产中的漏洞|
|LeadBy|威胁代理发起攻击|
|UseMethod|威胁代理使用攻击方法|
|UseTool|威胁代理使用攻击工具|
|Implies|威胁意味着影响|
|Affect|影响影响一个或多个资产|
|SubClassOf|威胁可以是自然的、故意的或意外的|
|Generate|威胁产生具有一定严重程度的风险|
|Mitigate|安全需求减轻风险|
|Satisfy|安全需求满足利益相关者表达的安全目标|
|Fulfills|安全需求满足一个或多个安全准则|
|Enable|控制使安全需求得以实现|
|Includes|安全策略和规范文档包含安全需求|
此外,本体还包含属性和公理。部分属性如下表所示:
|概念|属性|值类型|
| ---- | ---- | ---- |
|人员|电话号码|整数|
|软件|版本|字符串|
|需求文档|版本|字符串|
|密码|最小长度|可变字符|
4. 本体实现
在不同的本体编辑器中,选择了 Protégé(版本 3.4.8),因为它是一个可扩展、平台独立的环境,用于创建、编辑、查看、检查约束和提取本体和知识库。使用 OWL 1.0 开发本体,并使用 SQWRL 进行查询。为了使本体对不熟悉 Protégé 和 SQWRL 的最终用户也可用,开发了基于 Eclipse 的交互式环境。其架构如下:
graph LR
A[用户] --> B[交互式环境]
B --> C[生成 SQWRL 查询和规则]
C --> D[Protégé]
D --> E[处理查询]
E --> B[返回结果]
B --> F[生成规范文档]
交互式环境的用户界面包含三个主要窗口:有价值资产识别、风险分析和安全需求引出。用户可以选择组织、查看人员和资产信息、选择要保护的资产,系统会显示相应的威胁、漏洞和安全需求。点击“保存”按钮可生成总结分析结果和相关安全需求的规范文档。
5. 评估
为了评估本体的质量,重点关注以下三个标准:
-
完整性
:通过将目标本体与文献中提取的其他本体进行映射来评估。绘制了对齐表,比较了我们本体的概念与安全需求工程文献中安全本体的概念。
|概念|Daramola 等人|Ivankina 等人|Lashras 等人|Salini 等人|Dritsas 等人|
| ---- | ---- | ---- | ---- | ---- | ---- |
|资产|资产|资产|资产|资产|资产|
|位置|-|-|-|-|-|
|组织|-|-|-|-|-|
|人员|-|-|-|利益相关者|利益相关者|
|威胁|威胁/主动攻击|-|威胁|威胁|威胁/蓄意攻击|
|漏洞|-|威胁原因|-|漏洞|漏洞|
|风险|-|-|风险|-|-|
|严重程度|-|-|评估标准|-|-|
|影响|-|-|-|影响严重程度|-|
|威胁代理|-|-|-|-|攻击者|
|攻击工具|-|-|-|-|-|
|攻击方法|代码注入|-|-|-|-|
|安全目标|-|-|-|-|目标|
|安全准则|-|-|-|安全目标|-|
|安全需求|安全需求|-|处理|安全需求|安全需求|
|控制|-|-|安全防护|-|对策|
-
有效性
:检查本体使用其术语为一组问题提供可靠答案的能力。
-
可用性
:指本体在特定使用环境中,能被指定用户有效、高效和满意地用于实现指定目标的程度。证明本体可用于安全需求引出,并能在不同项目中复用。
通过以上内容,我们详细介绍了用于安全需求引出的安全本体的构建、概念化、实现和评估过程,该本体为安全需求工程提供了有价值的支持。
用于安全需求引出的安全本体论
6. 完整性评估深入分析
在完整性评估中,通过对齐表对比发现,我们的本体在概念覆盖上有其独特之处。虽然部分本体在某些概念上有重合,如多个本体都有“资产”概念,但我们的本体涵盖了更广泛的概念范围。例如,“位置”概念在其他部分本体中缺失,而在我们的本体中它是组织维度的重要组成部分,能更全面地描述资产的属性。
从对齐结果来看,不同本体在概念的命名和分类上存在差异。比如“威胁”概念,有的本体将其细分为“威胁/主动攻击”“威胁/蓄意攻击”等,而我们的本体采用更通用的“威胁”表述,同时通过“SubClassOf”关系明确其可以是自然、故意或意外的类型,这种处理方式使得概念更加清晰和统一。
通过完整性评估,我们可以看到我们的本体在整合现有知识方面具有优势,能够将不同本体中的相关概念进行有效融合,为安全需求引出提供更全面的知识支持。
7. 有效性评估的重要性及方法
有效性评估是确保本体质量的关键环节。一个有效的本体应该能够准确地使用其术语为相关问题提供可靠的答案。在实际应用中,安全需求工程师在进行安全需求引出时,会基于本体中的概念和关系提出各种问题,如“某个资产面临哪些威胁?”“如何减轻特定风险?”等。
为了评估有效性,我们可以设计一系列具有代表性的问题集,涵盖本体所涉及的各个维度和概念。例如,针对风险维度,可以提出关于威胁与漏洞关系的问题;针对处理维度,可以询问安全需求与安全目标的满足情况等。然后使用本体的术语和推理机制来回答这些问题,并验证答案的准确性和可靠性。
通过有效性评估,能够发现本体中可能存在的概念定义不清晰、关系不准确等问题,从而对本体进行进一步的优化和完善,提高其在实际应用中的价值。
8. 可用性评估的实际意义
可用性评估关注的是本体在实际使用中的效果。在安全需求引出的场景中,本体的可用性直接影响到需求工程师的工作效率和质量。一个可用性高的本体应该能够让需求工程师轻松地获取所需的安全知识,快速准确地引出安全需求。
在我们开发的基于 Eclipse 的交互式环境中,通过一系列的设计来提高本体的可用性。例如,用户界面的布局清晰,包含有价值资产识别、风险分析和安全需求引出三个主要窗口,方便用户进行操作。用户可以直观地选择组织、查看人员和资产信息,系统会自动显示相应的威胁、漏洞和安全需求,减少了用户的操作成本和认知负担。
此外,可用性评估还可以通过用户反馈来进行。收集需求工程师在使用本体和交互式环境过程中的意见和建议,了解他们在实际操作中遇到的问题和困难,从而针对性地对本体和环境进行改进,使其更加符合用户的需求。
9. 本体的应用场景拓展
除了安全需求引出,该本体还可以应用于其他相关领域。例如,在安全审计中,可以利用本体中的概念和关系对组织的安全状况进行全面评估。通过分析资产、威胁、漏洞等信息,发现潜在的安全风险,并提出相应的改进建议。
在安全培训方面,本体可以作为一种知识资源,为培训人员提供系统的安全知识体系。通过展示本体中的概念和关系,帮助学员更好地理解安全领域的各种要素和它们之间的相互作用。
在安全策略制定中,本体可以为制定科学合理的安全策略提供支持。根据本体中对安全目标、安全需求和控制的定义,结合组织的实际情况,制定出符合组织需求的安全策略。
10. 未来发展方向
虽然该本体已经在安全需求引出方面取得了一定的成果,但仍有一些方面可以进一步发展。
在知识更新方面,随着安全领域的不断发展,新的威胁、漏洞和安全技术不断涌现。因此,需要建立一种机制,定期更新本体中的知识,确保其能够反映最新的安全状况。
在与其他系统的集成方面,可以考虑将本体与企业的信息系统、安全管理系统等进行集成,实现数据的共享和交互。这样可以更好地发挥本体的作用,为企业的安全管理提供更全面的支持。
在智能化方面,可以引入人工智能技术,如机器学习、自然语言处理等,对本体进行进一步的挖掘和分析。例如,利用机器学习算法预测潜在的安全威胁,利用自然语言处理技术实现用户与本体的自然交互。
通过以上的分析和探讨,我们可以看到用于安全需求引出的安全本体具有重要的价值和广阔的发展前景。通过不断地完善和拓展,它将在安全领域发挥更加重要的作用。
超级会员免费看
17

被折叠的 条评论
为什么被折叠?



