본문 바로가기
카테고리 없음

ELF32 - Stack buffer overflow basic 4

by sonysame 2016. 11. 7.


환경변수를 오버플로우 시킨다. 

USERNAME이 없으므로, USERNAME에 쉘코드를 넣어준다.



이 부분은 환경변수 부분이다!!


   strncpy 이전


strncpy 이후


쉘이 들어간 구조체가 어디에 있는지 정확히 알 수 있다.

적당히 0xbffff5fc 라고 하자!


PATH가 들어가는 부분도 찾았다.


이 EBP는 GetEnv가 시작되고 나서 push ebp-> mov ebp esp 하고 나서의 ebp이므로


ebp+4지점 0xBFFFF79C가 GetEnv의 Return Address부분이다.


0x79c-0x6fc=160이므로

path를 오버플로우시켜 GetEnv의 Return Address를 0xbffff5fc로 덮자!