基于可信计算进程的动态完整性度量模型

来源 :中国科技博览 | 被引量 : 0次 | 上传用户:xingchen8888
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  [摘 要]本文对现有动态完整性度量模型进行了分析与研究,针对现有模型不能对进程堆栈的返回地址进行度量,利用影子栈技术的思想,提出了基于可信计算进程的完整性度量模型,该模型是对进程更细粒度的度量,能够有效防止缓冲区溢出的攻击,从而能够保护进程的安全。
  [关键词]动态完整性度量;影子栈技术;可信计算;缓冲区溢出
  中图分类号:V584 文献标识码:A 文章编号:1009-914X(2017)18-0062-01
  进程是保证计算机系统安全关键因素,而现在很多的木马或者病毒通过破坏进程的完整性使计算机系统的安全遭到严重的威胁,如何保护进程的完整性及完全性是目前需要解决的重要问题。文献[1]提出了一种基于可信计算的动态完整性度量模型,该度量模型将进程分为可信、可疑、恶意3类,在其度量架构中,引用虚拟化技术,来对运行中的进程行为进行监控,但并没有说清楚什么样的进程是可信、可疑、恶意的。文都对进程进行更细粒度的动态完整性度量,通过度量进程地址空间得信息,使进程在运行的过程中,不会遭到恶意进程的攻击,确保进程的可信性。而文献[2][3][5]在加载之前不能确保进程在启动时是可信的,从而就不能确保整个进程在运行中是可信的。
  以上这些现有的各种动态完整性度量模型或者架构对堆栈里进程函数的返回地址进行度量并没有提出很好的方法,如果沒有对返回地址进行很好的度量,很可能会被攻击者抓住漏洞,进行ROP缓冲区溢出攻击。针对现有动态度量系统不能对堆栈函数的返回地址进行很好的度量的问题,并且综合现有动态度量模型的优点,在现有动态度量模型的基础之上,并且利用了影子栈技术的思想,对堆栈函数的返回地址进行完整性度量,本文设计了基于可信计算进程的动态完整性度量模型。
  1 模型设计
  1.1 度量对象
  (1)进程相关文件
  在计算机系统中,影响进程完整性的对象有进程的配置文件、可执行文件、动态链接库,以及进程的地址空间。由于病毒或者木马通常会修改进程的执行文件、配置文件或链接库文件,以便用户在下次启动系统的时候仍然能够获得系统的控制权,因此必须将进程相关的这些文件作为度量对象之一,以保证进程在启动之前是可信的。
  (2)进程代码段
  现在很多的黑客就是通过修改进程的代码段,使进程去执行攻击者满足需要的程序,以达到攻击的目的。由于进程的代码段是不变的,因此可以通过对进程代码段进行完整性度量,在进程遭到攻击者攻击的时候,如果发现进程代码段的度量结果发生改变,说明遭到攻击者的攻击,就可以阻止进程的运行,避免攻击者的攻击。因此必须将进程的代码段作为进程完整性度量的对象之一。
  (3)堆栈函数返回地址
  由于缓冲区溢出通常是堆栈函数的地址被破坏,因此堆栈函数地址也必须作为进程完整性度量的对象之一,本文利用影子栈技术的思想,对函数的返回地址进行完整性度量,来防止各种情况下缓冲区溢出攻击。
  2 模型架构
  为了对进程进行更好的动态完整性度量,弥补现有进程度量模型架构的不足,在现有动态度量方法的基础之上,设计了进程动态完整性度量模型。在进程载入之前,首先要通过进程相关文件的收集模块,扫描进程载入时所需要的二进制文件、动态链接库、配置文件等,然后交给静态完整性度量模块进行度量,如果进程是第一次运行,会把相应的度量结果经过加密以后直接存入完整性数据基库,如果不是第一次运行的,就从完整性数据基库中取出当前进程相应的基准值,经过解密后,进入完整性验证模块,与当前的度量结果进行比较,如果相同,那么它就可以获得信任,获得控制权,然后继续计算进程代码段的完整性度量值并将其加密存入完整性数据基库中;否则进程就会被监控模块进行监控。
  在静态完整性度量通过以后,会首先将进程挂起,并计算进程代码段的度量值并与度量参考值进行比较,如果相等则进程继续运行,然后再对进程的堆栈函数的地址进行完整性度量验证;否则进程也会继续被监控模块监控。
  2.1 进程相关文件收集
  为了保证进程的静态完整性,使进程启动时可信的,就必须对进程启动的相关的文件进行完整性度量,进程相关文件收集就是去扫描进程运行时所需要的相关文件,以便交给静态完整性度量模块。假设需要度量的进程有,并且假设进程相关的文件有,,其中n为需要度量的进程数目,m是进程有可能相关的最大文件数目。那么,对于任意一个进程相关文件集合为:
  2.2 完整性数据基库
  完整性数据基库是存储进程完整性信息的基准值,包括进程运行时所需要的各种相关文件完整性值、动态进程代码段的完整性值、堆栈函数返回地址的完整性值,为了验证进程的完整性是否遭到破坏,通常将度量结果和完整性数据基库中的基准值进行比较,如果相等话说明进程完整性没有遭到破坏。其数据结构如下:
  typedef struct proIntegrityInfo{
  char *procName;//进程名字
  char *fileHash;//进程相关文件的散列值
  char *codeHash;//进程代码段内容的散列值
  char *stackFunHash;//进程堆栈函数返回地址的散列值
  }ProIntegrityInfo,*TprocinIntegrityInfo;
  2.3 静态完整性度量
  静态完整性度量就是在进程载入时对其相关文件的度量,每个文件都采用TPM提供的算法计算摘要值。对进程来说,完整性度量值定义为:计算所有目标进程相关文的摘要值,然后进行字符串连接(符号“|”定义为字符串简单的连接操作),然后在使用算法计算连接后的摘要值:
  2.4 动态完整性度量
  动态完整性度量主要是对进程的代码页信息和堆栈信息进行度量,来保证进程在运行过程中,不会遭到恶意程序的修改以及缓冲区溢出的攻击。
  进程的代码段通常是指用来存放程序执行代码的一块内存区域,这部分区域的大小在程序运行前就已经确定。运行在系统中的进程的代码段可看作由一系列(设最多t个)内存页面组成:,每一个页面中的数据都对应一个完整性度量值。如果进程全部加载到内存中,则进程在内存中的代码页的完整性度量值应该等于该进程未加载到内存时代码页静态完整性度量值,否则阻止进程的运行。其中为:
  为了避免进程遭到缓冲区溢出的攻击,本模型借鉴影子栈技术的思想,当堆栈函数被调用的时候,会对函数的地址进行完整性度量,作为基准值存储到完整性数据基库中,当函数的地址返回时,会再次对函数的返回地址进行完整性度量,如果与基准值相等,说明进程的完整性没有遭到破坏。
  2.5 度量结果加密
  为了保护度量结果不被攻击者利用或者损坏,通过由TPM提供的RSA加算法对度量结果进行加密,从而能够保证度量结果的安全性。
  2.6 完整性验证
  完整性验证为了校验进程的完整性是否遭到破坏,每次进程完整性度量之后,都会触发完整性验证模块进行完整性验证,将当前的度量结果与完整性数据库中基准值进行比较,然后将完整性验证结果交给监控模块去处理。
  2.7 监控模块
  监控模块是根据完整性验证结果来对进程的行为进行监控,当进程的完整性遭到破坏时,监控模块会立即停止进程的运行,保护系统的安全性,使系统不被木马或者病毒的入侵。
  3 总结
  本文通过借鉴影子栈技术的思想,提出了基于可信计算进程的动态完整性度量模型及其实现架构,该模型通过对进程所需要的相关文件进行静态完整性度量,从而保证进程加载到内存运行的过程中是可信的。在进程加载到内存过程中,又对进程的代码块和堆栈函数的返回地址进行完整性度量,保护进程在运行过程中不受到一些恶意程序的入侵以及缓冲区溢出的攻击,从而保证了进程在整个运行过程中的完整性,同时也提高了系统的安全性。
