ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [L.O.B] Level 2 - gremlin
    Wargame/L.O.B 2022. 10. 11. 04:11
    반응형

    Level 2 - gremlin을 풀어보자.

     

    gremlin은 Level 1인 gate와 비슷하다.

    단지, buffer의 크기가 작다는 점이 다르다.

    그런데 풀이는 쉘 코드를 직접 입력하는 방식이 아닌 환경변수를 이용하는 방식이라 gate와 같다.

     

    코드 분석은 간단하다.

    buffer 배열의 크기가 16바이트라는 것만 기억하고 나머지는 gate와 같기 때문에 넘어가도록 하자.

    <cobolt.c의 내용>

     

    gdb로 cobolt를 분석해자.

    strcpy의 buffer가 나오는 <main+44>를 보면 ebp에서 16 바이트만큼 떨어져 있다는 것을 알 수 있다.

    buffer의 크기 그대로인데, dummy가 없는 것 같아 신기하다.

    <cobolt의 gdb 분석>

     

    buffer의 크기가 작아 쉘 코드를 직접적으로 넣기 힘드니 환경변수를 이용하자.

    F.T.Z부터 많이 작성을 했으니, 방법에 대한 자세한 설명은 넘어간다.

    <환경변수 선언 및 주소 확인>

     

    cobolt 파일을 쉘 코드의 주소를 넣은 페이로드를 입력하면서 실행하자.

    권한이 cobolt로 변경되면서 쉘이 실행된다.

    my-pass를 입력하면 비밀번호가 나타난다.

    <나타난 비밀번호>

    반응형

    'Wargame > L.O.B' 카테고리의 다른 글

    [L.O.B] Level 6 - wolfman  (0) 2022.10.14
    [L.O.B] Level 5 - orc  (0) 2022.10.13
    [L.O.B] Level 4 - goblin  (0) 2022.10.12
    [L.O.B] Level 3 - cobolt  (2) 2022.10.11
    [L.O.B] Level 1 - gate  (1) 2022.10.10

    댓글

Designed by Tistory.