악성코드 분석 방법

Hunjison·2021년 7월 25일
1

Malware

목록 보기
1/6
post-custom-banner

출처: https://haerakai.tistory.com/13?category=482634

수집된 악성코드를 분석하는 방법은 크게 3가지로 분류한다.

정적분석, 동적분석, 상세분석으로 나눈다.

1. 정적 분석


수집된 악성코드를 따로 실행하지 않고, 그 외형을 보고 분석하는 단계이다.

  • virustotal 업로드
  • 파일의 확장자를 보고 동작을 유추
  • 패킹 여부 확인(언패킹)
    • PEid 사용하여 패킹 종류 확인.
    • StudPE 이용하면 Imported Function과 Exported Function을 조회할 수 있다.
    • BinText 이용하면 파일에서 String을 긁어준다. (string 명령어 써도 됨)
    • PEView를 이용하면 PE 구조를 분석해준다.(010Editor가 그래도 낫지)

2. 동적 분석


동적 분석은 악성코드를 분석 환경에서 실행시킨 직후부터 순간순간 시스템의 변화를 분석하는 단계이다.

  • 프로세스 변화 확인하기
    • 악성코드는 프로세스의 형태로 동작하기 때문에 새로운 프로세스가 생성될 것임.
    • Process Explorer 활용
  • 파일시스템의 변화 확인하기
    • 새로운 파일을 생성하거나, 기존 파일을 수정, 삭제하는 등의 동작을 확인.
    • 레지스트리 변화 확인.
    • Process Monitor 활용
  • 네트워크 변화 확인하기
    • 악성코드는 공격자에게로 자신이 수집하거나 탈취한 정보를 네트워크를 통해서 보내는 동작을 취함.
    • 혹은 외부로부터 명령을 받아 동작을 수행하는 경우도 있음.

3. 상세 분석


악성코드를 리버스 엔지니어링하는 단계.

어셈블리어 명령들을 분석하여 악성코드가 어떤 함수를 이용하는지, 동작은 어떤 순서로 이루어지는지, 결과는 어떻게 되는지 등등 상세한 정보를 알아낼 수 있다.


profile
비전공자 출신 화이트햇 해커
post-custom-banner

0개의 댓글