A fully reproducible workshop along with a presentation.
Deep diving into ELF files and dynamic linking in Linux:
- Overviewing famous ELF sections and segments
- Examining compiled ELF files
- Using LD_PRELOAD to hook dynamic symbols
- Using relocation information to hook dynamic symbols
The workshop requires a Linux system with gcc
, readelf
, objdump
, and less
.
You can use the provided docker image to run the workshop.
docker build -f Dockerfile . -t dynamic-linking-in-linux-workshop
docker run -it --rm -v ${PWD}:/workshop -w /workshop dynamic-linking-in-linux-workshop
Follow the presentation slides and use the commands documented within the source files to build and run at each step. Run all commands from the root directory of the workshop.