2014년 3월 24일 월요일

디지털 포렌식(Digital Forensics)을 위한 운영체제, SANS SIFT 3.0 공개

일반적으로 디지털 포렌식을 위해서는 분석가의 능력이나 취향에 맞는 다양한 소프트웨어들을 많이 사용합니다. 윈도우 엔지니어인 저의 경우에는 악성코드 분석이나 멀웨어 포렌식(Malware Forensics)을 위해 사용하는 소프트웨어들 대부분이 마이크로소프트(Microsoft)의 윈도우(Windows) 운영체제에서 사용 가능한 것들 입니다.

그래서 일전에 공개한 "메모리 포렌식(Memory Forensic)을 위한 메모리 분석 툴 Mandiant Redline"이나 "볼라틸리티(Volatility)를 이용한 메모리 분석 사례" 블로그 글에서와 같이 윈도우 소프트웨어들이 주를 이루고 있습니다. 물론 그 중에는 백트랙(BackTrack)을 일부 사용하기도 하였지만, 이는 개인적인 연구 작업과 리눅스(Linux)를 익히기 위한 개인적인 취향으로 인한 부분들입니다.

악성코드 분석에서도 역시 "Windows 7에서 Windows XP Mode를 VMWare에 설치 하기" 블로그 글에서와 같이 윈도우 운영체제에 VMWare를 설치하여 분석 작업과 연구를하고 있습니다.

이렇듯 대부분의 악성코드나 취약점 그리고 디지털 포렌식 등을 전문으로 연구 하시는 분들은 특정 운영체제에 제한 받기 보다는 개인적으로 사용하기 편하고 작업 효율이 높은 운영체제를 선택해 사용하고 있습니다.

하지만 특이하게도, 전문적인 보안 대응 및 분석 기술을 강연하는 SANS에서는 별도의 리눅스 기반 운영체제를 제작하여 누구나 사용할 수 있도록 배포하고 있습니다. 그 중에는 악성코드 분석을 위해 제작된 "REMux(Reversing Engineering Malware liux)"와 디지털 포렌식을 위해 제작된 "SIFT(SANS Investigate Forensic Toolkit )"이 존재합니다. 

그래서 SANS에서 교육하는 악성코드 분석 과목과 디지털 포렌식 과목에서는 해당 운영체제를 사용해 분석을 진행하는 내용이 교재에 포함되어 있습니다. 그 중에서 REMux에 대한 이야기는 다음 기회에 실제 악성코드 분석 사례를 이용해 설명하기로 하고 오늘은 SIFT에 대해 이야기 하고자 합니다.

오늘 SANS 블로그 "SANS SIFT 3.0 Virtual Machine Released"을 통해 새로운 3,0 버전의 SIFT 가상화 이미지가 공개되었다는 글을 보게 되었습니다. 우선 이번 3.0 버전의 새로운 기능들로 SANS에서는 다음을 꼽고 있습니다.

Ubuntu LTS 12.04 Base
64 bit base system
Better memory utilization
Auto-DFIR package update and customizations
Latest forensic tools and techniques
VMware Appliance ready to tackle forensics
Cross compatibility between Linux and Windows
Option to install stand-alone via (.iso) or use via VMware Player/Workstation
Expanded Filesystem Support

우선, SIFT 3.0 가상화 이미지를 다운로드 하기 위해서는 위 블로그에 존재하는 링크인 "Download SIFT Workstation VMware Appliance Now - 1.5 GB"를 통해 다운로드 할 수 있습니다. 

다운로드 전에 SANS 계정이 필요한데, 이는 누구나 간단한 정보 입력만으로 만들 수 있습니다. 그 이후에는 간단하게 SIFT 3.0 가상화 이미지를 7Zip으로 압축한 "SIFT Workstation 3.0.7z" 1.44 GB 크기의 파일을 다운로드 할 수 있습니다. 100 MB 광랜을 사용하는 집에서 다운로드하는데 대략 3시간 정도 걸렸던 것 같습니다.

다운로드 한 "SIFT Workstation 3.0.7z" 파일을 적당한 폴더에 압축을 풀고 VMWare를 실행 한 후 아래 이미지와 같이 "File"에서 "Open"을 클릭 합니다.


