I'm learning some hacking with Erickson's "The Art of Explotation". To try out the exploits myself, I'm using C on a virtual maching with 32-bit Debian on my windows laptop (in VirtualBox).
Many of the exploits rely on overwriting pointers with address via an overflow (i.e., using something like "\x32\xbf\xcf\x12" as input to a string). However, on my machine many of the relevant addresses (of variables on the stack or function pointers) contain zeros, which terminates the string and the exploit fails.
Is there a way avoid zeros in important addresses?
Maybe by changing the setup of the virtual machine or the Linux?