Practical Malware Analysis 1-2
실습 1-2
실습 환경 : Vmware (Windows 7 32bit)
사용한 툴 : IDA free 5.0, PEiD, PE View, UPX
[01] http://www.VirusTotal.com/에 에 Lab01-02.exe 파일을 업로드하자. 기존 안티바이러스에 정의된 것과 일치하는가?
Lab01-02.exe 파일을 업로드한 결과 66개 안티바이러스 시그니처 중 48개와 일치한다.
[02] 이 파일이 패킹되거나 난독화된 징후가 있는가? 그렇다면 무엇으로 판단했는가? 파일이 패킹돼 있다면 언패킹 해보자.
PEiD를 사용해보니 Nothing found *가 나타나서 확인할 수 없었고 PE View를 사용하니 UPX로 패킹한 것을 확인할 수 있었다. 이제 UPX툴을 사용하여 언패킹을 진행해보면
위와 같이 정확한 PE구조가 나오는 것을 확인할 수 있다.
[03] 임포트를 보고 악성코드의 기능을 알아낼 수 있는가? 그렇다면 어떤 임포트를 보고 알 수 있었는가?
IDA free로 파일을 연 뒤에 임포트 함수를 살펴보면 CreateService, InternetOpen, InternetOpenURL 함수가 보이는데 InternetOpenURL 함수로 인터넷 url을 열 것이고 CreateService 함수를 사용하여 어떠한 서비스를 생성한다고 추측할 수 있었다.
[04] 감염된 시스템에서 악성코드를 인식하는데 어떤 호스트 기반이나 네트워크 기반의 증거를 사용했는가?
IDA free에서 string을 살펴보면 MalService란 문자열과 http://www.malwareanalysisbook.com이라는 문자열이 보이는 것을 확인할 수 있었다. 이 문자열을 통해 생각해보면 CreateService를 통해 MalService라는 서비스를 생성하는 것을 생각할 수 있고 InternetOpenURL을 통하여 http://www.malwareanalysisbook.com이라는 URL을 오픈하는 것을 생각할 수 있었다. 이 부분을 네트워크 기반의 증거로 사용할 수 있다.