关键词:
software security
operating system
memory life-cycle
static analysis
vulnerability detection
摘要:
Allocation,dereferencing,and freeing of memory data in kernels are coherently *** widely exist real cases where the correctness of memory is *** incorrectness in kernel memory brings about significant security issues,e.g.,information *** memory allocation,dereferencing,and freeing are closely related,previous work failed to realize they are closely *** this paper,we study the life-cycle of kernel memory,which consists of allocation,dereferencing,and *** in them are called memory life-cycle(MLC)*** propose an in-depth study of MLC bugs and implement a memory life-cycle bug sanitizer(MEBS)for MLC bug *** an interprocedural global call graph and novel identification approaches,MEBS can reveal memory allocation,dereferencing,and freeing sites in *** constructing a modified define-use chain and examining the errors in the life-cycle,MLC bugs can be ***,the experimental results on the latest kernels demonstrate that MEBS can effectively detect MLC bugs,and MEBS can be scaled to different *** than 100 new bugs are exposed in Linux and FreeBSD,and 12 common vulnerabilities and exposures(CVE)are assigned.