Authors:
Sun Ding
1
;
Hee Beng Kuan Tan
1
and
Hongyu Zhang
2
Affiliations:
1
Nanyang Technological University, Singapore
;
2
Tsinghua University, China
Keyword(s):
Buffer Overflow, Static Analysis, Automatic Bug Fixing, Security Vulnerability.
Related
Ontology
Subjects/Areas/Topics:
Communication and Software Technologies and Architectures
;
Computer-Supported Education
;
e-Business
;
Energy and Economy
;
Enterprise Information Systems
;
Information Systems Analysis and Specification
;
Information Technologies Supporting Learning
;
Mobile and Pervasive Computing
;
Security and Privacy
;
Software Engineering
;
Sustainable Computing and Communications
;
Telecommunications
;
Tools, Techniques and Methodologies for System Development
Abstract:
Buffer overflow vulnerability is one of the commonly found significant security vulnerabilities. This vulnerability may occur if a program does not sufficiently prevent input from exceeding intended size or accessing unintended memory locations. Researchers have put effort in different directions to address this vulnerability, including creating a run-time defence mechanism, proposing effective detection methods or automatically modifying the original program to remove the vulnerabilities. These techniques share many commonalities and also have differences. In this paper, we characterize buffer overflow vulnerability in the form of four patterns and propose ABOR--a framework that integrates, extends and generalizes existing techniques to remove buffer overflow vulnerability more effectively and accurately. ABOR only patches identified code segments; thus it is an optimized solution that can eliminate buffer overflows while keeping a minimum runtime overhead. We have implemented the p
roposed approach and evaluated it through experiments on a set of benchmarks and three industrial C/C++ applications. The experiment result proves ABOR’s effectiveness in practice.
(More)