개인공부/pwnable

[protostar] stack3 문제풀이

5ddish 2018. 11. 19. 20:59

stack3번 풀이쓰 


peda 와 pwntool 이용쓰 


설치법은 구글에 잘 나와이쓰


문제임


소쓰 코드임



보면 buffer 뒤에 (fp에) win_addr address 를 덮어 씌우면 될 거 같음 



그냥 실행시켜보면 그냥 끝남 ㅎ




일단 보면 ebp - 0xc 의 주소값과 비교를 해주고 이씀 


그게 아마 나중에 win_addr 의 값으로 쓰일 것임 



일단 페다로 보면 offset 위치가 64로 확인되고 0xbfff


페다 말고 실제로 메모리 까봐도 ebp - 0x c 의 주소가 0xbffff34c로 확인되고 거기에 0x41414141(aaaa)가 들어가있음을 확인 


그럼 64 바이트 만큼 버퍼 넣고 ebp-0xc 주소에 현재 0x41414141 이 들어가 있지만 win 함수 address가 들어가면 될거같음


win function의 address는 아래에서 확인 




나온 내용을 종합해보면 


1. ebp - 0xc 의 주소값이랑 비교해서 점프문 수행함 


2. 그 주소값이 근데 win 함수가 들어 가면 됨 


3. win 함수 주소는 0x080491a2 임


이 내용을 가지고 스크립트를 짜보면 다음과 같음 






이렇게 끝