IT Security

리버싱) Malware_Analysis 실습 1-1 (Lab01) 정적분석

로픽 2022. 3. 23. 15:35
300x250

Malware_Analysis 실습 1-1 정적분석

 

기초 정적분석 실습 으로아래 출처를 기반으로 작성하였습니다.

 

출처 : https://book.naver.com/bookdb/book_detail.nhn?bid=7327943 

 

실전 악성코드와 멀웨어 분석

악성코드 분석 지침서. 악성코드 분석의 초심자를 비롯해 중고급자에게 충분한 지식을 전달할 수 있게 구성되었으며, 악성코드 분석 기법과 사용 도구, 그리고 악성코드 분석의 고급 기법을 다

book.naver.com

 

출처 : https://inf.run/Nib5

 

윈도우 악성코드(malware) 분석 입문 과정 - 인프런 | 강의

입문자를 위한 악성코드 분석 과정의 단기 온라인 과정입니다., - 강의 소개 | 인프런...

www.inflearn.com


Malware Analysis 실습 예제 Lab01-01.exe와 Lab01-01.dll

 

1. 바이러스토탈에 파일을 업로드 후 기존 안티바이러스 시그니처에 일치하는 파일이 존재하는가?

 - AV 시그니처에 일치하는 파일 존재.

 * 2 ~ 7번 문제 모두 바이러스토탈 결과로 한번에 확인할 수 있으나 실습으로 다양한 프로그램 이용.

 

[참고]

Lab01-01.exe 탐색 결과
Lab01-01.dll 탐색 결과


2. 이 파일은 언제 컴파일 되었는가?

 - PEView 통해 IMAGE_NT_HEADERS - IMAGE_FILE_HEADERS - Time Date Stamp 에서 확인 가능.

 

[참고]

실습 예제 TimeStamp


3. 이 파일이 패킹되거나 난독화 징후가 있는가? 그렇다면 무엇으로 판단했는가?

 - PEID 를 통해 컴파일러, 패킹 및 난독화 여부 확인 가능

 - 실습 예제는 Microsoft Visual C++ 6.0 만들어졌으나 패킹 및 난독화되지 않음

 

[참고]

Lab01-01.exe 결과

 

Lab01-01.dll 결과


4. 임포트를 보고 악성코드 행위를 알아낼 수 있는가? 그렇다면 어떤 임포트인가?

 - PEView 통해 SECTION.rdata - IMPORT Name Table 에서 확인 가능

 - lab01 exe 파일의 경우 파일 생성 및 검색에 대한 함수를 사용

   특정 파일 검색 후 파일 복사하거나 생성하는 것으로 추정

 

Lab01-01.exe 결과

 

 - lab01 dll 파일의 경우 소켓 통신을 할 수 있는 WS2_32 dll 사용

   프로세스를 생성하여 소켓 통신을 시도하는 것으로 추정

 

Lab01-01.dll 결과

 

Lab01-01.dll WS2_32.dll 포함


5. 감염된 시스템에서 검색할 수 있는 다른 파일이나 호스트 기반의 증거가 존재하는가?

 - 정적 분석과정에서 프로그램을 실행시킬 수 없으므로 Strings 프로그램으로 텍스트 추출하여 분석

 - Import 함수를 참고하여 텍스트와 함께 확인시

   kerne132.dll 존재 여부를 확인 후 존재하지 않을시 파일을 생성하는 것으로 추정

 - 호스트 기반 증거로 kernel132.dll 파일을 존재여부로 악성 여부 식별 가능

 

Lab01-01.exe 결과


6. 감염된 시스템에서 이 악성코드를 발견하기 위해 사용한 네트워크 기반의 증거는 무엇인가?

 - Import 함수 참고시 WS2_32.dll을 통해 소켓 통신을 시도

 - 신규 프로세스 생성 후 소켓 통신이 연결을 위한 'hello' 와 같은 텍스트가 포함되었으며

   루프백으로 통신을 시도

 - 네트워크 기반 증거로 IP_127[.]26[.]152[.]13 포함 여부로 확인 가능

 

Lab01-01.dll 결과


7. 이 파일의 목적은 무엇이라고 판단했는가?

 - 외부와 연결 시도하여 악의적인 행위를 할 수 있는 백도어 역할을 수행

 

 

 

 

반응형