About: A sidequest is an optional, not graded, not evaluated in anyway exploration into a topic. Sometimes it is just cool to know what is out there in the world.
Sidequests come with a little descritions, presentations, related resources, and a sample code or exercise you can try.
Side quests are likely a good area for further independent studies, research project, thesis, etc.
Linux Binary Analysis - Disassembly
Overview
We have investigated the pieces of a binary file for the Unix platform--specifically an object file. The format of the object file is the ELF file format (Note that this format differs for 32-bit and 64-bit object files).
Problem Statement
Often times we may want to investigate a binary file to find vulnerabilities within our code. The first step in doing this is to retrieve a binary (or any executable object file) and investgiate its contents.
Proposed Exercise
What I propose for this project, is to build a tool that takes an ELF formatted object file and returns the disassembly.
Proposed Evaluation
Do a comparison to see how close your disassembly is to the known assembly generated at compile-time of a C program (or any language of your choice that compiles a binary).
Key Resources
(The first resource you should read)
Additional Resources