Malware Analysis and Static Call Graph Generation with Radare2
-
Published:2023-07-20
Issue:1
Volume:68
Page:5-20
-
ISSN:2065-9601
-
Container-title:Studia Universitatis Babeș-Bolyai Informatica
-
language:
-
Short-container-title:Studia UBB Informatica
Abstract
"A powerful feature used in automated malware analysis is the static call graph of the executable file. Elimination of sandbox environment, fast scan, function call patterns beyond instruction level information – all of these motivate the prevalence of the feature. Processing and storing the static call graph of malicious samples in a scaled manner facilitates the application of complex network analysis in malware research. IDA Pro is one of the leading disassembler tools in the industry and can generate the call graph via GenCallGdl and GenFuncGdl APIs – a tool which was used in our previous works. In this paper an alternative analysis method is presented using another disassembler tool, Radare2, an open-source Unixbased software, which is also frequently used in this domain. Radare2 has Python support (among other languages), via the r2pipe package, thus enabling full scalability on Linux-based servers using containerized solutions. This paper offers a detailed technical description on how to use Radare2 to generate the static call graph of a PE file and a thorough comparison with the output of IDA Pro, as well as a public dataset on which the experiments were carried out. 2010 Mathematics Subject Classification. 68P25, 68P30. 1998 CR Categories and Descriptors. D.4.6 [Security and Protection]: Subtopic – Invasive software. Key words and phrases. malware analysis, static call graph, radare2, IDA Pro."
Publisher
Babes-Bolyai University
Subject
General Earth and Planetary Sciences,General Environmental Science
Reference32 articles.
1. "1. Andriesse, D., Chen, X., Van Der Veen, V., Slowinska, A., and Bos, H. An in-depth analysis of disassembly on full-scale x86/x64 binaries. In USENIX Security Symposium (2016), pp. 583-600. 2. 2. Bai, J., Shi, Q., and Mu, S. A malware and variant detection method using function call graph isomorphism. Security and Communication Networks 2019 (2019), 1-12. 3. 3. Cohen, I. Deobfuscating apt32 flow graphs with cutter and radare2. Tech. rep., 2019. 4. 4. Cunningham, E., Boydell, O., Doherty, C., Roques, B., and Le, Q. Using text classification methods to detect malware. In AICS (2019). 5. 5. Dahl, G. E., Stokes, J. W., Deng, L., and Yu, D. Large-scale malware classification using random projections and neural networks. In 2013 IEEE International Conference on Acoustics, Speech and Signal Processing (2013), IEEE, pp. 3422-3426.
|
|