Skip to content

capuanob/masters-thesis

Repository files navigation

masters-thesis

LaTeX project tree

Binary analysis and software debugging are critical tools in the modern software security ecosystem. With the security arms race between attackers discovering and exploiting vulnerabilities and the development teams patching bugs ever-tightening, there is an immense need for more tooling to streamline the binary analysis and debugging processes. Whether attempting to find the root cause for a buffer overflow or a segmentation fault, the analysis process often involves manually tracing the movement of data throughout a program's life cycle. Up until this point, there has not been a viable solution to the human limitation of maintaining a cohesive mental image of the intricacies of a program's data flow.

This thesis proposes a novel data dependency graph (DDG) analysis as an addition to angr's analyses suite. This new analysis ingests a symbolic execution trace in order to generate a directed acyclic graph of the program's data dependencies. In addition to the development of the backend logic needed to generate this graph, an angr managementview to visualize the DDG was implemented. This user interface provides functionality for ancestor and descendant dependency tracing and sub-graph creation. To evaluate the analysis, a user study was conducted to measure the view's efficacy in regards to binary analysis and software debugging. The study consisted of a control group and experimental group attempting to solve a series of 3 challenges and subsequently providing feedback concerning perceived functionality and comprehensibility pertaining to the view.

The results show that the view had a positive trend in relation to challenge-solving accuracy in its target domain, as participants solved 32% more challenges 21% faster when using the analysis than when using vanilla angr management

About

LaTeX project tree

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages