Date of Award
8-2018
Degree Type
Thesis
Degree Name
Master of Science (MS)
Department
Computer Science
Committee Chair
Mathias J. Payer
Committee Member 1
Byoungyoung Lee
Committee Member 2
Dongyan Xu
Abstract
Static binary analysis is being used extensively for detecting security flaws in binary programs. Multiple solutions have been proposed to tackle challenges presented by static binary analysis. We propose two methods to improve these solutions for better precision on x86-64 binaries. First, we propose a machine learning based approach to detect compiler and optimization level for a binary program with the aim of augmenting existing heuristic based solutions to fine tune those heuristics. We are able to detect the aforementioned information with 83% precision on coreutils, binutils and SPECCPU2006 binaries. Second, we propose an analysis to detect memory layout from a binary program’s perspective. This analysis aims to enhance existing solutions by allowing them to track values across loads and stores in fine grained memory locations. We are able to detect layout of stack objects with 56.3% accuracy for coreutils, binutils and SPECCPU2006 C binaries.
Recommended Citation
Singh, Lovepreet, "Improving Precision for x86 Binary Analysis Techniques" (2018). Open Access Theses. 1596.
https://docs.lib.purdue.edu/open_access_theses/1596