CSOD: Context-Sensitive Overflow Detection
CSOD: Context-Sensitive Overflow Detection
复制标题
DOI:
10.1109/cgo.2019.8661198
复制
发表时间:
2019-02
期刊:
影响因子:
--
通讯作者:
Hongyu Liu;Sam Silvestro;Xiaoyin Wang;Lide Duan;Tongping Liu
中科院分区:
文献类型:
--
作者:
Hongyu Liu;Sam Silvestro;Xiaoyin Wang;Lide Duan;Tongping Liu
Buffer overflow is possibly the most well-known memory issue. It can cause erratic program behavior, such as incorrect outputs and crashes, and can be exploited to issue security attacks. Detecting buffer overflows has drawn significant research attention for almost three decades. However, the prevalence of security attacks due to buffer overflows indicates that existing tools are still not widely utilized in production environments, possibly due to their high performance overhead or limited effectiveness.This paper proposes CSOD, a buffer overflow detection tool designed for the production environment. CSOD proposes a novel context-sensitive overflow detection technique that can dynamically adjust its detection strategy based on the behavior of different allocation calling contexts, enabling it to effectively detect overflows in millions of objects via four hardware watchpoints. It can correctly report root causes of buffer over-writes and over-reads, without any additional manual effort. Furthermore, CSOD only introduces 6.7% performance overhead on average, which makes it appealing as an always-on approach for production software.