5) 주요 응용 프로그램 아티팩트

윈도우 아티팩트와 마찬가지로 다양한 분석대상 아티팩트가 많이 있지만, 포렌식 실기에서 나오는 수준의 문제와 관련된 주요 아티팩트를 살펴보도록 하겠습니다.

1. 이메일 관련

  • 시나리오 분석 시 가장 주요 힌트가 되는 것이 많이 나오는 것 중 하나는 이메일 입니다. 다만 회사 같은 경우는 이메일 프로그램(outlook과 같은) 을 활용하여 메일 기록이 남아 있을 수 있으나 일반적인 경우 보통 인터넷에서 바로 메일에 접속하여 주고 받는 경우가 대부분입니다.

  • 이렇다 보니 메일 관련해서는 디지털포렌식 2급 수준에서는 다양한 형태로 메일을 저장하여 분석에 활용 하도록 하고 있습니다.

1-1) EnCase 활용한 분석

  1. 먼저 EnCase의 메일 분석 프로세스 기능을 한번 사용해보도록 하겠습니다. 프로세스 메뉴를 열어보겠습니다.

    프로세스 옵션중에 Find email 기능을 활용해보도록 하겠습니다. 우선 Find email을 보게 되면 분석이 가능한 메일 목록을 보여주고 있습니다. OK 를 눌러 분석을 진행해보겠습니다. [View- Processor Manager]에서 진행 상황을 확인할 수 있습니다.

  2. 프로세스가 종료되면 [Refresh]를 선택합니다.

    그리고 View - Artifact 에서 메일관련 파일을 확인할 수 있습니다.

  3. 메일의 경우 사실 시나리오와 내용을 상세히 읽어봐야 합니다. 메일 내용 중에 찾아야 할 파일의 힌트 등이 많이 발견될 수 있기 때문입니다. 다만 EnCase의 경우 pst, eml, ost 등을 발견 할 수 있지만, 실제 시험에서는 이외에도 다른 방식으로 메일 관련 파일을 활용하는 경우도 많습니다. 아래와 같이 "6. 메일" 폴더에서 png 그림 파일이 발견되는데 메일관련 내용을 캡쳐하여 표시하고 있습니다. 실제 시험에서도 이런 파일을 숨겨두는 경우가 있습니다. (메일 뿐만 아니라 메신저 캡쳐본도 이런식으로 숨겨둘 수 있을 것입니다.)

  4. 또한 단순 txt 파일로도 메일형태로 저장되기도 합니다. txt는 더블클릭할경우메모장으로 내용 확인이 가능합니다. 다만 txt의 경우 첨부파일이 같이 저장되지 않을 수 있으며, 내용을 잘 살펴봤는데 첨부파일명이 내용에 포함되어 있다면 파일명을 한번 검색을 통해 찾아볼 필요가 있을 것입니다.

  5. 또한 msg 확장자를 가진 메일 형식도 존재 합니다.

