Reverse Engineering of Binary Programs using Graph Attention Networks
Understanding the functionality and behavior of binary code is essential for many software engineering tasks, including malware analysis, vulnerability detection, and program optimization. However, automating this process is challenging due to the complexity of machine code and the significant manual effort required from experienced software engineers. In this paper, we present BinGAT (Reverse Engineering of Binary Programs using Graph Attention Networks), a method for classifying binary programs into algorithmic categories using Graph Attention Neural Networks (GNNs) based on their Control-Flow Graphs (CFGs). Given a binary program, BinGAT extracts its CFG through static analysis and transforms the assembly instructions within each basic block into embeddings, preserving contextual information. By leveraging graph attention layers, BinGAT effectively learns structural and semantic patterns in program execution flow, allowing it to distinguish different algorithmic behaviors in binary code. Experimental results show that BinGAT outperforms traditional GNN-based approaches, achieving over 93% accuracy in algorithmic classification of processed CFGs from binary programs.
Publication Details
- Journal
- DigitalCommons - Kennesaw State University (Kennesaw State University)
- Published
- 2025-05-08
- Primary Topic
- Magnetic confinement fusion research
- Type
- article
- Field-Weighted Citation Impact
- 0.00