基于用户层设备驱动的操作系统TCB缩减研究
发布时间:2020-02-01 09:55
【摘要】:随着硬件平台和设备变得越来越多,操作系统作为硬件的管理者包含着庞大的源代码。目前流行的单一内核操作系统,因内核代码庞大导致了漏洞增多,而隐含在内核代码中的漏洞一旦被攻击者利用,攻击者便能够完全控制系统、使用硬件平台,甚至窃取用户数据。在单一内核操作系统内核代码中,设备驱动代码占了一大部分,驱动代码中的漏洞一旦被攻击者利用,攻击者将有能力破坏整个系统;另外,系统调用是用户利用内核服务的主要手段,这些系统调用实现中的漏洞可能被攻击者利用来破坏内核。内核代码缩减是减少操作系统内核漏洞的有效方法。因此,如何使操作系统内核代码更小,是保证系统安全的主要问题。基于用户层设备驱动的操作系统可信代码基缩减框架,提出了减小操作系统内核代码方法,并对主流操作系统Linux的内核代码进行有效的分离,减小了Linux内核的可信计算基以及攻击面。一方面,移除了内核中占最大代码量的设备驱动,并利用代理驱动模型在用户层运行未修改的设备驱动程序;另一方面,利用库操作系统将操作系统的功能(如,文件系统、进程管理等)在用户层实现,从而减小了内核呈现给应用程序的系统调用接口,缩减了内核的攻击面。通过以上两方面的工作,能够有效的减少内核漏洞。最后,以基于PCI的e1000网卡驱动为例,实现了网卡类驱动代码的有效分离。系统测试结果表明,基于用户层设备驱动的操作系统可信代码基缩减框架减小了81.7%的Linux系统调用接口,并开发了代码量为0.9K(代码量是e1000的7.5%)的网卡类代理驱动。性能分析表明系统性能开销在可接受的范围之内,UDP和TCP的基准测试开销控制在25%以内,系统综合性能指标大部分开销很小。
【学位授予单位】:华中科技大学
【学位级别】:硕士
【学位授予年份】:2016
【分类号】:TP316
本文编号:2575360
【学位授予单位】:华中科技大学
【学位级别】:硕士
【学位授予年份】:2016
【分类号】:TP316
【参考文献】
相关期刊论文 前2条
1 黄义文;;Linux操作系统内核裁剪的分析[J];中国民航飞行学院学报;2010年03期
2 严开元;欧中红;;一种LINUX系统下隔离设备驱动故障的方法[J];计算机与数字工程;2008年11期
,本文编号:2575360
本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/2575360.html