MSG 메일 구조 첨부파일 확인하기(참고용)
  • 시험에서는 거의 이런식의 분석까지는 필요치 않으니 이렇게 볼 수 있구나 정도로만 확인해보겠습니다. 실제로 출제는 잘 안될 것으로 보이나 MSG 구조의 메일의 첨부파일을 확인해보겠습니다.

  1. msg 파일의 경우도 첨부파일이 있습니다. "첨부테스트.msg" 파일을 보면 첨부파일이 있습니다. 클릭해서 내용 확인이 가능하지만, 확인이 정상적으로 되지 않을 수도 있습니다. 따라서 구조분석을 통해 첨부파일을 추출해보겠습니다. 지금은 View File Structure가 프로세싱 과정에서 이미 진행되었지만, msg 메일이 발견된 경우 우클릭 - Entries - View File Structure를 진행합니다. 이 후 파일명을 클릭합니다.

    __attach~~ 폴더에 있는 파일들을 살펴보다보면, 파일명의 데이터를 가진 파일이 있습니다. 한글의 경우 Unicode로 Decode 하면 파일명 확인이 가능합니다.

    또한 용량이 비교적 큰 파일을 살펴보면 첨부파일 데이터 영역을 가진 파일을 확인할 수 있습니다.

  2. 추가적으로 "첨부테스트.msg"를 추출하여 분석이 가능 합니다. 파일 추출 후 확장자를 zip와 같은 압축파일로 변경 후 압축을 해제하겠습니다. 압축해제한 폴더를 보면 구조를 확인할 수 있으며, __attach~~ 폴더가 있습니다. 이 폴더를 들어가서 가장 용량이 큰 파일을 한번 살펴보겠습니다.

    해당 파일을 HxD로 열어보면 파일 시그니처가 PNG, 즉 그림 파일임을 알 수 있습니다.

    확장자를 png로 바꾼뒤 한번 열어보겟습니다. 실제로 첨부파일에 포함했던 이미지 파일을 확인할 수 있습니다.

  1. EnCase에서는 pst 메일 파일을 분석해줄 수 있습니다. 시험 출제는 거의 안된 구조입니다. (pst는 마이크로소프트 outlook 에서 로컬 PC에 저장하는 파일 형태입니다.)

    파일명을 선택(View File Structure 후)하면 내부 구조를 확인 할 수 있습니다.

  2. 그리고 시험에서 가장 많이 출제되는 형태인 eml 구조도 분석이 가능합니다. 실제 시험에서도 eml 파일은 꼭 따로 검색해서라도 찾아서 살펴봐야 합니다. 다만 EnCase에서는 eml 분석 기능이 조금은 약한 편입니다. 가능하면 메일 전용 분석 도구를 함께 활용하시는 것을 추천합니다.

1-2) MailView

  1. MailView의 경우 eml 파일구조에 대해서 분석 해주고 있습니다. 한번 첨부파일이 있는 eml 파일을 추출하여 봅시다.

  2. Mail Viewer에서 eml 파일을 불러오겠습니다.

    내용과 첨부파일 또한 쉽게 확인이 가능합니다.

1-3) Mail 관련 IP 분석

  • 최근 시험에서 해당 메일을 분석하여, 메일 작성자 PC의 IP 를 확인하는 문제 그리고 메일 서버의 IP 등을 확인하는 문제도 출제되고 있습니다.

  1. 먼저 메일 작성자의 PC의 IP를 확인하는 방법을 살펴보겠습니다. eml 파일에서 아래와 같이 EnCase의 경우 Text-Strings 에서 Mail View - Source에서 X-Originating-IP : 14.39.145.100 을 확인할 수 있는데 이 항목이 메일 작성자의 IP 주소에 해당합니다. 이메일이 처음 작성된 위치를 추적할 때 중요할 것입니다.

    다만 모든 메일에 무조건 포함되는 것은 아닙니다. 메일 서버의 설정에 따라 저장이 될 수도 있고 아닐 수 있습니다. (네이버 메일에서 발송된 경우 포함되고 있네요!)

  2. 추가로 기출문제 유형 중 하나로 메일을 발견하였는데 추가적으로 추적을 하기 위한 방법을 기술하는 문제가 출제되었습니다. (다만 시나리오 문제 유형은 아닌 듯 합니다.) X-Originating-IP가 없을 경우 메일 서버 관리자에게 문의하여 사용자의 IP를 확보해야 하고, 해당 메일 서버, X-Originating-IP의 IP를 인터넷 사업자(통신사)에 문의하여 정확한 IP 사용자를 특정하는 과정으로 추적을 할 수 있을 것입니다. Received(또는 Received-SPF)에는 발신메일 서버의 IP(114.111.35.228) 에 해당합니다.

    참고로 추가로 발견되는 Received: from cvsendbo021.nm ([10.112.18.58]) -> 이 부분은 사설 IP 대역으로 Naver 내부 IP입니다. 이메일이 Naver의 내부 서버 시스템 중 하나인 "cvsendbo021.nm"에서 발신 되었음을 나타냅니다. 따라서 외부 추적하는 입장에서는 크게 중요한 IP는 아닙니다.

  3. msg 파일 또한 Transcript에서 확인이 가능합니다. 흠 근데 보기 편하진 않네요ㅠㅠ

