面向综合化航空电子的MILS架构安全性评估:CC-AHP-GRAP方法详解

本文探讨了综合化航空电子系统面临的安全挑战及MILS架构优势,并提出一种结合通用准则(CC)、层次分析法(AHP)与灰色关联分析法(GRAP)的定量安全评估方法,详细阐述其在MILS系统中的实践应用。

综合化航空电子系统的发展

  • 发展历程: 航空电子系统架构经历了四个阶段:分立式、联合式、综合式和高度综合式 。
  • 未来趋势: 未来的系统将朝着更加综合化、模块化、通用化和智能化的方向发展 。
  • 核心设计理念:
    • 综合化设计: 将整个航空电子系统视为单一子系统进行顶层优化设计,以压缩体积、减轻重量、降低成本并提高可靠性 。
    • 模块化设计: 将完整功能浓缩于标准电子模块 (LRM) 中,这是实现系统结构简化和重构的基础 。
    • 通用化设计: 在系统中最大限度地使用相同类型的模块,以提高后勤保障能力和重构能力 。
    • 智能化设计: 利用先进计算机技术,为飞行员提供实时决策辅助和自动目标处理能力

2. 相关标准与规范

  • ASAAC: 联合标准航空电子结构委员会 (ASAAC) 的目标是为未来的军用飞机制定一套开放的标准和指南,以降低全寿命周期费用、改善系统性能 。其发布的标准体系结构涵盖软件、通信、模块、封装以及系统管理、安全、容错等指导原则 。

安全威胁与需求

主要威胁: 综合化系统因资源高度共享和互联互通,面临着窃听、病毒攻击、非法篡改、非授权访问、物理攻击等多种安全威胁 。这些威胁分别对系统的机密性、完整性和可用性造成不同程度的影响 。

安全需求: 针对上述威胁,系统必须具备以下能力 :

保护敏感数据在存储、处理和传输过程中的机密性、完整性和可用性 。

与地面进行安全的数据交换 。

在紧急情况下(如被捕获)删除敏感数据 。

具备多层次的访问控制策略 。

能够划分数据安全级别,并防止高级别数据流向低级别实体 。

能够识别和记录审计事件 。

确保安全策略的部署不影响核心系统性能 。

安全性评估方法的发展

演进路线: 国际上针对计算机安全的评估标准经历了从美国国防部的TCSEC(橘皮书),到欧洲的ITSEC(白皮书),最终发展到由六国联合提出并成为国际标准的CC(通用准则,ISO 15408)。这一发展历程如图1.2所示 。

研究意义

目前的综合化航空电子系统 ASAAC 规范提出相应的信息安全、可靠性等需求,但是没有从体系结构上根本的解决其大量代码的安全性问题。本文的研究是对完善 ASAAC 规范具有重要意义。 航空电子系统高复杂性对系统安全性的评估方法提出了新的要求,快速成本的安全性评估方法成为航空电子系统的迫切需求。利用层次分析法(AHP)与灰度关联分析法(GRAP),本文改进了通用准则(CC)信息安全评估方法,使其能够从定性和定量两个方面进行安全性评估。

第二章:综合化航空电子体系结构 (ASAAC vs. MILS)

本章深入剖析了两种典型的航空电子系统软件架构,指出了传统ASAAC架构的缺陷,并论证了MILS架构在安全性与可评估性方面的优势。

1. ASAAC 标准系统架构

  • 三层软件体系结构: 这是ASAAC的核心软件模型 。

    应用层 (AL): 包含与特定飞机任务相关的应用软件,具有飞机依赖性但硬件无关性 。

    操作系统层 (OSL): 包含操作系统和通用系统管理(GSM)等,与飞机和硬件均无关,提高了软件的可移植性 。

    模块支撑层 (MSL): 封装了底层硬件的驱动和管理,具有硬件依赖性 。

    标准接口: APOS(应用层与操作系统层之间)和 MOS(操作系统层与模块支撑层之间)是实现各层独立性的关键 。

    分层级系统管理: 系统管理分为位于应用层的应用管理(AM)和位于操作系统层的通用系统管理(GSM) 。GSM自身也采用分层结构,分为飞机级(AC)、综合区级(IA)和资源单元级(RE) 。GSM包含四大功能:健康监控(HM)、故障管理(FM)、配置管理(CM)和安全管理(SM) 。

  • ASAAC架构的缺陷:

    • 硬件/底层设计复杂: 规范要求如内存分区、可信功能调用、数据加密等大量安全功能在MSL层或硬件层实现,这极大地增加了设计难度和成本 。
    • 系统层功能负载过高: 消息加密、认证、审计日志等核心安全功能被集中在OSL层,导致系统层功能繁杂、耦合度高、资源消耗大,给安全性评估带来了巨大困难 。

