Book Image

Binary Analysis Cookbook

By : Michael Born
Book Image

Binary Analysis Cookbook

By: Michael Born

Overview of this book

Binary analysis is the process of examining a binary program to determine information security actions. It is a complex, constantly evolving, and challenging topic that crosses over into several domains of information technology and security. This binary analysis book is designed to help you get started with the basics, before gradually advancing to challenging topics. Using a recipe-based approach, this book guides you through building a lab of virtual machines and installing tools to analyze binaries effectively. You'll begin by learning about the IA32 and ELF32 as well as IA64 and ELF64 specifications. The book will then guide you in developing a methodology and exploring a variety of tools for Linux binary analysis. As you advance, you'll learn how to analyze malicious 32-bit and 64-bit binaries and identify vulnerabilities. You'll even examine obfuscation and anti-analysis techniques, analyze polymorphed malicious binaries, and get a high-level overview of dynamic taint analysis and binary instrumentation concepts. By the end of the book, you'll have gained comprehensive insights into binary analysis concepts and have developed the foundational skills to confidently delve into the realm of binary analysis.
Table of Contents (12 chapters)

Using data duplicator (dd)

Sometimes, a tool exists to make life easier, but if used incorrectly, it can be one of the more destructive tools in existence. One such tool is dd. This tool has many uses, and one way I've used this tool is to prepare a disk image on a microSD memory card when installing Kali Linux on a Raspberry Pi. The dd tool makes it incredibly easy to copy byte by byte or chunks of bytes at a time from an input source such as a disk image to an output source such as a microSD card. For CTF competitions, this tool may come in handy to pull binaries or ZIP files out of an image file. As a matter of fact, early in 2019, one of the CTF challenges I developed for Kernelcon required the use of dd. Besides some of the aforementioned uses of dd, we can also use this tool to create new files by copying specific bytes out of the input file.

As the title of this recipe...