Jan 15, 2020

[kernel] Address Space Layout Randomization

Reference:
Address space layout randomization (linux):
https://en.wikipedia.org/wiki/Address_space_layout_randomization#Linux
Modern Binary Exploitation:
http://security.cs.rpi.edu/courses/binexp-spring2015/lectures/15/09_lecture.pdf
How Effective is ASLR on Linux Systems?
https://securityetalii.es/2013/02/03/how-effective-is-aslr-on-linux-systems/


interface:
/proc/sys/kernel/randomize_va_space
  • 0 – No randomization. Everything is static. 
  • 1 – Conservative randomization. Shared libraries, stack, mmap(), VDSO and heap are randomized. 
  • 2 – Full randomization. In addition to elements listed in the previous point, memory managed through brk() is also randomized.

Prior to 2.6.22 had a similar problem where VDSO (linux-vdso.so) was always located at a fixed location. (https://vsdmars.blogspot.com/2018/06/vdso-function-exported-to-user-space.html)

Unless compiled with PIE elf executable is not guarded by ASLR.

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.