1

Reversing Modern Binaries

Aleksandre Khokhiashvili

Abstract

As modern real-world programs become increasingly complex, the task of reversing binaries is becoming more challenging. This seminar will cover effective strategies for handling large reversing projects and discuss how to approach some of the common challenges, such as dealing with ever growing number of imported libraries and modern programming languages. We'll see some of the recent tools that automate the importing of symbols and types from open-source libraries, simplifying the reversing process. Additionally, we'll provide hands-on examples from binaries written in C and Rust, highlighting differences in output from various compilers, and illustrate how these differences can impact reverse engineering efforts. By the end of this session, you will know how to avoid feeling overwhelmed when facing a complex binary and have a few new tricks up your sleeve to help you get started.