Empirical Network Structure of Malicious Programs
John Musgrave, Alina Campan, Temesguen Messay-Kebede, David Kapp, Anca Ralescu
TL;DR
This study conducts an empirical network analysis of malicious binaries by constructing control flow graphs (CFG), data dependency graphs (DDG), and program dependence graphs (PDG) to capture the full structural properties of programs. It demonstrates that DDG and CFG networks exhibit Scale-Free degree distributions, with DDG also showing Small-World characteristics, while CFGs display neutral degree assortativity and larger diameters. The findings provide a quantitative basis for more fine-grained structural features in labeled malware datasets, enabling better interpretation and potential improvements in classifiers trained on graph features. The work advances static malware analysis by linking network structure to operational semantics, supporting future use of network-derived features in supervised learning for malware classification and semantic mapping.
Abstract
A modern binary executable is a composition of various networks. Control flow graphs are commonly used to represent an executable program in labeled datasets used for classification tasks. Control flow and term representations are widely adopted, but provide only a partial view of program semantics. This study is an empirical analysis of the networks composing malicious binaries in order to provide a complete representation of the structural properties of a program. This is accomplished by the measurement of structural properties of program networks in a malicious binary executable dataset. We demonstrate the presence of Scale-Free properties of network structure for program data dependency and control flow graphs, and show that data dependency graphs also have Small-World structural properties. We show that program data dependency graphs have a degree correlation that is structurally disassortative, and that control flow graphs have a neutral degree assortativity, indicating the use of random graphs to model the structural properties of program control flow graphs would show increased accuracy. By providing an increase in feature resolution within labeled datasets of executable programs we provide a quantitative basis to interpret the results of classifiers trained on CFG graph features. An increase in feature resolution allows for the structural properties of program classes to be analyzed for patterns as well as their component parts. By capturing a complete picture of program graphs we can enable theoretical solutions for the mapping a program's operational semantics to its structure.
