SCAD: Controlled Memory Allocation Analysis and Detection

COMPSAC '15 Proceedings of the 2015 IEEE 39th Annual Computer Software and Applications Conference - Volume 02(2015)

引用 0|浏览10
暂无评分
摘要
Memory errors have been one of the main causes for software vulnerability. This paper discusses an issue called controlled memory allocation (CMA) which occurs when key elements of memory allocation are affected by elaborately designed input data. This paper proposes a renovated approach of CMA detection, utilizing static analysis, and optimizing symbolic execution system with path-guided technologies. Combining these technologies with the state-of-the-art symbolic execution engine, KLEE, we present a prototype CMA detection tool, SCAD. SCAD was tested on commonly used applications like Coreutils and Texinfo, where it found 14 CMA related bugs including 5 unknown previously ones. SCAD's path guided searcher could reach an assigned target faster and with more paths than other path searchers which are provided by KLEE. Two memory allocation sites in Coreutils could not be reached by 8 path searchers provided by KLEE in five minutes, but SCAD's path guided searcher could reach them in 24 seconds and 17 seconds respectively. For memory allocation related code, SCAD executes faster with higher coverage than conventional symbolic execution engines.
更多
查看译文
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要