ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • HackCTF x64 Simple_size_BOF
    Wargame/HackCTF 2019. 10. 15. 21:35

    이번엔 내용이 별로 없습니다 !

    실행화면입니다. 실행 할때마다 buf 주소가 달라지네요 마지막에 한번 입력받은 뒤에 프로그램이 끝납니다.

    복습을 하자면, lea는 mov와 달리 좌변에 우변의 주소를 입력해주는 함수입니다. mov는 값을 넘겨주죠? 해서 main+51이나 main+76에서 보다시피 rbp-0x6d30이 수상합니다. 이는 27952d인데 거기에 8byte 추가해서 27960만큼 넘겨줘야 해요. 스포 하나 하자면 rbp-0x6d30에는 buf 함수 주소가 들어있습니다ㅎ.. printf 함수 직후에 rbp-0x6d30이 있는걸 봐서 그것을 유추할 수 있습니다. 

     

    이번에 우리가 쓸 쉘코드는 23바이트기 떄문에 27960 - 23만큼 NOP 또는 아무 값이나 넣어주고, 그 뒤에는 buf 주소의 값을 넣어주면 될듯합니다.

    buf 주소의 값을 넣는 이유는 성공적으로 리턴을 해주기 위해서.. 인듯 합니다. 정확히는 잘 모르겠네요ㅎ

    참고로 이번 쉘코드는 64비트용 특제 쉘코드를 넣어줘야 합니다. 전에 쓰던 32비트를 쓰면 안됩니다

    이제 이 페이로드를 실행하면

    플래그가 잘 뜨는 것을 확인할 수 있습니다

    'Wargame > HackCTF' 카테고리의 다른 글

    HackCTF Reversing Me  (0) 2019.10.19
    HackCTF Simple_Overflow_ver_2  (0) 2019.10.17
    HackCTF x64 Buffer Overflow  (0) 2019.10.15
    HackCTF 내 버퍼가 흘러넘친다!!!  (0) 2019.10.14
    HackCTF BOF_Basic#2  (0) 2019.10.13
Designed by Tistory.