2. MILS (多层独立安全/保障) 架构

产生背景: MILS架构的提出是为了解决传统可信计算基 (TCB) 过于庞大、复杂、难以评估的问题 。

核心思想: MILS架构的基石是 “隔离” (Isolation) 。它旨在将系统分解为小的、独立的、可评估的模块 。

MILS分层体系结构:

  • 分区内核层 (Partition Kernel, PK): 这是MILS架构的最底层 。它是一个极简化的内核,其

    唯一职责是提供进程间的时空隔离,即确保一个分区中的进程无法访问另一个分区的内存空间,并且只能在分配给它的时间片内运行 。

  • 安全中间件层: 传统操作系统中的设备驱动、文件系统、网络服务等功能,在MILS中被从内核中剥离,作为独立的中间件服务运行在各自隔离的分区中 。这一层是提供安全服务的核心 。

  • 应用服务层: 诸如加密机、防火墙等高级安全应用也运行在各自独立的顶层分区中,与其他组件完全隔离 。

MILS架构的优势:

  • 代码分散: 内核代码量极小(约4000多行),其他安全组件也被分解为小于100K的代码模块 。
  • 安全性强: 由于内核强制隔离,一个分区的漏洞和错误不会直接影响到其他分区,增强了整个系统的安全性 。
  • 实时性强: 轻量化的内核与组件使得系统能快速响应,满足航空电子系统的高实时性要求
  • 易于评估: 这是最关键的优势。由于系统由众多小而独立的模块构成,评估机构可以对每个模块独立进行安全性评估,极大地降低了评估的成本、时间与复杂性 。

第三章 综合化航空电子安全性评估方法

旨在解决传统CC(通用准则)评估方法无法进行定量分析的根本性问题。为此,作者提出了一套融合了CC框架、层次分析法(AHP)和灰色关联分析法(GRAP)的全新评估方法。

3.1 CC评估方法基础

本节首先介绍了作为评估基础的国际标准——通用准则(CC, Common Criteria)。

  • 核心概念:
    • 评估对象 (TOE): 作为评估主体的IT产品或系统 。
    • 保护轮廓 (PP): 针对某一TOE,独立于具体实现的一组安全要求 。
    • 安全目标 (ST): 针对一个特定TOE的一组安全要求和规范,是评估的基础 。
    • 评估保证级 (EAL): 代表了评估可信度的一个预定等级(EAL1-EAL7),衡量的是安全措施的保证程度而非功能本身 。
  • 核心思想:
    1. 功能与保证分离: CC将产品的安全“功能要求”和确保功能被正确实现的“保证要求”相分离,可以独立评估 。
    2. 安全工程思想: 强调在开发、评估、使用的全生命周期中实施安全工程,以确保产品安全性 。
  • 评估流程: 整个流程围绕PP、ST和TOE展开。开发者通常会依据某个PP来编写特定产品的ST,然后评估机构依据这个ST来对TOE进行评估,最终得出“通过/未通过”的结论 。

3.2 CC评估存在的问题

本节明确指出了驱动本文研究的痛点,即传统CC评估方法的局限性。

  • 流程复杂且昂贵: CC评估是一个复杂、耗时、成本高昂的过程,且缺乏高效的辅助工具 。
  • ST编写难度大: 编写一份既能准确描述TOE安全特性又符合CC规范的ST文档,对技术人员要求很高 。
  • 根本缺陷:无法定量评估: 这是最核心的问题。CC评估只能给出定性的“通过/未通过”结论 。如果一个目标为EAL5的系统评估失败,CC无法告知该系统实际达到了哪个级别(例如EAL4),也无法量化其与目标等级的差距 。

