본문 바로가기
Security/Pwnable

FTZ Level 15

by J0DEV 2021. 8. 9.
반응형

Level 15에 접속하여 파일과 힌트를 봅니다.

14와 똑같은데 단한가지 다른게 포인터 변수 check입니다.

포인터를 사용했기 때문에

check에는 deadbeef가 있는 주소를 넣어주면 된다고 생각합니다.

 

우선 gdb를 뜯어보면

 

 

 

Level14와 메모리 구조는 똑같습니다.

 

여기서 main+32를 살펴보면  cmpl어셈블리 명령어를 사용하여 eax값을 비교 하고 있습니다.

이 프로그램은 0xdeadbeef가 하드코딩 되어있어 프로그램 속에 내제 되어 있습니다.

 

그러므로 내제되어있는 0xdeadbeef값의 주소를 찾으면 되는 것이지요

 

 

 

gdb에서  x/x를 이용하여 주소를 찾아줍니다.

 

찾으니 0x080484b2가 나오네요

 

Level14에서 사용했던 코드에서 Check부분의 값만 바꿔 줍니다.

 

(python -c 'print "A"*40+"\xb2\x84\x04\x08"';cat)|./attackme

 

이제 Level16권한을 획득합니다.

반응형

'Security > Pwnable' 카테고리의 다른 글

FTZ Level 16  (0) 2021.08.09
FTZ Level 15  (0) 2021.08.09
FTZ Level 14  (0) 2021.08.09
FTZ Level 13  (0) 2021.08.09
FTZ Level 12  (0) 2021.08.09