Efficient Array & Pointer Bound Checking Against Buffer Overflow Attacks via Hardware/Software

Zili Shao,Chun Xue,Qingfeng Zhuge,Edwin H. -M. Sha,Bin Xiao
DOI: https://doi.org/10.1109/ITCC.2005.140
2005-01-01
Abstract:Buffer overflow attacks cause serious security problems. Array & pointer bound checking is one of the most effective approaches for defending against buffer overflow attacks when source code is available. However, original array & pointer bound checking causes too much overhead since it is designed to catch memory errors and it puts too many checks. In this paper, we propose an efficient array & pointer bound checking strategy to defend against buffer overflow attacks. In our strategy, only the bounds of write operations are checked. We discuss the optimization strategy via hardware/software and conduct experiments. The experimental results show that our strategy can greatly reduce the overhead of array & pointer bound checking. Our conclusion is that based on our strategy, array & pointer bound checking can be a practical solution for defending systems against buffer overflow attacks with tolerable overhead.
What problem does this paper attempt to address?