TY - GEN
T1 - GPU-disasm
T2 - 18th International Conference on Information Security, ISC 2015
AU - Ladakis, Evangelos
AU - Vasiliadis, Giorgos
AU - Polychronakis, Michalis
AU - Ioannidis, Sotiris
AU - Portokalidis, Georgios
N1 - Publisher Copyright:
© Springer International Publishing Switzerland 2015.
PY - 2015
Y1 - 2015
N2 - Static binary code analysis and reverse engineering are crucial operations for malware analysis, binary-level software protections, debugging, and patching, among many other tasks. Faster binary code analysis tools are necessary for tasks such as analyzing the multitude of new malware samples gathered every day. Binary code disassembly is a core functionality of such tools which has not received enough attention from a performance perspective. In this paper we introduce GPUDisasm, a GPU-based disassembly framework for x86 code that takes advantage of graphics processors to achieve efficient large-scale analysis of binary executables. We describe in detail various optimizations and design decisions for achieving both inter-parallelism, to disassemble multiple binaries in parallel, as well as intra-parallelism, to decode multiple instructions of the same binary in parallel. The results of our experimental evaluation in terms of performance and power consumption demonstrate that GPU-Disasm is twice as fast than a CPU disassembler for linear disassembly and 4.4 times faster for exhaustive disassembly, with power consumption comparable to CPU-only implementations.
AB - Static binary code analysis and reverse engineering are crucial operations for malware analysis, binary-level software protections, debugging, and patching, among many other tasks. Faster binary code analysis tools are necessary for tasks such as analyzing the multitude of new malware samples gathered every day. Binary code disassembly is a core functionality of such tools which has not received enough attention from a performance perspective. In this paper we introduce GPUDisasm, a GPU-based disassembly framework for x86 code that takes advantage of graphics processors to achieve efficient large-scale analysis of binary executables. We describe in detail various optimizations and design decisions for achieving both inter-parallelism, to disassemble multiple binaries in parallel, as well as intra-parallelism, to decode multiple instructions of the same binary in parallel. The results of our experimental evaluation in terms of performance and power consumption demonstrate that GPU-Disasm is twice as fast than a CPU disassembler for linear disassembly and 4.4 times faster for exhaustive disassembly, with power consumption comparable to CPU-only implementations.
UR - http://www.scopus.com/inward/record.url?scp=84945937249&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84945937249&partnerID=8YFLogxK
U2 - 10.1007/978-3-319-23318-5_26
DO - 10.1007/978-3-319-23318-5_26
M3 - Conference contribution
AN - SCOPUS:84945937249
SN - 9783319233178
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 472
EP - 489
BT - Information Security - 18th International Conference, ISC 2015, Proceedings
A2 - Lopez, Javier
A2 - Mitchell, Chris J.
Y2 - 9 September 2015 through 11 September 2015
ER -