메일 관련 주요 IP(참고)
  • 추가적으로 좀 살펴보겠습니다. - Received: by 2002:a05:6919:ac02:b0:266:d582 이 부분은 메일이 Gmail 서버에 도착 시 사용된 Gmail 서버의 IP 주소를 나타냅니다.(IPv6) - X-Received: by 2002:aa7:88c2:0:b0:714:340c 이 IP 주소는 또 다른 Google의 중간 서버에서 이메일이 수신된 것을 나타냅니다. (IPv6)

    *IPv6 : IP 부족 문제 해결을 위해 ":"으로 구분된 주소 체계입니다. - Received: from cvsmtppost04.nm.naver.com (114.111.35.228) 이 IP 주소는 이메일이 NAVER의 SMTP 서버에서 전송된 것을 나타냅니다. 이 서버는 발신자(네이버 사용자)의 이메일을 수신자에게 전달하는 역할을 합니다. 즉, NAVER의 서버가 위치한 IP 주소입니다. - X-Originating-IP : 메일 작성자의 IP 주소에 해당합니다.

1-4) 정리

  • 메일에서 문제로 나오는 부분을 살펴보면 아래에 해당할 것입니다. - 발송자 메일주소 / 이름 - 수신자 메일주소 / 이름 - 메일의 첨부파일 - 메일 내용 - 메일 작성자 IP / 메일서버 IP

  • 메일 관련 파일의 확장자를 잘 알고 있으면 추후에 확인할 검색을 이용하여 메일 파일을 찾아서 분석에 활용할 수 있을 것입니다. - eml - msg - pst / ost 다만 txt, 그림 파일의 경우 메일 구조를 가진 파일이 아닌 메일을 단순히 캡쳐하거나, 텍스트로 저장한 형식이기 때문에 따로 파일을 찾아야 하는 부분일 것입니다. 이 경우 메일 헤더 정보가 없을 것이기 때문에 IP 관련 정보 확인은 불가능합니다.

2. 인터넷 사용 기록

  • 인터넷 접속 흔적, 다운로드 흔적들 또한 최근 시험에서 자주 출제되고 있으며, 단순히 인터넷 기록을 묻기 보다는 시나리오 분석 과정에서 힌트가 될만한 부분으로 활용 가능합니다.

  1. EnCase에서도 프로세싱 기능을 통해 인터넷 접속 기록을 확인해볼 수 있습니다. Find Internet artifacts 옵션을 선택 한 뒤 OK 를 눌러 프로세스를 진행합니다. 우측에 지원하는 브라우저 종류를 확인할 수 있습니다.

  2. 프로세싱이 완료되면 View- Artifacts 에서 인터넷 접속 관련 옵션이 추가됩니다. Internet 선택 후 익스프롤러, 크롬 등 분석된 접속 기록이 있으면 HIstory 에서 확인할 수 있습니다. 다만 URL 경로 등을 확인하고 싶으면 가장 우측 컬럼에서 확인이 가능합니다.

  3. 다운로드의 경우 우측 테이블에서는 파일명을 확인하기 어려우나 하단에 [Report]탭에서 관련 정보를 확인할 수 있습니다.

  • 인터넷 기록의 경우 사용자가 접근했던 폴더나 파일, 인터넷을 통해 접근한 url, 다운로드 기록등을 확인할 수 있습니다. 실제 시험에서는 시나리오, 주요 의심 증거와 관련된 파일을 찾는 과정에서 이러한 접근 기록들은 주요 힌트가 될 것입니다.

3. Case Analyzer 활용

  • EnCase에서는 생각보다 분석 결과를 살펴보는데 불편하게 표시하는 부분도 여러군데 존재 합니다. 윈도우 아티팩트 분석, 인터넷 접속 기록 프로세스를 모두 완료하고 나면 기본으로 탑재되어 있는 Case Analyzer를 활용해보시길 추천합니다.

  1. 먼저 Case Analyzer를 사용하기 전에 앞에서 프로세스 진행하여 아래와 같이 주요 아티팩트 분석이 끝난 상태여야 합니다.

    이후 상단의 EnScript - Case Analyzer를 선택합니다.

    [Case]를 선택하면 다양한 정보를 확인할 수 있습니다. 시험에 충분히 출제될 수 있는 마지막 로그인 관련 정보도 확인할 수 있네요.

  2. 최근 폴더 접근 흔적이나

    USB 접근 이력

    인터넷 접근 흔적(다운로드는 보기가 좀 불편하네요.)

    시스템 관련 정보나 설치된 프로그램 관련 정보 등도 확인이 가능하네요!

  • 이외에도 분석 시 활용할만한 정보등도 다양하게 표시되고 있으니 수시로 활용해보시길 추천합니다. 특히 최근 파일 접근 흔적은 시험 문제 제작하는 과정에서 흔적이 남을 수 밖에 없는 부분이기에 꼭 살펴보시길 추천합니다. 다만 주의 사항으로 너무 맹신하면 안되는게 실제로 흔적, 파일들이 남아 있는데 Case Analyzer에서는 정상 분석이 안되어 표시가 되지 않을 수도 있기 때문에 참고로 활용 하시는걸 추천합니다.

