Address Space Layout Randomization (ASLR) was introduced in 2001 by PaX project as a Linux patch and was integrated into Windows Vista and later OSes. It is a memory protection that protects against buffer overflows by randomizing the location where executables are loaded in the memory. Data Execution Prevention (DEP) or no-execute (NX) was also introduced with Internet Explorer 7 on Windows Vista, and it helps prevent buffer overflows by blocking code execution from memory, which is marked as non-executable.
An overview of ASLR and NX bypass
How to do it...
We need to first evade ASLR. There are basically two ways in which ASLR can be bypassed:
- Look for any anti-ASLR modules being loaded into memory. We will have the base...