3.3 CC-AHP与CC-GRAP评估方法

为解决上述问题,作者提出了融合AHP与GRAP的定量评估方法。该方法分为两个关键阶段:使用AHP确定各安全指标的重要性权重,再使用GRAP计算系统对各安全等级的符合度,最终得出定量结论。

第一阶段:使用层次分析法 (AHP) 确定权重

首先,它把复杂问题分解成各个因素,又将这些因素按支配关系分组形成递阶层次结构;然后依据人们对客观现实的判断通过两两比较的方式确定层次中诸因素的相对重要性,给予定量表示,再利用数学方法确定每一层次全部因素相对重要性次序的权值;最后综合决策者的判断, 综合计算决策方案相对重要性的总排序。

  • 原理: AHP将复杂的决策问题分解为有序的层次,通过专家进行两两比较,将主观判断转化为客观的权重数值。

  • 算法流程:

    1. 建立评估判定树: 根据CC的功能要求分类(类-族-组件),建立一个从“综合安全性能”总目标到最底层具体安全组件的层次化树状结构 。

    2. 构造判断矩阵: 专家使用1-9标度法,对同一层次的各个元素进行两两重要性比较,形成正互反判断矩阵 U 。

    3. 计算权重向量 (层次单排序): 计算判断矩阵的最大特征根 λmax 所对应的特征向量,经过归一化处理后,即为该层各元素的权重向量 W。论文中提及采用简化的方根法计算权重 wi :

      其中 uij 是判断矩阵的元素 。

    4. 一致性检验: 为保证专家判断的逻辑一致性,需计算一致性比率 CR。

      • 计算最大特征根:

      • 计算一致性指标:

      • 计算一致性比率:

      • 只有当 CR<0.10 时,判断才被认为是有效的 。

    5. 计算总权重: 逐层计算,最终得到每个底层组件相对于总目标的最终权重,形成权重向量 P=[P1,P2,…,Pn] 。

第二阶段:使用灰色关联分析法 (GRAP) 计算等级

  • 原理: 灰色关联分析法通过比较不同数据序列几何形状的相似程度,来判断它们的关联度。在这里,它被用来比较“专家对系统各组件的实际评分序列”与“理想安全等级的评分序列”之间的相似度。

  • 算法流程:

    1. 建立评估矩阵: 邀请专家对每个底层组件 k 进行打分,给出其符合各个安全等级 i (Level 1, Level 2…) 的可能性(隶属度)ωi(k),形成一个评估矩阵 [ω] 。

    2. 确定参考序列 (理想序列): 将每个组件在所有等级中的最高分值挑出,组成最优参考序列 ω0 。

      ω0(k)=imax(ωi(k))这代表了该组件最理想的表现 。

    3. 计算关联系数: 计算每个实际评分点与理想点之间的“关联系数” ξi(k)。

      其中 ρ 是分辨系数,通常取0.5 。这个系数衡量了“实际”与“理想”的接近程度。所有这些系数构成一个关联系数矩阵 E

    4. 计算加权关联度: 这是最后一步,将AHP的“重要性”与GRAP的“符合度”结合。通过矩阵乘法,用权重向量 P 去加权关联系数矩阵 E :

    5. 得出最终等级: 计算结果 R 是一个向量, R=[r1,r2,…,rm],其中 ri 是系统与安全等级 i 的总关联度。向量中值最大者所对应的等级,即为该系统的最终定量评估等级 。

3.4 方法优势分析

作者总结了该方法的四大优势:

  1. 科学公平: 融合了专家经验和严谨的数学模型,过程科学且公平 。
  2. 简化过程: 为评估复杂系统提供了一种简化的思路 。
  3. 客观实用: 综合考虑了指标权重和隐性联系,减少了主观影响,实用性强 。
  4. 定量评估: 根本上解决了传统CC评估只能定性的问题,能够在一次评估中得出系统具体的安全等级 。

第四章:MILS系统安全性评估 (理论方法的实践验证)

本章的核心功能是作为第三章所提出的创新评估方法的一次完整、详尽的实践验证。它详细记录了研究者如何将CC-AHP与CC-GRAP这套理论框架,应用到他们所设计的、基于MILS架构的“机载综合核心处理系统安全管理软件”这一具体评估对象(TOE)上。

