Annual Computer Security Applications Conference (ACSAC) 2012

Full Program »

Generalized Vulnerability Extrapolation using Abstract Syntax Trees

The discovery of vulnerabilities in source code is a key for securing computer systems. While specific types of security flaws can be identified automatically, in the general case the process of finding vulnerabilities cannot be automated and vulnerabilities are mainly discovered by manual analysis. In this paper, we propose a method for assisting a security analyst during auditing of source code. Our method proceeds by extracting abstract syntax trees from the code and determining structural patterns in these trees, such that each function in the code can be described as a mixture of these patterns. This representation enables us to decompose a known vulnerability and extrapolate it to a code base, such that functions potentially suffering from the same flaw can be suggested to the analyst. We evaluate our method on the source code of four popular open-source projects: LibTIFF, FFmpeg, Pidgin and Asterisk. For three of these projects, we are able to identify zero-day vulnerabilities by inspecting only a small fraction of the code bases.

Author(s):

Fabian Yamaguchi    
University of Goettingen
Germany

Markus Lottmann    
Technische Universitaet Berlin
Germany

Konrad Rieck    
University of Goettingen
Germany

 

Powered by OpenConf®
Copyright©2002-2014 Zakon Group LLC