4. 문서 관련

  • 문서 파일의 경우 텍스트, 그림, 서식 등이 하나의 파일로 저장되어 있는 형태에 해당합니다. 또한 한글이나 워드를 생성한 프로그램 버전이 다르다고 하더라도 문서 내용을 확인할 수 있도록 해야 효율적인 구조를 갖게 됩니다. 포렌식 전문가 입장에서는 이러한 구조에 대해서 간략히 파악하고 있으면 분석에 도움이 됩니다. 따라서 시험에서도 이와 관련된 문제가 출제되었습니다.

  • "8. 문서파일" 폴더에서 docx, hwp 파일을 한번 추출한 뒤 EnCase와 함께 살펴보도록 하겠습니다.

4-1) 한글파일

  1. 먼저 한글파일을 먼저 살펴보겠습니다. 파일-문서정보를 살펴보면 지은이, 생성일 그리고 마지막 저장한 사람 등의 정보도 포함하고 있습니다.

    압축이 해제가 됩니다. 압축 해제 시 압축 프로그램을 설치하여 활용하시는 것을 추천합니다. 윈도우 탐색기로는 압축해제가 정상적으로 되지 않을 수 있습니다.

  2. 이러한 구조로 되어 있는 곳에 해당 정보들이 저장되게 됩니다. [아래 내용은 실습은 하지 않으셔도 됩니다. 참고로만 확인 하시면 됩니다!] 참고로 _HwpSummaryInformation 파일에 확장자를 txt로 변경 후 HxD로 처음 2바이트를 FF FE로 변경한 뒤 txt를 열게 되면

    문서정보에 잇는 내용들을 확인할 수 있습니다. 즉, _HwpSummaryInformation 파일 구조를 분석하게 되면 해당 내용이 확인이 가능한 것입니다.

    또한 PrvImage를 HxD로 보면 시그니처가 GIF로 시작합니다. 해당 파일을 그림판으로 열어보면 문서 내용의 썸네일처럼 보이는듯 하네요!

    다만, 시험장에서는 한글이 설치되어 있으면 문서정보를 통해서 확인이 가능하니 굳이 이렇게 확인할 필요는 없습니다.

  3. EnCase를 통해서 살펴보겠습니다. 한글 파일을 선택 후 우클릭 - Entries - View File Structure를 선택하여 봅시다.

    파일 구조에 대해서 EnCase 에서도 확인이 가능합니다.

    Unicode로 변경 후 내용 확인을 하면 한글도 인식할 수 있습니다. 이러한 부분을 활용하면 문서 파일 관련 추가 정보를 확인할 수 있는 것입니다.

