level 16

2020. 9. 1. 23:28

딱 봐도 문제가 printit의 주소를 call 하는 부분을 shell의 주소를 call 하는 부분으로 바꿔라~ 하는 것 같네요.

한 번 찾아봅시다.

 

수상한 주소가 보이네요.

0x8048500을 저장하고 call까지? 에이 이건 딱봐도 printit 주소겠죠?

그러면 shell의 주소는 뭘까요

 

0x80484d0 이라네요.

 

그러면, 주소를 담는 부분의 위치는 어디일까요?

아, $ebp-0x10이네요.

아래를 보면 fgets함수로 입력된 값이 $ebp-0x38부터 저장됩니다.

둘의 공백은 40, 답이 나왔죠?

buf(20) + bufdummy(20) + shell() address(4)

 

쉘을 성공적으로 획득하였습니다.

'[▒] 보안 > FTZ' 카테고리의 다른 글

level 18  (0) 2020.09.01
level 17  (0) 2020.09.01
level 15  (0) 2020.09.01
level 14  (0) 2020.09.01
level 13  (0) 2020.09.01

BELATED ARTICLES

more