This document provides an overview of ELF (Executable and Linkable Format) binaries. It begins by establishing motivation for understanding ELF binaries, such as encountering a Linux binary file or being tasked with reversing and patching a file. It then discusses what executable files are, common binary file formats with a focus on the ELF format, and how to detect ELF files. The document proceeds to explain the structure of ELF binaries including the ELF header, section headers, and program headers. It outlines the process of loading and parsing ELF files, including examining the ELF header, loading program segments, and patching imported calls. The document concludes by providing additional reversing and exploiting resources.