4-2) 오피스 파일(워드, 엑셀, 파워포인트)

  1. 테스트.docx 파일을 열면 내용을 확인 할 수 있으며 [파일] - 정보에서 만든이, 수정시간 등을 확인할 수 있습니다.

  2. docx 파일의 확장자를 zip로 변경 후 압축해제를 해보도록 하겠습니다. 해당 폴더를 살펴보면 docProps 폴더를 열어봅시다.

  3. core.xml을 보면 creator, lastModifiedfiedBY(마지막 수정자), created 시간, modified 시간 정보를 저장하고 있습니다.

  4. word 폴더에서 media 폴더를 보면, 문서 내용에 포함된 그림 파일을 확인할 수 있습니다. 만약 문서 내 그림이 많을 경우 이러한 구조를 활용하여 한번에 파일 형태로 확인이 가능합니다.

  5. 엑셀(xls/xlsx), 파워포인트(ppt/pptx_ 파일구조도 동일하게 확장자 변경 후 압축을 해제하면 아래와 같이 폴더구조를 갖게 됩니다.

4-3) 정리

  • 한글의 경우 변경 이력을 저장하는 옵션을 사용할 경우 변경 이력을 확인이 가능하나, 실제 시험에서 특정 문서에 대한 이력을 확인하는 문제는 출제된 적이 없습니다.

    즉, 특정 아티팩트에 대해서 너무 깊이 있게 문제가 내지는 않는듯 합니다. 사실 이러한 상세 내역은 특별한 도구가 있지 않는 이상 알고 있어야만 분석이 가능한 특정 하나의 아티팩트에 해당하고 실기시험시간 내에 해결하기에는 적절하진 않은 문제라 출제되지 않은 듯 합니다.

  • 다만 이러한 문서파일 구조에 대해서 출제된 적은 있습니다. 즉, Compound File (복합 파일) 구조를 살펴볼 수 있는지 문제가 출제되었습니다. Compound File (복합 파일) 구조

    복합 파일 구조는 여러 개의 데이터를 하나의 파일 내에 저장할 수 있는 파일 형식을 의미합니다. 이 파일 형식은 마치 파일 시스템 안에 파일과 디렉터리가 있는 것처럼, 하나의 파일 안에 여러 개의 스트림(stream)과 스토리지(storage)를 포함할 수 있습니다. 이러한 구조는 복잡한 문서나 데이터를 하나의 파일로 관리할 때 유용합니다. 실제 시험에서는 위의 그림과 같이 문서파일의 확장자를 압축파일로 변경 후 내부 디렉토리 구조를 캡쳐하고 간단히 설명하는 수준으로도 충분할 것입니다. 기출문제로 "***.pptx 파일의 구조를 설명하여라" 이런식의 문제가 출제되었을 때, Compound File (복합 파일) 구조의 특징과, 압축파일로 변경 후 압축해제하였을 때 나오는 디렉토리 구조를 캡쳐하여 설명하는 문제가 출제되었습니다.

5. 기타 파일 전송 관련

5-1) FTP 를 이용한 파일 전송 관련 내용 확인

  • FTP(File Transfer Protocol)은 네트워크에서 파일을 전송하는 데 사용되는 표준 프로토콜입니다. 즉, 파일을 전송하거나 받을 때 사용할 수 있는 서비스(프로그램)으로 생각하면 될 것입니다. 이 많이 사용되고, 실제 시험에서도 여러 번 출제된 유형을 살펴보겠습니다.

  • 사실 프로토콜, 서비스 종류마다 상세분석을 하게 되면 포렌식 적으로 더 의미 있는 많은 정보를 확인할 수 있겠으나, 실기시험에서 요구하는 정도로만 가볍게살펴보겠습니다.

5-1-1) FileZilla

  • FTP 프로그램으로 많이 사용되는 소프트웨어 중 하나로 FileZilla의 로그를 활용하여 파일 유출 흔적을 확인할 수 있습니다.

  1. FileZilla의 경우 log를 저장하고 있습니다. FileZilla가 설치된 폴더내에서 logs 폴더를 살펴보면 log파일을 발견할 수 있습니다. (log 파일의 경우 무조건 해당 경로에 위치하는 것은 아니기 때문에 다양한 경로에서 찾아봐야 합니다.) 로그 파일을 Text에서 살펴 보겠습니다. 줄바꿈이 되어 있지 않은 경우 Options - Line Breaks 를 선택하여 봅시다.

  2. log를 살펴보면 접속한 IP, ID(username) 그리고 upload 또는 download 한 이력을 확인할 수 있습니다. 다만 log의 경우 무조건 아래의 형식이 아닌, 한글이나 다른 방식으로 표현할 수도 있습니다. 증거로 의심되는 파일명이 log에 포함될 가능성이 높고 한글 파일명일 수 있기 때문에 직접 추출하여 메모장으로 열어보는 방법으로 확인해보시는 것도 추천합니다. 한글의 경우 표시가 잘 안될 수 있기 때문입니다! 보통은 시험에서는 충분히 이해할 수 있는 수준의 로그로 확인이 가능할 것입니다.

