swuforce_malware/inflearn

section5. 악성코드 분석 기초

ran831 2026. 3. 23. 20:17

악성코드 분석을 위한 메모리 포렌식 (memory forensic) 강의 | 대시보드 - 인프런

 

악성코드 분석을 위한 메모리 포렌식 (memory forensic)| 보안프로젝트 - 인프런 강의

현재 평점 4.6점 수강생 442명인 강의를 만나보세요. 윈도우 운영체제 구조, 메모리 구조를 이해할 수 있으며, 메모리에 저장된 정보를 이용하여 어떻게 악성코드를 분석할 수 있는지 상세하게 다

www.inflearn.com


(1) 악성코드 개요

  • 악성코드란?
    • 악의적인 목적을 위해 작성된 실행 가능한 코드의 통칭
  • 악성코드 특성
    • 주요 증상: 네트워크 트래픽 발생, 시스템 성능 저하, 파일 삭제, 이메일 자동발송, 개인 정보 유출, 원격 제어 등
    • 대다수의 컴퓨터 침입과 보안 사고의 한 부분으로 역할 수행함
    • 다양한 범위를 가짐(사용자, 컴퓨터, 네트워크 등)
  • 악성코드 종류
    • 바이러스, 트로이 목마, 웜, 루트킷, 스케어웨어 
    • 최근엔 다양하게 발전해와서 특정한 악성코드 종류를 규정하긴 어려움
  • 악성코드 증가 추세 
    • 2007년부터 급등하기 시작

(2) 악성코드 분석 방법론

  • 대부분의 경우 사람이 읽을 수 없는 형태의 실행파일이기 때문에 다양한 도구가 필요함
  • 정적 분석 - 악성코드를 실행하지 않고 조사
    • 기초 정적 분석 (툴에 의한 결괏값 확인)
    • 고급 정적 분석 (어셈블리언어 차원의 정밀한 파악)
  • 동적 분석 - 악성코드를 실행하면서 분석
    • 기초 동적 분석
    • 고급 동적 분석
  • 기초 정적 분석 - 기초 동적 분석 - 고급 정적 분석 - 고급 동적 분석 순서로 분석하는 방식 추천함

 

  • 기초 정적 분석
    • 악성 여부를 판단하는 안티바이러스 도구 사용
    • 악성코드를 판별하는 해시 사용
    • 파일의 문자열, 함수, 헤더에서 개략적인 정보 수집
    • 특징
      • 실제 명령어를 보지 않고 실행 파일을 조사
      • 기능 정보와 그 정보를 이용해 간단한 네트워크 시그니처 생성
      • 직관적이며 신속하게 수행
      • 정교한 악성코드 분석에는 비효율적이고 중요한 행위를 놓칠 수 있음
    • 분석 도구
      • PEID(컴파일 정보 확인), PEView(PE 헤더에 대한 정보 나열로 시그니처 확인 가능), Dependency Walker, Strings

 

  • 기초 동적 분석
    • 악성코드를 실행한 후 유효한 시그니처를 만들거나 감염 흔적을 제거하는 등 두 가지 모두를 위한 시스템의 행위를 관찰
    • 안전한 실행을 위해 연구용으로 실행할 수 있는 환경 설정이 필요
    • 분석 도구
      • Procexp, Wireshark, Regshot(실행 이전과 이후 상태 비교 가능), Procmon
      • Cuckoo Sandbox(자동)

 

  • 고급 정적 분석
    • 프로그램의 명령어가 하는 작업의 목적 파악
    • 실행 파일을 디스어셈블러로 로드해 악성코드의 내부를 역공학하는 과정
    • 프로그램의 정확한 내용 파악 가능
    • 디스어셈블리에 특화된 지식, 코드 구성과 윈도우 운영체제 개념을 요구함
    • 분석 도구
      • IDA

 

  • 고급 동적 분석
    • 디버거를 이용해 동작하는 악성 실행 파일의 내부 상태 점검
    • 실행 파일에서 세부 정보를 추출하는 다른 방식 제공
    • 다른 기법으로 알아내기 어려운 정보 획득할 때 유용함
    • 분석 도구
      • OllyDbg

'swuforce_malware > inflearn' 카테고리의 다른 글

section4(21,22) volatility 실습  (0) 2026.03.31