Blog Content

    티스토리 뷰

    [Cresendo] 오늘은 국군의 날

    『2020년 10월 1일

    날씨 : 맑음

    국군의 날이다. 옛날부터 별로 큰 감흥을 느끼는 날은 아니다. 오늘도 매년 돌아오는 여느 국군의 날처럼 싱겁게 지나가는 듯 했다. 그런데 오늘 컴퓨터 선생님께서 내 주신 수행평가가 마음에 걸린다. 국군의 날을 맞아 특별히 제작된 숙제라고 하셨다. 과제의 내용은 ‘난중일기에 숨겨진 메시지를 찾아오라’는 것이었다. 문제를 푼 사람에게는 어마무시한 상품이 주어진다고 말씀도 덧붙이셨다. 어떻게 숙제를 해결해야할 지 막막하다. 일단 최근에 배운 데이터 은닉 기법을 복습한 후에, 차근차근 문제 파일을 분석해보아야겠다.

    오늘의 일기 끝!』


    컴퓨터 선생님께서 내 주신 과제를 해결하고 Flag를 알아내시오!

    [그림 1] diary

    문제를 다운받고 diary.exe를 실행하면 압축파일이 풀리며 디렉터리에 txt파일이 여러개 있다.


    [그림 2] 난중일기.txt

    문제에 제시된 힌트를 보면 숨겨진 메시지 및 데이터 은닉 기법 등이 나와있다. 처음에 스테가노그래피 처럼 txt파일안에 다른 시그니쳐가 있는 문제일까 싶어 Hex Editor로 열어보았지만 난중일기 외에 별다른 내용은 보이지 않는다. 

    문제 태그를 보면 NTFS로 되어있다. NTFS 구조에서 데이터를 은닉할 수 있는 방법은 어떤것이 있을까? 

    생각하던 중 랜섬웨어 분석을 할때 접해본 ADS가 생각났다. ADS는 추가적으로 생성되는 데이터 스트림을 의미하며 각 파일이 하나 이상의 데이터 스트림을 가질 수 있도록 한다. 이러한 ADS에 데이터를 은닉할 수가 있다. 그렇다면 ADS를 어떻게 확인할 수 있을까?


    [그림3] dir diary

    일반적인 dir명령어로 디렉터리를 검색했을때는 ADS가 보이지않는다.

    dir /?를 보면 다양한 옵션이 있는데 그중에 /R 옵션이 파일의 대체 데이터 스트림을 표시한다고 한다.


    [그림4] ADS 확인

    [그림2] 와 같이 dir /r 명령어로 diary 디렉터리를 확인해본 결과 $DATA  ADS파일들을 확인할 수 있었다.

    ADS 파일을 추출하기위해 루트킷 스캔도구인 Gmer를 사용하였다.

     Gmer는 숨겨진 프로세스, 서비스, 파일 등을 스캔할 수 있는 도구이다.


    [그림 5] Gmer

    Gmer를 실행시켜 Files 탭에서 diary 디렉터리 경로를 들어가면 ADS 파일들이 스캔되어있다. Copy하여 경로를 지정해주고 파일들을 추출하면 된다.


    [그림 6] ADS 추출

    처음에 번호순서대로 뽑고 zip파일을 압축풀었을때 Z01파일이 필요하다며 압축이 해제되지않았다.

    zip파일이 분할되어있어 확장자명을 맞춰준 뒤 압축을 풀어주면 이미지 파일 하나를 확인할 수 있다.


    [그림 7] FLAG

    나의 죽음을 적에게 알리지 마라










    'forensic' 카테고리의 다른 글

    [Cresendo] MFT Problem 01  (0) 2018.04.12
    [Cresendo] NTFS Log 1  (0) 2018.04.10
    [Cresendo] Event Log Problem 03  (0) 2018.03.02
    [Cresendo] Event Log Problem 02  (0) 2018.02.28
    [Cresendo] Event Log Problem 01  (0) 2018.02.27

    Comments