DocumentCode :
3696344
Title :
SMT-constrained symbolic execution engine for integer overflow detection in C code
Author :
Paul Muntean;Mustafizur Rahman;Andreas Ibing;Claudia Eckert
Author_Institution :
Technische Universitä
fYear :
2015
Firstpage :
1
Lastpage :
8
Abstract :
Integer overflow errors in C programs are difficult to detect since the C language specification rules which govern how one can cast or promote integer types are not accompanied by any unambiguous set of formal rules. Thus, making it difficult for the programmer to understand and use the rules correctly causing vulnerabilities or costly errors. Although there are many static and dynamic tools used for integer overflow detection, the tools lack the capacity of efficiently filtering out false positives and false negatives. Better tools are needed to be constructed which are more precise in regard to bug detection and filtering out false positives. In this paper, we present an integer overflow checker which is based on precise modeling of C language semantics and symbolic function models. We developed our checker as an Eclipse plug-in and tested it on the open source C/C++ test case CWE-190 contained in the National Institute of Standards and Technology (NIST) Juliet test suite for C/C++. We ran our checker systematically on 2592 programs having in total 340 KLOC with a true positive rate of 95.49% for the contained C programs and with no false positives. We think our approach is effective to be applied in future to C++ programs as well, in order to detect other kinds of vulnerabilities related to integers.
Keywords :
"Lead","Yttrium"
Publisher :
ieee
Conference_Titel :
Information Security for South Africa (ISSA), 2015
Type :
conf
DOI :
10.1109/ISSA.2015.7335070
Filename :
7335070
Link To Document :
بازگشت