摘要
由于软件内核驱动运行在内核态,对其进行安全性检测需要与传统用户态软件不同的方法。通过对真实内核驱动漏洞的分析,总结其漏洞模式,针对性地提出一种检测方法。采用静态污点追踪技术,对内核函数进行收敛状态约束的计算求得其状态不动点,检测用户态下输入污点参数在内核Dispatch例程内的传播情况,判定是否存在内核驱动漏洞。通过对多款知名杀毒软件内核驱动的真实测试,发现四个未公开的内核驱动漏洞,验证了该检测方法的有效性。
Security detection on software kernel drivers seeks the method different from the one for traditional user mode software, as they run in kernel mode. By analysing the vulnerabilities of real kernel drives, we summerise their patterns and propose a new detection method in targeted way. Using static taint tracking technology we calculate the convergence state constraint on kernel function to find its state fix point, detect the spreading of taint parameter inputted in user mode within kernel Dispatch routine, and judge whether the vulnerability of kernel drives exists. Real testing is applied to the kernel drivers of a variety of famous antivirus software and four undiscovered kernel vulnerabilities are found, this verifies the effectiveness of the detection method.
出处
《计算机应用与软件》
CSCD
2015年第5期262-266,共5页
Computer Applications and Software
基金
国家高技术研究发展计划主题项目(2012AA012902)
关键词
内核驱动
安全性检测
污点分析
状态不动点
Kernel drivers Security detection Taint analysis State fix point