L21: Systems lab

Use the raw slides (pdf) before lecture to take notes.

Summary

  • understanding /proc/pid/maps
  • Seeing the result of aslr
  • What does sudo sysctl -w kernel.randomize_va_space=0 do ?
  • Understanding how to compile p1 using gcc
  • What does -z execstack on the gcc command line do?
  • understanding how to use programs like objdump
  • This is what we use to compile: gcc -fno-stack-protector -z execstack /home/abhi/programs/p1.c -o p1