其他文献
[摘 要]在管道无损检测技术的发展过程中,超声导波检测技术以其技术优势成为管道无损检测技术发展的方向。在超声导波检测中,导波检测方法与回波信号处理是两个关键环节,科学高效的信号处理技术关系着实际检测效果,对管道安全稳定运行具有积极的意义。本文在管道超声导波检测理论的基础上,对导波缺陷信号的获取与预处理进行深入的分析研究,为提升判断正确率提供理论和实践支持。  [关键词]无损检测 管道超声导波 信号
期刊
[摘 要]目前,电力基础设施建设正在大规模展开,电力基建工程在管理上面临着严峻挑战。所以,必须积极开展新形势下的电力基建工程管理体制改革,提高对电力基建工程管理重要性的认识,认真分析电力基建工程管理中存在的问题,深入研究加强电力基建工程管理的对策,推动电力基建工程管理工作的规范化。  [关键词]电力基建;工程管理;项目管理  中图分类号:TM73 文献标识码:A 文章编号:1009-914X(20
期刊
[摘 要]职业病:是指用人单位的劳动者在职业活动中,因接触粉尘、放射性物质和其他有毒、有害物质等因素而引起的疾病。随着社会不断发展和进步,各个层面的人们已经意识到职业病危害带来的恐惧和不安,因此改善我国职业健康管控状况已势在必行。  [关键词]职业病危害 预防与监管 有效措施  中图分类号:U142 文献标识码:A 文章编号:1009-914X(2017)18-0071-01  一、职业病危害产生
期刊
[摘 要]随着建筑工程的迅速发展,市场竞争也变得更加激烈。优质的市场设施在维护城市的繁荣、促进市场发展、提升人民生活水平等方面都有着非常重要的作用,它能直接影响到广大人民的生命财产安全和经济利益。本文主要分析了市政工程質量管理中常见的几个问题,并提出了几项加强市政道路质量管理的建议。  [关键词]市政道路;工程质量;管理探讨  中图分类号:U35 文献标识码:A 文章编号:1009-914X(20
期刊
[摘 要]随着社会主义市场经济的发展,人们的生活质量也在逐步得到提高,导致国内的航空需求量大大的上涨,人们对航空安全也越来越重视。资料显示,70%以上的航空事故都与人为因素有关,作为人为因素中极其重要的环节,“情景意识”相关的研究越来越受到业界的关注。基于此,本文从情景意识对空中交通管制的影响出发,分析了管制员情景意识下降的原因,最后论述了如何培养管制员的情景意识,以期可以为相关研究人员提供参考意
期刊
[摘 要]目前,酸化压裂是国内外进行油田致密油藏开发的重要手段之一,具体来说,在开发的过程中使用该方法能够实现增产增注的目的。因此,酸化压裂对于国内外的重要性不言而喻,但是,在我国目前的使用中,仍然存在效率较低的问题,在方法选择上也存在一定的误差。本文针对几种比较常见的技术进行介绍,期望在我国油田开发的过程中发挥较大的作用,促进我国油田开发的进一步发展,实现我国油田开发效率的提升,进一步促进我国经
期刊
[摘 要]在煤矿的生产活动过程中,安全问题始终都是全部工作的重中之重。目前为了保证煤矿安全作业,使用了煤矿监控和调度信息系统,它能够有效的提高煤矿生产的安全性同时还为企业获得最大化的经济收益,对煤矿企业发展有着重要的意义和作用。但是现阶段煤矿监控和调度信息系统在使用过程中仍然存在有一些问题,因此本文认真分析了煤矿监控和调度信息系统的信息化集成发展,希望能够促进该项工作的进一步完善和发展,也为该项工
期刊
[摘 要]随着我国科学技术的不断发展,各行各业都取得了显著的进步,但是在电路板设计这一方面却始终没有较大的进步。但是电路板是非常重要的电子部件,是将各个电子元器件联系在一起的主要载体,许多行业都会应用到以电路板为基础所设计的电子设备,所以电路板设计也是电子行业发展的关键因素。但是现如今我国的电路板设计技术还存在非常多的不足,在设计过程中也常常会出现一些问题,这些问题直接影响到了电路板的质量,乃至电
期刊
[摘 要]企业文化既是企业精神、活力的体现,也是企业长期、健康可持续发展的基础;更是企业发展的灵魂支柱。随着现代社会发展与进步,企业只有通过不断的创新方能在残酷的行业市场竞争中脱颖而出,立于败之地。因此,加强企业文化建设、树立健康正确的企业理念、企业价值观对企业的管理也会产生积极、正面的影响作用。本文就企业文化对企业的管理创新中的影响进行分析。  [关键词]企业文化创新;企业管理创新;影响  中图
期刊
[摘 要]高含硫天然气井试气工程具有很大的危险性,在进行工作时有硫化氢中毒和二氧化硫中毒等危及生命的危险,甚至有发生火灾爆炸情况的出现,这些安全问题,为我国的人民的生命和财产安全带来了极大的隐患。本文主要从试气的设计、井场不知以及施工队伍方面提出了一些增强安全性的措施。  [关键词]高含硫天然气;气井试气;安全措施  中图分类号:U414 文献标识码:A 文章编号:1009-914X(2017)1
期刊