그리고, "SIFT Workstation 3.0.7z" 압축을 푼 폴더로 이동하여 아래 이미지와 같이 "SIFT Workstation 3.0.vmx" 을 선택 합니다.


선택이 완료되면 VMWare에서는 아래 이미지와 같이 자동으로 새로운 게스트 탭(Guest Tab)을 생성하게 됩니다.


게스트 탭 생성이 완료되었다면 VMWare의 실행(Power On)을 클릭하여 SIFT 3.0 가상화 이미지를 실행 시킵니다. 부팅 과정이 짧게 진행 된 후에는 아래 이미지와 같이 변경된 새로운 SIFT 3.0 로그인 화면이 나타나게 됩니다.


로그인 화면이 나타났다면, SANS 블로그에 공개되어 있는 것과 같이 "sansforensics"의 비밀번호인 "forensics"을 입력하고 로그인을 합니다. 

로그인이 성공하게 되면 아래 이미지와 같이 터미널 창이 생성되어 있는 메인 화면을 볼 수가 있습니다. 사용하는 노트북 화면이 16:9 크기를 지원하는 사양이라 아래 이미지 역시 조금 길어져 보입니다.


앞서 설명한 바와 같이 우분투(Ubuntu) LTS 12.04 커널을 기본으로 하여 SIFT 3.0을 제작하였음으로, 이미 우분투 리눅스에 대한 경험이 있으신 분들은 비교적 빠르게 적응 하실 수 있을 것으로 보입니다.

우선 바탕화면을 살펴보면 총 8개의 PDF 파일이 존재하는데, SANS DFIR(Digital Forensics & Incident Response) 강의 소개와 관련된 PDF 파일인 "Brochure_SANSDFIR.pdf"와 "Poster_Fall_2013_Evidence_Of.pdf"가 있으며, SIFT 3.0을 활용하기 위한 가이드 문서인 "SIFT-Cheat-Sheet.pdf"가 있습니다. 

그 외에 윈도우와 리눅스 명령어를 담은 "windows-to-unix-cheatsheet.pdf", 침해 사고 현장에서 수집해야 될 로그들과 절차에 대한 "log2timeline-cheatsheet.pdf", 네트워크 포렌식을 위한 "network-forensics-cheatsheet.pdf" 그리고 메모리 포렌식을 위한 "Memory Forensics Cheat Sheet .pdf"과 함께 악성코드를 탐지하기 위한 방법론에 대해 다룬 "Memory Forensics Cheat Sheet .pdf"이 있습니다.

간단한게 살펴본 SIFT 3.0은 외형은 이러한 형태이며, 이제는 SIFT 3.0에 포함된 볼라틸리티(Volatility)와 DFF(Digital Forensics Framework)를 간단하게 살펴 보도록 하겠습니다.

우선 화면 왼쪽 상단에 포함된 터미널 아이콘을 클릭하면 아래 이미지와 같이 프롬프트가 생성됩니다. 여기서 간단하게 볼라틸리티의 약어인 "vol"과 도움말 명령인 "-h"을 이용해 SIFT 3.0에 포함된 볼라틸리티의 버전은 2.3.1 임을 알 수가 있습니다.


SIFT 3.0에는 기본적으로 DFF(Digital Forensics Framework)라는 포렌식 프레임워크가 포함되어 있습니다. DFF는 아래 이미지와 같이 왼편 하단에 아이콘이 존재하며 해당 아이콘을 클릭하면 DFF가 실행 됩니다. 


실행 후에는 생성한 메모리 덤프(Memory Dump) 파일과 디스크 이미지(Disk Image) 파일들을 읽어들여서 분석을 진행 할 수 있습니다. 

이상으로 SIFT 3.0에 대해 기본적인 사항들에 대해 살펴 보았습니다. 기본적으로 SIFT 3.0에는 다양한 디지털 포렌식 툴들이 포함되어 있으나, 우분투 리눅스를 이용하다 보니 저와 같이 리눅스에 익숙하지 않은 분들은 사용에 어려운 부분들은 있습니다. 

그래서, 일부 디지털 포렌식 커뮤니티에서는 "WinFE(Windows Forensic Environment)"라는 윈도우 기반의 포렌식 운영체제 제작 방법들을 소개하기도 합니다. WinFE와 관련된 사항들은 다음 기회에 다루어 보기로 하겠습니다.

댓글 없음:

댓글 쓰기