ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Pwn] g++ pwn
    CTF write_up/Hack CTF 2019. 9. 24. 00:29

    파일을 실행해 보겠습니다.

     

    checksec 명령어로 보호기법 및 파일의 비트를 확인하겠습니다.

     

    32bit 이면서 딱히 보호기법을 인지 할 필요는 없는것 같습니다.

    IDA 32bit으로 열어보겠습니다.

     

    vuln함수의 디컴파일 코드인데, 특별히 보이는 문자열및 함수를 체크해 봤습니다.

     

    s변수의 크기는 아래와 같이 0x3C입니다. 0x3C == 60

     

    변수의 크기는 60인데 입력은 32 만 받기 때문에 일반적인 방법으로는 RET 를 덮지 못할 것 같습니다.

     

    replace 변수가 있는데 "I" 를 "you"로 변환 시킵니다.

     

    그러면 I를 21개 넣고 A 한개를 넣으면 s[60]+SFP[4] 인 64를 가뿐히 덮을 수 있습니다.

     

    그리고 함수를 보시면 get_flag 라는 함수가 있어서 ret에 주소를 넣으면 될 것 같습니다.

     

    0x08048F0D 입니다.

     

    exploit code를 작성해 보겠습니다.

     

     

    Flag : HackCTF{It's_e4si3r_th4n_y0u_th1nk!}

     

     

     

    'CTF write_up > Hack CTF' 카테고리의 다른 글

    [Pwn] Beginner_Heap  (0) 2019.09.24
    [Pwn] Poet  (0) 2019.09.24
    [Pwn] BOF_PIE  (0) 2019.09.24
    [Pwn] Offset  (0) 2019.09.24
    [Pwn] x64 Simple_size_BOF  (0) 2019.09.24

    댓글

Designed by Tistory.