5-1-2) 알드라이브(ALDrive)

  • 알드라이브와 같은 프로그램 또한 FileZilla와 같이 파일 업로드 다운로드를 할 수 있는 프로그램으로 FTP 기능도 포함하고 있습니다. (이전에는 알 FTP가 있었으나 알드라이브로 통합된 듯 합니다.) 사실 시험에 잘 출제되는 것은 아니기 때문에 참고로만 살펴봅시다.

  1. 먼저 아래 경로를 살펴보도록 하겠습니다. Users/{사용자}/AppData/Roaming/ESTsoft/ALDrive/Logs 확장자가 txt이지만 로그를 저장하고 있는 것을 확인할 수 있습니다.

    내용을 살펴보면, 업로드 전송 완료에서 어떤 IP로 어떤 파일을 전송했는지 확인이 됩니다. 다만 아래 로그에서는 모든 파일명이 다 표시되지는 않고 개수로 표시되네요! 이러한 로그 형태는 프로그램 마다 다를 수 있습니다.

  • 이렇듯 최근에는 프로그램의 설치 경로가 Users / {사용자}/ AppData / ~ 폴더 내에 설치되는 경우도 많기 때문에 꼭 함께 살펴봐야 합니다.

5-2) 토렌트

  • 토렌트(Torrent)는 파일을 공유하고 전송하는 P2P(피어 투 피어) 방식의 기술입니다. 이를 통해 사용자는 중앙 서버를 거치지 않고, 다른 사용자와 직접적으로 파일을 주고받을 수 있습니다. 토렌트의 종류가 매우 다양하긴 하나 일반인들이 많이 활용하는 공개 토렌트 (Public Torrent)

  • 최근에는 거의 출제되지 않고 있으나 오래전에 토렌트 활용 유출 문제가 출제되었습니다. 토렌트의 경우 상세 분석을 하려면 다른 도구들도 사용하여야 하지만 시험에서는 이렇게 하나의 특화된 아티팩트 분석이 어려울 수 있으니 가볍게 살펴 보겠습니다.

  1. 토렌트 파일의 경우 확장자가 torrent 입니다. 일반적으로 토렌트를 통해 공유하는 파일명과 torrent 파일명이 동일한 구성이 됩니다. Text에서 한 줄의 길이가 너무 긴 경우 Options - Max Size에서 줄바꿈 할 글자 수 조절이 가능합니다.

  2. Create date 부분에 값을 Unix Text Date 타입으로 Decode 해서 보면 시간 정보도 확인이 가능합니다.

  3. torrent 파일을 추출한 뒤 메모장을 이용해서 열어보도록 하겠습니다. 토렌트 파일명과 생성시간(유닉스 타임), 공유하는 파일의 크기를 표시하고 있습니다.

    creation date 값을 Dcode를 이용해서 확인해보면 시간정보를 확인할 수 있습니다.

  • 시험에서 torrent 파일이 발견되면, 해당 파일명과 동일한 파일이 있는지 검색을 통해 확인해볼 필요가 있을 것입니다. 추가로 torrent를 메모장으로 열어서 파일명, 크기 정보도 추가적으로 활용하면 좋을 것입니다.

  • [참고] 최근에는 토렌트의 경우 아래 그림과 같이 torrent 프로그램뿐만 아니라 인터넷 홈페이지 utweb 와 같은 인터넷을 통해 파일을 공유하는 것도 많이 활용하고 있어,터넷 접속 기록 중 utweb와 같은 토렌트 사이트 접속 기록도 살펴볼 필요가 있습니다. 토렌트 주소의 예) https://utweb.rainberrytv.com/gui/index.html?v=1.4.0.5825&localauth=localapi67d31b3c20caf8a0:#/dashboard

시험에 주로 출제되는 아티팩트를 한번 살펴보았습니다.

앞으로도 시험에 출제되는 아티팩트가 추가될 경우 계속해서 추가하도록 하겠습니다.

포렌식 시험에서는 단시간에 유명하지 않은 전혀 새로운 아티팩트가 출제되기는 쉽지 않을 수 있으나 이슈가 되거나 많이 언급되는 주요 아티팩트가 나올 경우 충분히 분석할 수 있는 준비가 되어 있어야 할 것입니다. 이번 공부에서는 가볍게 확인만 해보도록 하며, 추후에 다양한 연습문제를 통해 분석 시 타임라인 별로 아티팩트를 모으고 시나리오와 함께 살펴본다면 사용자가 어떤 활동을 하였는지 파악이 될 것입니다.

Last updated