会议专题

FPSFI:一种基于LLVM架构的驱动错误隔离机制

内核安全维系着应用程序的正常运行,而内核错误却仍被周期性地发现,且多数错误是由模块加载机制将存在问题的设备驱动引入内核所致.基于LILVM编译器基础架构,提出FPSFI驱动错误运行时隔离机制,使驱动错误隔离机制分解为涉敏函数注册、驱动错误定位与检测函数的插装等三个模块,有效地阻止了由内核API完整性缺失所导致的权限非法提升以及内存空间被多次释放等常见驱动错误.相比于之前的方法,FPSFI将错误分析与定位实现在编译器后端,减少了人工添加检测代码的工作量,而检测函数的单独实现与编译,使得隔离机制对内核接口的依赖程度有所降低.基于Linux平台的测试结果表明,FPSFI能够有效阻止两类典型的驱动错误;FPSFI对后端编译器改动所造成的时间开销比为18.7%;对网络模块的压力测试结果显示,FPSFI不会显著影响CPU利用率以及TCP吞吐量,UDP吞吐量下降17%.

操作系统 内核安全 设备驱动 错误隔离机制 功能模块

甄凯 白家驹 刘虎球 郭旭峰

清华大学 计算机科学与技术系,北京100084 西安电子科技大学 计算机学院,西安 710126

国内会议

2013中国计算机大会

长沙

中文

2246-2250

2013-10-01(万方平台首次上网日期,不代表论文的发表时间)