4.1 MILS系统安全评估指标体系的建立

  • 理论与系统知识: 建立一个科学的评估指标体系是进行任何有效评估的前提 。这个过程必须紧密结合评估对象的具体特征 。对于本论文的评估对象——一个基于MILS架构的航空电子系统,其指标体系的建立融合了两个方面的知识:

    1. 通用准则(CC)框架: 采用CC国际标准中“类-族-组件”的层次化结构作为指标体系的骨架,保证了评估的权威性和规范性 。
    2. MILS架构特性: 深入分析MILS系统的安全构成,例如其依赖分区内核实现时空隔离、依赖中间件实现密钥管理和身份认证等 。
  • 具体实现过程:

    1. 确定顶层指标: 研究者从CC的11个安全类中,挑选出与MILS航空电子系统最相关的6个,作为指标体系的最高准则层:FAU(安全审计)、FCO(通信)、FDP(用户数据保护)、FIA(标识与鉴别)、FRU(资源利用)和FCS(密码支撑) 。

    2. 构建评估判定树: 将这6个大类向下逐层分解,直至最底层的、可直接评估的具体组件,最终构建了一棵专属于此MILS系统的、详细的评估判定树(如图4.4所示) 。

    3. 映射至真实系统: 为了确保评估不脱离实际,研究者将这棵抽象的指标树上的每个组件,都与他们所实现的软件模块或MILS架构的底层功能进行了明确的映射(如表4.1所示) 。例如,指标

      FRU_FAU.1(容错)和FRU_DIS.1(资源分配)直接映射到由INTEGRITY-178B操作系统提供的核心时空隔离与资源调度功能上。这一步骤将抽象的评估理论与具体的工程实践紧密地联系起来。

4.2 基于CC-AHP方法的MILS安全性评估

  • 数学原理: 本节的目的是应用第三章阐述的层次分析法(AHP),来定量计算4.1节建立的指标体系中,每一个指标的相对重要性权重

  • 算法执行与数据呈现:

    1. 构造判断矩阵: 论文的核心工作之一是展示了专家组进行两两比较后的原始数据,即一系列的判断矩阵(见表4.2至表4.12) 。这些矩阵是AHP算法的输入。例如,在表4.2中,“通信(A4)”对“密码支撑(A3)”的重要性值为7/3,这一定量判断来自于专家的专业知识 。

    2. 计算各层级权重: 应用AHP的权重计算公式(如公式3-2),对上述每个矩阵进行计算,得出了各层元素的相对权重W,并列在每个表格的最后一列 。

    3. 计算最终合成权重: 将所有层级的权重进行综合计算,最终得出了每个最底层组件相对于“综合航电安全性能”总目标的最终权重值 。这些结果被汇总在表4.13中 。例如,通过计算,“任何行动前的用户鉴别”(FIA_UAU.2)的最终权重为0.066,而“审计查阅”(FAU_SAR.1)的最终权重仅为0.006,这精确地反映了专家认为前者比后者对系统整体安全性的贡献要大得多 。

4.3 基于CC-GRAP方法的MILS安全性评估

  • 数学原理: 本节应用第三章阐述的灰色关联分析法(GRAP),其目的是处理专家对系统各组件性能的“模糊”或“不确定”的评分,并结合AHP的权重,计算出系统最终的定量安全等级。

  • 算法执行与数据呈现:

    1. 专家性能评分: 这是GRAP算法的数据输入阶段。专家组对第四章中评估的软件系统进行逐项打分,给出了每个组件符合各个安全等级(Level 1-5)的可能性分布 。这些关键的原始数据被呈现在表4.14“组件安全等级评估表”中 。例如,FDP_UCT.1 (TSF间用户数据传送的保密性) 被认为有80%的可能性达到Level 4水平 。

    2. 确定参考序列: 算法首先根据表4.14的数据,确定每个组件的理想最优表现序列ω₀(即每行的最大值) 。

    3. 计算关联系数: 运用GRAP的核心公式(3-13),计算实际评分序列与理想参考序列之间的关联系数,最终生成了关联系数矩阵E 。这个矩阵中的每一个值,都代表了某个组件在某个安全等级上的表现与最理想表现的“接近程度”。

    4. 计算加权关联度(最终综合评估): 这是得出最终结论的一步。将AHP计算出的权重向量P与GRAP计算出的关联系数矩阵E进行矩阵乘法:

      论文中给出了具体的向量和矩阵:

      • 权重向量 P=[0.041,0.066,0.022,0.041,0.022,0.039,0.039,0.070,0.018,0.039,0.018,0.025,0.115,0.115,0.011,0.033,0.006,0.031,0.006,0.014,0.032,0.099,0.099]

      • 关联系数矩阵E 。

      • 最终计算出的结果向量

        R=[0.736,0.755,0.992,1.156,0.929]

    5. 得出结论: 对结果向量R进行分析,其中第四个元素的值1.156为最大值 。根据评估方法的定义,这表明该系统的整体安全性能与Level 4的关联度最高。因此,本次评估的最终定量结论是:

      该综合化航空电子系统的安全性达到了CC规定的EAL-4级

