Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I am working on a security project for school and need to overflow a buffer, I therefore need to overwrite the eip, but for some reason I can't. The A's that I overwrite the buffer with are spread all over the address space. I am assuming that the Pointer Obfuscation feature in Ubuntu is enabled. Is there a way to disable this. I have the following command to compile my program. gcc -ggdb -fno-stack-protector -z execstack -o overflow overflow.c I also have the aslr disabled. My code is a simple strcpy(buffer[10], argv[1]), and a print statement. It should ideally crash when it gets the input of 24 As.

Any help will be greatly appreciated.

regards,

Aditya.

share|improve this question
    
As far as I can work out, you are trying to put 24 letters into the processor registers. I think prime examples of overflowing buffers would be to flood the memory, or make the CPU run at 100+% until it shutdowns (or melts). Also, if this is a sucurity project, does it still count if you disable the security features first? ;-) (Also, what do you mean by the Obfuscation thing?... Probably embedded in the kernel or something...) –  Wilf Jan 11 at 0:18
    
I don't really care about the system CPU. I am only interested in hacking the process stack so that I can overwrite the eip. The eip should be overwritten with that number of letters for the code that I have compiled. I want to send the execution of the program to my specified code. Now Ubuntu has Pointer Obfuscation set by default which jumbles up the registers so that I am not able to write to certain registers. At least that's what I think is happening. This is the page where it tells about the security features in Ubuntu goo.gl/zeljzM. I want to disable the Obfuscation. Thanks. –  adityam Jan 11 at 2:23

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.