본문 바로가기

FTZ

FTZ level 16

FTZ level 16

hint

call함수를 부르는 주소에 printit함수 주소가 들어가 “Hello there!”이 출력될 뿐 쉘코드를 딸 수 있는 shell함수는 실행되지 않는다. fgets함수가 BOF를 일으킬 수 있는 함수이므로 buf에 bof를 일으켜 call함수를 부르는 주소에 shell함수 주소로 덮는다.

gdb를 통해 main함수를 보면 ebp-16에 printit함수 즉 call할 함수의 주소를 저장하고 있다.

그리고 ebp-56에 fgets함수를 부르므로 buf가 들어가기 시작한다.

40byte만큼을 채우고 shell함수의 주소로 덮자.


shell함수의 주소는 0x080484d0이다.




'FTZ' 카테고리의 다른 글

FTZ level 18  (0) 2016.12.23
FTZ level 17  (0) 2016.12.23
FTZ level 15  (0) 2016.12.23
FTZ level 14  (0) 2016.12.23
FTZ level 13  (0) 2016.12.23