第五章 软件设计与实现

5.1 开发环境:构建安全软件的基石

要构建一个高安全性的软件,首先需要一个安全可靠的“地基”。本节介绍了软件所依赖的操作系统和开发工具。

  • 操作系统: INTEGRITY-178B
    • 系统知识与理论: INTEGRITY-178B是Green Hills公司开发的一款强实时、高安全等级的嵌入式操作系统,专门用于军事、航空等安全关键领域 。它的核心设计完全基于第二章中论述的、以“隔离”为精髓的MILS(多层独立安全)架构
    • 核心安全机制1:分区 (Partitioning): 这是该操作系统实现安全隔离的根本技术,借鉴了航空电子标准ARINC 653的核心理念 。
      • 空间隔离: 操作系统利用CPU的内存管理单元(MMU),为每一个应用程序(在系统中称为一个“分区”)创建一个完全独立的虚拟地址空间 。这意味着,即便A分区的程序出现崩溃或被恶意代码控制,它也从物理上无法访问或破坏B分区的内存数据,如同住在两个完全隔离的房间。
      • 时间隔离: 采用一种先进的两级结构化调度机制 。操作系统层面(第一级)使用一个固定的、周期性的调度表,严格地将CPU“时间片”分配给各个分区,确保每个分区都能获得其预定的运行时间 。在分区内部(第二级),可以再按优先级来调度自己的任务 。这从根本上杜绝了某个分区因死循环等问题霸占CPU,从而导致其他关键任务“饿死”的风险。
    • 核心安全机制2:安全虚拟化技术 (Padded Cell): 这是一项让INTEGRITY-178B与众不同的技术。它允许一个完整的、低安全等级的通用操作系统(如Windows或Linux)作为一个普通的用户级进程,运行在INTEGRITY的一个隔离分区内 。这个分区就像一个坚固的“软垫囚室”(Padded Cell),即使里面的通用系统被病毒感染或完全崩溃,也丝毫不会影响到INTEGRITY内核以及其他高安全分区的稳定运行 。
  • 开发工具: MULTI 工具集
    • 这是一个与INTEGRITY操作系统配套的集成开发环境(IDE),为开发者提供从代码编辑、编译、性能分析到图形化调试的全套工具链 。

5.2 安全管理平台设计与实现

