I wanted to experiment with the NOP SLED technique. I got the sled and the shellcode into an environment variable and I got its address.
So i wanted to execute the vulnerable program and as an argument use this address repeated,
the problem is that it contain 0s (zeros): 0x00007fffffffe550
./program_vuln $(perl -e 'print "\x50\xe5\xff\xff\xff\x7f\x00\x00"')
Perl does not print the zeroes and the addressing in the stack became so messed up.