먼저, 실험에 앞서 WFA툴을 이용하여 분석할 대상인 Prefetch 파일에 대해 살펴보고 가자~
Prefetch 파일은 윈도우 부팅시, 어플레케이션 실행시에 속도를 개선하기 위해 실행 가능한 파일의 정보를 담고 있는 파일이다. 이 Prefetch 파일은 c:windowsprefetch 폴더에 존재하며, 확장자는 .pf 이다.

<그림 1. C:WINDOWSPrefetch폴더에 존재하는 .pf 파일>
그 파일명은 아래와 같은 형식으로 존재한다.
[실행 파일명.exe-Hash].pf
Hash값은 파일이 존재하는 패스(디렉토리 정보)의 해쉬값이다. 그리고 파일의 수정한 날짜와 만든 날짜 정보도 볼 수 있는데 WFA툴을 이용하면 탐색기에서 볼 수 없는 정보까지 확인이 가능하다. 우리는 이러한 정보를 이용하여 악성코드가 언제 감염되었는지 판단할 수 있는 것이다.
자~ 그럼.. WFA툴이 어떻게 생겼는지 알아보자!
먼저, 아래 주소에서 WFA툴을 다운로드 받아서 직접 PC에 설치하고 실행해 보자!
단, WINDOWS XP에서 실행해 주길 바란다.(VISTA의 Prefetch파일은 파일의 헤더정보가 달라서 정확한 정보를 얻을 수 없다!)
http://www.mitec.cz/Downloads/WFA.zip
WFA툴은 Michal Mutl님이 Forensic을 위해 만든 툴이라고 적혀있고, 프리웨어라고 명시하고 있다.

<그림 2. WFA툴 About>

<그림 3. WFA툴 File 메뉴>
각각의 Embedded Date, Runs값이 어느 위치에 존재하고 있는지 살펴보고 넘어가자!

<그림 4. XP와 Vista의 Embeded Date, Runs값의 Offset값은 다르다.>
먼저, 테스트에 사용될 악성코드는 USB등의 이동식저장매체를 통해 감염되는 악성코드인 11.exe 파일이다. 이 파일은 Autorun.inf 파일과 함께 USB에 이미 감염되어 있으며, USB를 시스템에 설치하는 순간 자동실행 기능에 의해 실행되어 Prefetch 폴더에 11.exe파일이 생성된 Created Time을 확인하고, 가장 최근에 실행된 시간정보인 Embedded Date값과 Runs값을 확인하면 악성코드에 언제 감염되었는지 판단할 수 있다.

<그림 5. USB에 저장된 악성코드인 11.exe가 실행된 기록을 확인>
그럼 다음에는 USB를 통해 감염된 악성코드를 위와 같이 확인하였다면 어떤 USB를 통해 내 PC가 감염되었는지, 내 PC에 저장된 setup.api 정보와 Registry정보를 활용하여 확인할 수 있는 시간을 가져보도록 하겠다.
Categories:악성코드 정보