Phantom

FTZ Level14 본문

Pwnable/[Wargame] FTZ

FTZ Level14

Ph4nt0m_ 2016. 3. 18. 09:41
반응형

 

이번 문제는 BOF문제인거같으면서도 아닌것같다 분기문제이다

쉘코드나 다른 기법을 사용할 필요 없이 저 check부분에 0xdeadbeef가 들어가면 권한이 상승되고 쉘을 얻을 수 있다

 

간단하게 스택의 구조를 보고 값을 넣으면 쉽게 끝날 것 같다

 

스택의 구조를 살펴보자

 

먼저 스택프레임에서 0x38, 즉 56이 할당되었고 fget함수는 ebp-56부분의주소를 eax에 넣고 실행된다 buf는 ebp-56부터 20바이트만큼이다

그리고 ebp-16에서 0xdeadbeef를 비교하는데 이곳이 check부분이다 그러면 buf와 check사이에 더미가 있다는 것이다

 

56부터 20만큼, 36에서 16사이, 즉 더미는 20바이트를 차지한다

스택을 그려보면 다음과 같다

buf

Dummy

Check

Dummy

crap

SFP

RET

20 20 4 ? 4 4 4

이렇게 된다

그럼 이제 값을 집어넣기만 하면 되겠다

 

이로써 level14도 클리어했다

반응형

'Pwnable > [Wargame] FTZ' 카테고리의 다른 글

FTZ Level16  (0) 2016.03.18
FTZ Level15  (0) 2016.03.18
FTZ Level13  (0) 2016.03.18
FTZ Level12  (0) 2016.03.18
FTZ Level11  (0) 2016.03.18
Comments