ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Challenge] DIGITAL FORENSIC WAR GAME
    digital forensic 2011. 4. 21. 23:22

    홈페이지 - http://real-forensic.com/

    각 단계마다 해당하는 FLAG 값을 찾아 홈페이지에 등록하면 다음 단계 문제를 제시하는 방식입니다.

    각 단계는 모두 12 단계가 있는 것으로 홈페이지에 표시되어 있습니다.

    0단계

    문제로 주어진 파일이 어떤 파일인지 확인하는 작업이 가장 먼저 해야한다. 일반적으로 파일 첫 부분에 파일의 타입마다 고유한 시그니처를 사용하기 때문에 바이너리를 확인할 수 있는 방법으로 우선 확인해 보았다.

    리눅스에서는 아래와 같은 방법으로 확인 할 수 있으며 윈도우에서는 frhed, HxD 같은 무료 프로그램을 사용하여 바이너리를 확인할 수 있다.

       $ od -Ax -tx1 sample.bin | head
       $ xxd -sample.bin | head
       $ hexdump -C sample.bin | head

    위와 같은 명령어 또는 유틸리티들을 이용하여 바이너리를 확인해보면 1f 8b 08 00 ... 으로 시작됨을 알 수 있고 아래와 같이 dd 라는 명령어로 압축을 풀 수 있다. 윈도우용 dd.exe 프로그램도 있겠지만 7-zip 을 이용하면 바로 풀린다.

       $ dd if=sample.bin bs=1 skip=0 | zcat > extracted.bin

    이렇게 생성된 extracted.bin 을 다시 바이너리로 확인해 보면 img0.dd 문자열로 시작하는 파일임을 확인 할 수 있다. 해당 파일을 분석할 수 있는 AccessData FTK Imager 로 extracted.bin 파일을 분석하면 img0.dd, img1.dd, img2.dd 파일이 합쳐진 것을 확인할 수 있고 FTK Imager 를 이용해 파일을 추출할 수 있다.

    이렇게 추출한 이미지 파일을 다시 FTK Imager 에서 Add Evidence Item --> Image File 를 차례로 클릭한 후 img0.dd 파일을 오픈하면 FAT1의 마지막 부분에 PNG 시작부분과 FAT2 첫부분의 바이너리를 합치면 하나의 PNG 파일이 만들어 진다. 이 파일을 이미지 뷰어를 통해 열어보면 그 그림에 "I_was_N3ver_less_Alone_tHan_when_by_mYselF" 라는 글씨가 있다.


    1단계

    여기서 받은 파일은 "PK"로 시작하는 ZIP 파일이다. 압축을 풀고 file 로 어떤 파일인지 확인해 보면 아래와 같이 부트섹터 파일임을 알 수 있다.

       $ file sdc.dd
       sdc.dd: x86 boot sector

    여기서도 AccessData FTK Imager 를 이용하면 간단하게 flag 라는 파일을 볼 수 있고 flag 파일을 선택하면 Level 0 에서 같이 이미지에 flag 값이 보인다. "S3cret_of_sUccess_is_constancy_2 purp0se"

    만약 FTK Imager 가 없다면, 리눅스에서 아래와 같이 마운트(mount)하면 될 줄 알았는데 잘 안된다.

       $ mkdir /mnt/test
       $ mount -t ext2 -o loop,ro ./scd.dd /mnt/test

    그래서 구글링 해보니 아래와 같이 하라고하는데 정확하게 이유는 설명하지 못하겠다. ㅠ

       $ losetup -fs -o $((512*63) ./scd.dd
       $ mount -t ext2 /dev/loop /mnt/test
       $ cd /mnt/test
       $ xxd flag | head

    여까지 하면 flag 가 PNG 파일임을 알 수 있다.

    2단계


Designed by Tistory.