5) 주요 응용 프로그램 아티팩트
Last updated
Last updated
시나리오 분석 시 가장 주요 힌트가 되는 것이 많이 나오는 것 중 하나는 이메일 입니다. 다만 회사 같은 경우는 이메일 프로그램(outlook과 같은) 을 활용하여 메일 기록이 남아 있을 수 있으나 일반적인 경우 보통 인터넷에서 바로 메일에 접속하여 주고 받는 경우가 대부분입니다.
이렇다 보니 메일 관련해서는 디지털포렌식 2급 수준에서는 다양한 형태로 메일을 저장하여 분석에 활용 하도록 하고 있습니다.
먼저 Autopsy의 메일 분석 기능을 한번 사용해보도록 하겠습니다. Run Ingest Modules - 이미지 선택 후 Email Parser 선택해보겠습니다.
분석이 종료되면 Data Artifacts 에서 E-Mail Messages 에 메일 분석 결과를 확인할 수 있습니다. 내용을 확인할 수 있는 메일 파일과 첨부파일 유무도 확인이 가능합니다.
첨부파일의 경우 [Attachments]에서 추출 할 수 있습니다. 다만 아쉽게도 정확한 파일명을 한눈에 보기는 어렵네요!
메일의 경우 사실 시나리오와 내용을 상세히 읽어봐야 합니다. 메일 내용 중에 찾아야 할 파일의 힌트 등이 많이 발견될 수 있기 때문입니다. 다만 Autopsy의 경우 pst, eml, ost 등을 발견 할 수 있지만, 실제 시험에서는 이외에도 다른 방식으로 메일 관련 파일을 활용하는 경우도 많습니다. 아래와 같이 Vol3 에 있는 "6. 메일" 폴더에서 png 그림 파일이 발견되는데 메일 관련 내용을 캡쳐하여 표시하고 있습니다. 실제 시험에서도 이런 파일을 숨겨두는 경우가 있습니다.
또한 단순 txt 파일로도 메일 형태로 저장되기도 합니다. 다만 txt의 경우 첨부파일이 같이 저장되지 않을 수 있으며, 내용을 잘 살펴봤는데 첨부 파일명이 내용에 포함되어 있다면 파일명을 한번 검색을 통해 찾아볼 필요가 있을 것입니다.
Autopsy에서는 분석해주지 않고 있는 형식의 msg 확장자를 가진 메일 형식도 존재 합니다.
MailView의 경우 eml 파일구조에 대해서 분석 해주고 있습니다. 한번 첨부파일이 있는 eml 파일을 추출하여 봅시다.
Mail Viewer에서 eml 파일을 불러오겠습니다.
내용과 첨부파일 또한 쉽게 확인이 가능합니다.
최근 시험에서 해당 메일을 분석하여, 메일 작성자 PC의 IP를 확인하는 문제 그리고 메일 서버의 IP 등을 확인하는 문제도 출제되고 있습니다.
먼저 메일 작성자의 PC의 IP를 확인하는 방법을 살펴보겠습니다. eml 파일에서 아래와 같이 Autopsy의 경우 Text-Strings 에서 Mail View - Source에서 X-Originating-IP : 14.39.145.100을 확인할 수 있는데 이 항목이 메일 작성자의 IP 주소에 해당합니다. 이메일이 처음 작성된 위치를 추적할 때 중요할 것입니다.
다만 모든 메일에 무조건 포함되는 것은 아닙니다. 메일 서버의 설정에 따라 저장이 될 수도 있고 아닐 수 있습니다. (네이버 메일에서 발송된 경우 포함되고 있네요!)
추가로 기출문제 유형 중 하나로 메일을 발견하였는데 추가적으로 추적을 하기 위한 방법을 기술하는 문제가 출제되었습니다. (다만 문제 유형은 아닌듯 합니다.) X-Originating-IP가 없을 경우 메일 서버 관리자에게 문의하여 사용자의 IP를 확보해야 하고, 해당 메일 서버, X-Originating-IP의 IP를 인터넷사업자(통신사)에 문의하여 정확한 IP 사용자를 특정하는 과정으로 추적을 할 수 있을 것입니다. Received(또는 Received-SPF)에는 메일 서버의 IP(114.111.35.228) 에 해당합니다.
msg 파일 또한 Text에서 확인이 가능합니다.
Page 1에 안보일 경우 우측 버튼을 눌러 Page 2에서 확인 가능 합니다.
메일에서 문제로 나오는 부분을 살펴보면 아래에 해당할 것입니다. - 발송자 메일주소 / 이름 - 수신자 메일주소 / 이름 - 메일의 첨부파일 - 메일 내용 - 메일 작성자 IP / 메일서버 IP
메일 관련 파일의 확장자를 잘 알고 있으면 추후에 확인할 검색을 이용하여 메일 파일을 찾아서 분석에 활용할 수 있을 것입니다. - eml - msg - pst / ost 다만 txt, 그림 파일의 경우 메일 구조를 가진 파일이 아닌 메일을 단순히 캡쳐하거나, 텍스트로 저장한 형식이기 때문에 따로 파일을 찾아야 하는 부분일 것입니다. 이 경우 메일 헤더 정보가 없을 것이기 때문에 IP 관련 정보 확인은 불가능합니다.
인터넷 접속 흔적, 다운로드 흔적들 또한 최근 시험에서 자주 출제되고 있으며, 단순히 인터넷 기록을 묻기 보다는 시나리오 분석 과정에서 힌트가 될만한 부분으로 활용 가능합니다.
Autopsy에서 WebHistory를 살펴보면 접근 기록을 확인할 수 있으며, 탐색기 접근 이력인 E, F 드라이브와 같은 다른 저장장치에 접근한 기록도 확인이 가능합니다.
해당 현재 분석중인 이미지에서는 확인이 안되고 있으나 좌측에 다운로드 기록도 확인이 됩니다. 예) 다운로드 기록 분석이 가능한 경우
만약 현재 분석중인 이미지의 경우 크롬 인터넷 기록이 보이지 않고 있습니다. 실제로는 크롬 아티팩트가 존재하고 있습니다. 직접 해당 아티팩트를 찾아가 보도록 하겠습니다. (실제 시험에서도 이런 증상이 발생할 수 있으니 참고하시기 바랍니다.) Users/{사용자}/AppData/Local/Google/Chrome/User Data/Default 폴더에 History 파일을 찾은 뒤 하단의 [Application]탭에서 Table을 urls로 선택할 경우 크롬에서 접근한 인터넷 기록을 확인할 수 있습니다.
[downloads] 테이블에서는 다운로드 기록을 확인할 수 있습니다. 다운로드 시작 시간, 완료 시간, 용량 등을 확인할 수 있습니다.
시간 정보의 경우 Dcode를 이용하여 확인이 가능합니다.
인터넷 기록의 경우 사용자가 접근했던 폴더나 파일, 인터넷을 통해 접근한 url, 다운로드 기록등을 확인할 수 있습니다. 실제 시험에서는 시나리오, 주요 의심 증거와 관련된 파일을 찾는 과정에서 이러한 접근 기록들은 주요 힌트가 될 것입니다.
문서 파일의 경우 텍스트, 그림, 서식 등이 하나의 파일로 저장되어 있는 형태에 해당합니다. 또한 한글이나 워드를 생성한 프로그램 버전이 다르다고 하더라도 문서 내용을 확인할 수 있도록 해야 효율적인 구조를 갖게 됩니다. 포렌식 전문가 입장에서는 이러한 구조에 대해서 간략히 파악하고 있으면 분석에 도움이 됩니다. 따라서 시험에서도 이와 관련된 문제가 출제되었습니다.
"8. 문서파일" 폴더에서 docx, hwp 파일을 추출하도록 하겠습니다.
먼저 한글파일을 먼저 살펴보겠습니다. 파일-문서정보를 살펴보면 지은이, 생성일 그리고 마지막 저장한 사람 등의 정보도 포함하고 있습니다.
압축이 해제가 됩니다. 압축 해제 시 압축 프로그램을 설치하여 활용하시는 것을 추천합니다. 윈도우 탐색기로는 압축 해제가 정상적으로 되지 않을 수 있습니다.
이러한 구조로 되어 있는 곳에 해당 정보들이 저장되게 됩니다. [아래 내용은 실습은 하지 않으셔도 됩니다. 참고로만 확인 하시면 됩니다!] 참고로 _HwpSummaryInformation 파일에 확장자를 txt로 변경 후 HxD로 처음 2바이트를 FF FE로 변경한 뒤 txt를 열게되면
문서 정보에 잇는 내용들을 확인할 수 있습니다. 즉, _HwpSummaryInformation 파일 구조를 분석하게 되면 해당 내용이 확인이 가능한 것입니다.
또한 PrvImage를 HxD로 보면 시그니처가 GIF로 시작합니다. 해당 파일을 그림판으로 열어보면 문서 내용의 썸네일처럼 보이는 듯 하네요!
다만, 시험장에서는 한글이 설치되어 있으면 문서 정보를 통해서 확인이 가능하니 굳이 이렇게 확인할 필요는 없습니다.
테스트.docx 파일을 열면 내용을 확인 할 수 있으며 파일- 정보에서 만든이, 수정시간 등을 확인할 수 있습니다.
docx 파일의 확장자를 zip로 변경 후 압축해제를 해보도록 하겠습니다. 해당 폴더를 살펴보면 docProps 폴더를 열어봅시다.
core.xml을 보면 creator, lastModifiedfiedBY(마지막 수정자), created 시간, modified 시간 정보를 저장하고 있습니다.
word 폴더에서 media 폴더를 보면, 문서 내용에 포함된 그림 파일을 확인할 수 있습니다. 만약 문서 내 그림이 많을 경우 이러한 구조를 활용하여 한번에 파일 형태로 확인이 가능합니다.
엑셀(xls/xlsx), 파워포인트(ppt/pptx_ 파일구조도 동일하게 확장자 변경 후 압축을 해제하면 아래와 같이 폴더 구조를 갖게 됩니다.
한글의 경우 변경 이력을 저장하는 옵션을 사용할 경우 변경 이력을 확인이 가능하나, 실제 시험에서 특정 문서에 대한 이력을 확인하는 문제는 출제된 적이 없습니다.
즉, 특정 아티팩트에 대해서 너무 깊이 있는 문제는 내지는 않는 듯 합니다. 모르면 해결 할 수 없으며, 실기 시험 시간 내에 해결하기에는 적절하지 않은 문제라 출제는 어려울 것으로 보이네요.
다만 이러한 문서파일 구조에 대해서 출제된 적은 있습니다. 즉, Compound File (복합 파일) 구조를 살펴볼 수 있는지 문제가 출제되었습니다. Compound File (복합 파일) 구조는 복합 파일 구조는 여러 개의 데이터를 하나의 파일 내에 저장할 수 있는 파일 형식을 의미합니다. 이 파일 형식은 마치 파일 시스템 안에 파일과 디렉터리가 있는 것처럼, 하나의 파일 안에 여러 개의 스트림(stream)과 스토리지(storage)를 포함할 수 있습니다. 이러한 구조는 복잡한 문서나 데이터를 하나의 파일로 관리할 때 유용합니다. 실제 시험에서는 위의 그림과 같이 문서 파일의 확장자를 압축파일로 변경 후 내부 디렉토리 구조를 캡쳐하고 간단히 설명하는 수준으로도 충분할 것입니다. 기출문제로 "***.pptx 파일의 구조를 설명하여라" 이런식의 문제가 출제되었을 때, Compound File (복합 파일) 구조의 특징과, 압축파일로 변경 후 압축해제하였을 때 나오는 디렉토리 구조를 캡쳐하여 설명하는 문제가 출제되었습니다.
FTP(File Transfer Protocol)은 네트워크에서 파일을 전송하는 데 사용되는 표준 프로토콜입니다. 즉, 파일을 전송하거나 받을 때 사용할 수 있는 서비스(프로그램)으로 생각하면 될 것입니다. 이 많이 사용되고, 실제 시험에서도 여러 번 출제된 유형을 살펴보겠습니다.
사실 프로토콜, 서비스 종류마다 상세분석을 하게 되면 포렌식적으로 더 의미 있는 많은 정보를 확인할 수 있겠으나, 실기시험에서 요구하는 정도로만 가볍게살펴보겠습니다.
FTP 프로그램으로 많이 사용되는 소프트웨어 중 하나로 FileZilla의 로그를 활용하여 파일 유출 흔적을 확인할 수 있습니다.
FileZilla의 경우 log를 저장하고 있습니다. FileZilla가 설치된 폴더내에서 logs 폴더를 살펴보면 log파일을 발견할 수 있습니다. (log 파일의 경우 무조건 해당 경로에 위치하는 것은 아니기 때문에 다양한 경로에서 찾아봐야 합니다.) 로그 파일을 찾게 되면 우클릭 - Open in External Viewer를 선택하여 내용을 확인해보겠습니다.
log를 살펴보면 접속한 IP, ID(username) 그리고 upload 또는 download 한 이력을 확인할 수 있습니다. 다만 log의 경우 무조건 아래의 형식이 아닌, 한글이나 다른 방식으로 표현할 수도 있습니다. 증거로 의심되는 파일명이 log에 포함될 가능성이 높고 한글 파일명일 수 있기 때문에 직접 추출하여 열어보거나 Open In Extgernal Viewer로 확인해보시는 것을 추천합니다. Autopsy 내에서 한글이 안보일 수 있습니다. 시험에서는 충분히 이해할 수 있는 수준의 로그로 확인이 가능할 것입니다.
알드라이브와 같은 프로그램 또한 FileZilla와 같이 파일 업로드 다운로드를 할 수 있는 프로그램으로 FTP 기능도 포함하고 있습니다. (이전에는 알 FTP가 있었으나 알드라이브로 통합된 듯 합니다.)
먼저 아래 경로를 살펴보도록 하겠습니다.
Users/{사용자}/AppData/Roaming/ESTsoft/ALDrive/Logs
확장자가 txt이지만 로그를 저장하고 있는 것을 확인할 수 있습니다.
내용을 살펴보면, 업로드 전송 완료에서 어떤 IP로 어떤 파일을 전송했는지 확인이 됩니다. 다만 아래 로그에서는 모든 파일명이 다 표시되지는 않고 개수로 표시되네요! 이러한 로그 형태는 프로그램 마다 다를 수 있습니다.
이렇듯 최근에는 프로그램의 설치 경로가
Users / {사용자}/ AppData / ~
폴더 내에 설치되는 경우도 많기 때문에 꼭 함께 살펴봐야 합니다.
토렌트(Torrent)는 파일을 공유하고 전송하는 P2P(피어 투 피어) 방식의 기술입니다. 이를 통해 사용자는 중앙 서버를 거치지 않고, 다른 사용자와 직접적으로 파일을 주고받을 수 있습니다. 토렌트의 종류가 매우 다양하긴 하나 일반인들이 많이 활용하는 공개 토렌트 (Public Torrent)
최근에는 거의 출제되지 않고 있으나 오래전에 토렌트 활용 유출 문제가 출제되었습니다. 토렌트의 경우 상세 분석을 하려면 다른 도구들도 사용하여야 하지만 시험에서는 이렇게 하나의 특화된 아티팩트 분석이 어려울 수 있으니 가볍게 살펴 보겠습니다.
토렌트 파일의 경우 확장자가 torrent 입니다. 일반적으로 토렌트를 통해 공유하는 파일명과 torrent 파일명이 동일한 구성이 됩니다.
torrent 파일을 추출한 뒤 메모장을 이용해서 열어보도록 하겠습니다. 토렌트 파일명과 생성시간(유닉스 타임), 공유하는 파일의 크기를 표시하고 있습니다.
creation date 값을 Dcode를 이용해서 확인해보면 시간정보를 확인할 수 있습니다.
시험에서 torrent 파일이 발견되면, 해당 파일명과 동일한 파일이 있는지 검색을 통해 확인해볼 필요가 있을 것입니다. 추가로 torrent를 메모장으로 열어서 파일명, 크기 정보도 추가적으로 활용하면 좋을 것입니다.
[참고] 최근에는 토렌트의 경우 아래 그림과 같이 torrent 프로그램뿐만 아니라 인터넷 홈페이지 utweb 와 같은 인터넷을 통해 파일을 공유하는 것도 많이 활용하고 있어, 인터넷 접속 기록 중 utweb와 같은 토렌트 사이트 접속 기록도 살펴볼 필요가 있습니다. 토렌트 주소의 예) https://utweb.rainberrytv.com/gui/index.html?v=1.4.0.5825&localauth=localapi67d31b3c20caf8a0:#/dashboard
시험장에서 제공하는 메일 분석 도구 중 하나인 MailView를 이용하여 분석을 해보도록 하겠습니다. 공식 사이트 : 다운로드 :