DocumentCode :
1566305
Title :
A Lightweight Security Analyzer inside GCC
Author :
Pozza, Davide ; Sisto, Riccardo
Author_Institution :
Dip. di Autom. e Inf., Politec. di Torino, Turin
fYear :
2008
Firstpage :
851
Lastpage :
858
Abstract :
This paper describes the design and implementation of a lightweight static security analyzer that exploits the compilation process of the gcc compiler. The tool is aimed at giving to programmers useful and precise hints for improving the security of the developed software, while also detecting format string vulnerabilities, buffer overflows, and subtle vulnerabilities due to incorrect arithmetic and conversion on integers. The experimented technique is a combination of the taint analysis concept and of a value range propagation algorithm. The experimental results obtained by analyzing some real-world security critical programs show that the tool is only slightly heavier than pure compilation, and that it is able to detect known vulnerabilities, as well as unknown ones. Moreover, even if false positives are given, many of the warnings that do not correspond to vulnerabilities are indeed instances of unsafe programming practices, which can be avoided by applying a defensive programming style. Then, the tool can be profitably used during development, as a means that facilitates such coding practice.
Keywords :
program compilers; security of data; GCC compiler; defensive programming style; lightweight static security analyzer; real-world security critical program; subtle vulnerability; taint analysis concept; value range propagation algorithm; Algorithm design and analysis; Arithmetic; Availability; Buffer overflow; Computer bugs; Performance analysis; Programming profession; Prototypes; Security; Software tools; Bug Finding; Defensive Programming; Software Security; Static Analysis;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Availability, Reliability and Security, 2008. ARES 08. Third International Conference on
Conference_Location :
Barcelona
Print_ISBN :
978-0-7695-3102-1
Type :
conf
DOI :
10.1109/ARES.2008.26
Filename :
4529433
Link To Document :
بازگشت