728x90


조금, 아주 조금 더 디테일한 바이트 조작이 필요 하다. 일단 i의 값을 변조 시키면 안된다.



바로 gdb로 열어서 확인 해 보면 long i 는 ebp-12에 있고


buf는 ebp-1048에 있다. 그렇다면 현재 스택은


-----------  [  buf(1024)  ][  dummy(12)  ][  long i(4)  ][  dummy(8)  ][  ebp  ][  ret  ]   ----------


이렇게 있다.



위 내용을 참고로 i의 위치 전까지 아무 문자열로 채우고 i의 값을 그대로 넣어주고


ret 전까지 12바이트를 또 아무 문자열로 채우고 쉘코드의 위치를 넣으면 끝.

728x90

'ctf + wargame > 해커스쿨ftz' 카테고리의 다른 글

[ftz] level14  (0) 2015.09.20
[ftz] level12  (0) 2015.09.20
[ftz] level11  (0) 2015.09.20
[ftz] level10  (0) 2015.09.18
[ftz] level9  (0) 2015.09.18

+ Recent posts