本节是本章的主体,详细描述了安全软件的内部结构和关键模块(密钥管理系统、访问控制系统、消息鉴别系统进行了详细的实现说明)的实现原理。

  • 软件整体体系结构 (图5.2)

    • 该平台严格遵循MILS分层思想,其结构与第二章描述的MILS架构一致 。
    • 分区内核层(PK层): 即底层的INTEGRITY-178B操作系统,提供最基础的隔离保障。
    • 安全中间件层(作者主要实现): 这是作者团队实现的核心部分。它包含一个“安全代理(Security Master)”作为安全服务的中枢,以及一系列独立的安全功能模块,如密钥管理、身份认证、访问控制等,为上层提供服务 。
    • 应用服务层: 运行具体的数据加密等安全应用。
  • 核心模块实现原理:

    1. 密钥管理系统 (Key Management System, 5.2.2)

      • 设计原理: 负责系统中所有密钥“从出生到死亡”的全生命周期管理,包括产生、存储、分发、使用和销毁 。

      • 实现细节:

        • 密钥体系: 采用混合加密体系。使用AES对称密钥进行高速的消息加解密 ;使用一个更高级别的“主密钥(MEK)”来加密存储在非易失性存储器(MMM)中的敏感文件 ;同时,为了保护这个至关重要的MEK本身,又使用了安全性极高的ECC非对称加密算法来对MEK进行加密 。

        • 生命周期流程: 密钥在PC机上预先生成并完成加密封装,然后加载到机载系统的MMM中 。系统运行时,顶层的安全管理模块(AC-GSM-SM)用自己持有的ECC私钥解密出MEK,然后再用MEK去解密和管理其他业务密钥 。在向其他下级模块分发密钥时,为了保证通道安全,采用了

          迪菲-赫尔曼(Diffie-Hellman, D-H)密钥交换协议来动态协商出临时的会话密钥,用以加密传输的密钥内容 。

        • 软件接口: 该模块向其他模块提供了三个清晰的API函数调用:SM_Get_Authen_Key (获取认证密钥)、SM_Get_MsgEn_Key (获取消息加密密钥)、SM_Get_Integrity_Key (获取完整性校验密钥) 。

    2. 访问控制软件 (Access Control Module, 5.2.3)

      • 设计原理: 控制哪个“主体”(如一个分区)能对哪个“客体”(如一个文件)进行何种“操作”(如读、写)。其思想源于经典的BLP (Bell-LaPadula)强制访问控制模型

      • 实现流程 (依据图5.10):

        1. 当一个分区请求访问某个文件时,请求被发往访问控制模块 。

        2. 模块分别查询预设的配置表,获取该分区(主体)和该文件(客体)的

          安全等级

        3. 模块查询

          访问控制策略表,根据“主体等级”和“客体等级”,判断所请求的操作是否被允许(例如,经典的“下读上写”策略,即低密级主体可以读高密级客体,但不能向其写入) 。

        4. 最后返回“授权”或“拒绝”的决定 。

    3. 消息鉴别软件 (Message Authentication Module, 5.2.4)

      • 设计原理: 用于保证消息在网络传输过程中的完整性,即确认消息没有被第三方篡改。其技术核心是消息鉴别码 (MAC)

      • 实现流程 (依据图5.11):

        1. 发送方: 从密钥管理模块获取与接收方共享的密钥。使用这个密钥和一种哈希函数(如SHA-256)对原始消息进行运算,生成一个固定长度的MAC值(摘要)。然后将这个MAC附加到原始消息的末尾,一同发送 。
        2. 接收方: 收到消息后,将消息体和MAC分开。用自己存储的同一个共享密钥和哈希函数,对消息体进行完全相同的运算,也生成一个MAC值 。
        3. 比较: 比较自己生成的MAC和从消息中收到的MAC。如果两者一模一样,则证明消息是完整的、未经篡改的;否则,立即丢弃该消息 。

5.3 软件测试

  • 测试设计: 由于无法进行全系统集成测试,作者设计了一个精巧的模拟测试方案。该方案在真实的硬件平台上,创建了6个互相隔离的分区,模拟了两个应用实体通过各自的操作系统和安全管理模块进行安全通信的完整过程,以此来触发和验证上述所有安全功能 。

  • 结果分析: 论文在5.3.4节中展示了详细的程序运行日志,并进行了分析。这些日志清晰地记录了:

    • 系统正确识别出需要安全处理的消息 。

    • 密钥管理模块根据消息的通道ID,准确地取出了对应的加密密钥 (

      ***MsgEncryption: The MsgEncryption key ...) 。

    • 消息鉴别模块成功地验证了消息的MAC值,确认了完整性 (

      ***IntegrityCheck: success! abstract0 is same as abstract!!) 。

    • 身份认证模块成功地验证了消息的时间戳和签名,确认了发送方身份 (

      ***Authentication: success! signature1 is same as signature0!) 。

  • 测试结论: 模拟测试结果有力地证明,作者设计的这套安全管理软件,其结构是正确的,功能是可行的,能够有效保障综合化航空电子系统中消息和数据的机密性、完整性和身份的真实性 。

留言讨论

0 条留言

正在加载留言...