390 likes | 677 Views
第二届中国信息安全博士论坛 —— 可信计算平台测评理论与技术. 空天信息安全与可信计算教育部重点实验室 武汉大学计算机学院 汇报人:徐明迪 2009 年 7 月 18 日. 报告提纲. 二. 一. 三. 可信计算平台测评概念. 1. 可信计算平台测评系统. 总结. 一、可信计算平台测评概念. 可信计算平台测评 可信计算产品已经开始走向应用 几乎所有的著名笔记本电脑都配置了 TPM 芯片 OpenTC 和 IBM 分别各自推出了开源的可信计算软件 我国政策规定
E N D
第二届中国信息安全博士论坛——可信计算平台测评理论与技术第二届中国信息安全博士论坛——可信计算平台测评理论与技术 空天信息安全与可信计算教育部重点实验室 武汉大学计算机学院 汇报人:徐明迪 2009年7月18日
报告提纲 二 一 三 可信计算平台测评概念 1 可信计算平台测评系统 总结
一、可信计算平台测评概念 可信计算平台测评 可信计算产品已经开始走向应用 几乎所有的著名笔记本电脑都配置了TPM芯片 OpenTC和IBM分别各自推出了开源的可信计算软件 我国政策规定 根据《中国国家信息安全测评认证管理办法》的规定,信息安全产品必须经过测评认证才能实际应用 可信计算平台测评 可信计算平台的标准一致性测试 可信计算平台的安全性测试 可信计算平台的可靠性测试
一、可信计算平台测评概念 国内外研究现状 德国波鸿大学 发现主流的TPM在不同程度上都存在与标准不符合的问题 匈牙利布达佩斯大学 将白盒测试和Fuzzing技术相结合,发现OpenTC项目中的TSS的若干Bug和远程溢出安全漏洞 中国科学院软件所 TCM、TSM测试 国内外尚没有可信计算平台测评的完整的理论、技术和测评系统
报告提纲 一 二 三 可信计算平台测评概念 1 可信计算平台测评系统 总结
二、可信计算平台测评系统 • 测试依据 • TCG的规范 • 我国国家密码管理局制定的《可信计算平台密码方案》、《可信计算密码支撑平台功能与接口规范》和国信办主持制定的一系列可信计算技术规范。 • 提出“一套框架多套技术” • 测评对象:可信计算平台的主要可信特征 • 测评层次:TPM,信任链,TSS
二、可信计算平台测评系统 可信计算平台安全测评理论与技术 • 可信计算平台可信特征描述方法 • 可信计算平台的测试方法 • 可信计算平台安全评估方法 TCP测评 可信计算平台安全测评原型系统 • 可信计算平台安全规范标准一致性测试 子系统 • 可信计算平台安全规范漏洞扫描测试 子系统 • 可信计算平台安全规范渗透性测试子 系统
1、可信特征描述方法 • 信任链特征描述 —可信PC信任链交互模型 • 为了能够抽象出信任链规范中的角色进程,建立不同角色之间的交互关系,我们将可信计算平台抽象为三个实体: • 可信平台模块(TPM) • 可信度量根(RTM) • 软硬件所组成的系统(System)
1、可信特征描述方法 信任链特征描述(Cont.) —基于Biba模型的TCG信任链安全性分析 依据Biba模型将信任链中的节点分为主体和客体 根据信任链的传递次序给节点建立安全级别 将信任链中的度量操作、创建日志操作和迭代PCR操作转换为“读”、“写”、“执行”和“追加”操作 分析信任链建立过程中是否存在违背安全规则的行为
1、可信特征描述方法 • TPM 特征描述 ——TPM应用编程接口安全模型 • 语法系统 • 借助安全协议分析的思想,将API的执行表征为一组输入/输出知识的逻辑公式集。 • 根据规范表述,提取与系统安全特征相关的知识集 • 定义攻击者能力,通过API调用和离线密码运算得到内部保护的秘密。
1、可信特征描述方法 • TPM 特征描述(Cont.) • 推理系统与自动证明 • 待验证的安全目标以定理的形式描述 • 利用归结原理和反例搜索的方法,验证安全目标能否在模型中成立,若不成立,搜索结果即反映出一组有效的攻击序列。 • 通过集成的可执行状态判决机制,在一定程序上缓解了状态空间爆炸的问题。
1、可信特征描述方法 TSS特征描述 TSS要为可信计算平台的应用层提供完整性保护、身份可信性认证、数据安全性保护等可信特征功能; 通过对不同TSS的规范进行分析和抽取,定义出TSS的可信特征; 遵照不同规范的TSS产品实现机制会有不同,但只要TSS能实现相对应可信特征功能,同样能达到安全的要求。
2、可信计算平台的测试方法 • 信任链测试方法 ——基于规范的分层测试模型 • 基于系统层次的信任链测试结构划分 • 基于动作约简的事件和状态测试
2、可信计算平台的测试方法 • 信任链测试方法(Cont.) • 基于系统层次的信任链测试结构划分 • 结合PC启动的一般流程,信任链的测试结构可划分为: • CRTM定义为信任链的最底层,它是完整性度量的起始点,也是事件日志的创建者 • CRTM所创建的事件日志定义为中间层,它是构建信任链的依据 • 事件所产生的平台状态定义为最高层,它决定信任传递的正确与否
2、可信计算平台的测试方法 • 信任链测试方法(Cont.) • 基于动作约简的事件和状态测试 • 依据RTM与TPM, System之间的交互关系 • 通过交互关系建立System动作集合和信任链状态之间的有向图 • 从测试的角度出发进行约简,消去影响信任链测试的内部动作和不可达状态 • 通过约简后的有向图得到适合信任链规范测试的测试例集合,并生成测试用例,对信任链系统进行一致性测试
2、可信计算平台的测试方法 • 信任链规范说明对应的LTS系统 • 信任链测试方法(Cont.) • 基于动作约简的事件和状态测试 • 经过约简后得到的信任链规范实现LTS系统
2、可信计算平台的测试方法 TPM测试方法 ——基于特征提取的功能关联测试模型 基于功能划分的TPM测试结构 基于特征提取的TPM基本功能依赖集合生成 基于状态机理论的规范一致性测试
TPM测试方法(Cont.) 基于功能划分的TPM测试结构 根据规范定义的TPM所必须具有的功能,将TPM功能横向划分为: 将TPM基本信息划分为最底层,它是其它所有功能的基础 将TPM密码服务划分为中间层,它为TPM可信服务提供密码算法保障 将TPM可信服务划分为最高层,它为整个平台提供完整性和安全性的应用与保障 2、可信计算平台的测试方法
TPM测试方法(Cont.) 基于特征提取的TPM基本功能依赖集合生成 根据提取的TPM功能以及它们之间的关系,将提取的功能之间的纵向关系总结为基本功能依赖集,根据基本功能依赖集扩展可得到所有功能的测试顺序。 2、可信计算平台的测试方法
TPM测试方法(Cont.) 基于状态机理论的规范一致性测试 根据提取的功能依赖性,对TPM规范进行了状态机建模,通过比较测试时的状态机模型与TPM规范的状态机模型,判断被测试的TPM是否达到规范一致性。下图为建立的TPM正常运行状态下部分状态机示意图。 2、可信计算平台的测试方法
TSS测试方法 ——基于反射机制的分层测试框架 TSS测试的功能结构划分 基于反射机制的TSS测试框架 基于静态分析与Fuzzing的安全测试 2、可信计算平台的测试方法
TSS测试方法(Cont.) TSS测试的结构划分 根据TSS规范所定义的内容划分测试的层次功能结构如下: 2、可信计算平台的测试方法 • TSP层测试:包括上下文管理测试、策略管理测试、TPM管理测试、密钥管理测试等; • TCS层测试:包括密钥证书管理测试,事件管理测试,参数块产生测试等; • TDDL层测试:包括对TDDL接口的测试。
TSS测试方法(Cont.) 基于反射机制的TSS测试框架 不同TSS规范中定义的函数信息有差异,被测函数繁多且测试流程是动态组合的 通过建立通用的程序框架,将被测函数的相关信息存入数据库中,利用Java反射机制调用被测试函数并获取相应参数信息; 测试程序有良好的通用性和扩展性。 2、可信计算平台的测试方法
TSS测试方法(Cont.) 静态分析(符号执行)与随机化测试(Fuzzing测试) 分析测试可信软件栈(TCG Software Stack, TSS)设计与实现中的安全缺陷与漏洞 基于TSS分层封装特点,针对TSPI应用接口与TCSI网络接口的API函数进行安全测试。 测试框架与测试用例的构造建立在对API序列语义分析与参数语法分析的基础上进行。 测试方法兼顾程序静态分析与随机测试,通过具体的测试用例触发安全缺陷。 2、可信计算平台的测试方法
TSS测试方法(Cont.) 静态分析(符号执行)与随机化测试(Fuzzing测试) 面向缺陷的软件自动化测试方法研究 使用符号执行+约束求解的方法自动遍历程序内部执行路径 使用随机构造的测试用例配合符号执行,提高效率和准确性 用断言和抽象解释的方法显式定义待检测缺陷的属性 2、可信计算平台的测试方法
3、可信计算平台安全测评原型系统 信任链测试 测试对象 符合TCG规范的可信计算平台:HP6400、HP6230和ThinkPad R61i 符合中国《可信计算密码支撑平台功能与接口》规范的国内两种可信计算机 测试目标 基于Biba模型,对平台信任链的完整性进行评估 通过结果分析,对平台信任链的关键技术点进行评估,并判断各个测试平台对于可信计算平台规范的实现程度以及与规范的匹配程度 通过一致性测试和安全测试之间的映射关系,找出当前可信计算平台存在的内部安全隐患
信任链测试 部分测试界面 3、可信计算平台安全测评原型系统
3、可信计算平台安全测评原型系统 • 信任链测试 • 测试结果及分析 • HP6400、HP6230、ThinkPad R61i和国内两种可信计算机的信任链实现程度分别为:81.82%,72.72%,18.18%,9.09%,9.09% • 被测装载TCG TPM1.2平台上基本已经实现了信任链的建立和传递过程 • 被测装载TCG TPM1.1平台的大部分测试都不满足要求,仅提供了TPM驱动和TPM访问接口 • 国内外一些被测样机,基本上没有实现信任链。
3、可信计算平台安全测评原型系统 • TPM 测试 • 测试对象 • 按照TCG规范实现的可信平台模块: Infineon TPM 1.1和Atmel TPM 1.2 • 按照中国《可信计算密码支撑平台功能与接口》规范的可信平台模块: 某国产品牌样片 • 测试目标 • 基于状态机模型,对可信平台模块进行安全功能的规范一致性测试,总结各个功能模块的规范符合程度 • 通过结果分析,判断各个可信平台模块对于规范的匹配程度
3、可信计算平台安全测评原型系统 • TPM 测试 • 部分测试界面
3、可信计算平台安全测评原型系统 • TPM 测试 • 测试结果及分析 • 从统计结果可以看出: • HP Infineon TPM 1.1、ThinkPad Atmel TPM 1.2和某国产品牌样片的规范符合度分别为:92.66%、80.19%和82.92%。
3、可信计算平台安全测评原型系统 • TSS测试 • 测试对象 • 按照TCG规范实现的可信软件栈: Daonity TSS1.1 • 测试目标 • 对可信软件栈进行安全功能的规范一致性测试,总结各个功能模块的规范符合程度 • 通过结果分析,判断可信软件栈对于规范的匹配程度
TSS测试界面 部分测试界面 3、可信计算平台安全测评原型系统
TSS测试 测试结果及分析 参照TSS V1.1规范,测试原型系统对Daonity 项目中的TSS进行了测试。对比测试通过的功能数和TCG规范定义的可信软件栈的功能数。三个功能模块:TSP、 TCS 和 TDDL中通过的函数功能数的功能覆盖率为 81%。 3、可信计算平台安全测评原型系统
报告提纲 一 三 二 可信计算平台测评概念 1 可信计算平台测评系统 总结
三、总结 信任链测试 现有产品尚不完全符合规范说明 没有平台证书 未实现MA驱动 信任链安全机制需增强 动态度量 机密性保护 TPM测试 大部分TPM芯片稳定性不高 密码使用和密码管理功能相混杂 大量的API复用内部的数据结构 需要更加丰富的API支持相关应用 TSS测试 设计之初就应该考虑安全问题 类型安全 边界检查 互斥、原子操作 规范一致性测试:易 安全性测试:难