OS/Linux [ftz] hcaker school level17 풀이
  • 728x90
    반응형

     

     

     

    Free Training Zone level17 풀이


     

    1. cat를 사용하여 hint 출력

    level16과 유사하지만 shell 함수가 빠져있다. 

    buf 오버플로우를 이용하여 *call 포인터 변수에 환경변수에 등록한 shellcode

    주소를 넣어서 shellcode를 실행 시켜 level18 shell에 접근할 수 있다.

     

    2. attackme 복사

    gdb 분석을 위해 쓰기권한이 있는 tmp 디렉터리로 attackme 파일을 복사한다.

     

    3. gdb 분석

    위 disassembler 를 스택으로 표현하면 아래와 같다.

    4. shellcode 환경변수 등록 및 주소 획득

    export 명령을 이용하여 41byte shellcode를 환경변수에 등록한다.

     

    환경변수 shellcode 주소를 획득하는 코드를 작성하여 주소를 확인한다.

     

    5. 페이로드 코드 작성

    shellcode 주소 0xbffffc14를 *call 포인터 변수 위치에 넣어주면 위와 같이 level18 Password를 획득할 수 있다.

     

     

     

     

    728x90
    반응형

    'OS > Linux' 카테고리의 다른 글

    [ftz] hacker school level19 풀이  (0) 2020.04.28
    [ftz] hacker school level18 풀이  (0) 2020.04.28
    [ftz] hacker school level16 풀이  (0) 2020.04.28
    [ftz] hacker school level15 풀이  (0) 2020.04.28
    [ftz] hacker school level14 풀이  (0) 2020.04.28
상단으로