[Malware] 악성코드 기본 동적 분석: Sandbox에서 프로세스·파일·Registry·네트워크 확인하기

격리된 환경에서 프로세스, 파일, Registry, 네트워크 변화를 관찰하는 기본 동적 분석과 Sandbox 보고서 확인 방법을 정리합니다.

기본 동적 분석

동적 분석이란

동적 분석은 통제된 환경에서 프로그램을 실행하고 실행 중 발생하는 행위를 관찰하는 방법입니다. 프로그램이 무엇을 했는지 설명합니다.

Run → Observe → Collect Evidence → Explain Behaviour

동적 분석에서 확인할 내용

동적 분석을 안전하게 실행하기 위한 단계

  1. Malware Sample: 분석할 파일 식별
  2. Isolated VM: 실행 환경 격리
  3. Monitoring Tools: 행위 수집 도구 준비
  4. Controlled / Simulated Network: 통제하거나 모의한 네트워크 구성

동적 분석의 Blind Spot

실행했는데 아무 일도 일어나지 않았다면 실행 조건과 관찰 범위를 확인해야 합니다.

아무 행동이 없다는 이유만으로 악성코드가 아니라고 판단할 수는 없습니다.

대표적인 분석 환경

Public Sandbox에 파일을 올리기 전에는 해시로 기존 분석 결과부터 찾습니다. 악성 여부가 확인되지 않은 파일에는 회사 자산이나 내부 정보가 포함돼 있을 수 있습니다.

Joe Sandbox 보고서 확인

수업에서는 최근 악성코드에서 Dropper 구조를 자주 볼 수 있다는 설명이 있었습니다. 개별 샘플의 Dropper 여부는 파일을 생성하고 후속 실행에 사용한 증거로 판단합니다.

ANY.RUN 보고서 확인

Sandbox 보고서에도 실행되지 않은 기능은 나타나지 않을 수 있습니다. C2 응답, 분석 시간, VM 탐지, 사용자 동작 등의 조건을 함께 고려합니다.

Process Monitor — Procmon

Microsoft Process Monitor 문서에서 수집 항목과 필터 기능을 확인할 수 있습니다.

프로세스를 봐야 하는 이유

Process Explorer

Process Explorer는 실행 중인 프로세스와 해당 프로세스가 로드한 DLL 등을 확인할 때 사용합니다.

정상처럼 보이는 Process

svchost.exe라는 이름만으로 정상 프로세스라고 판단할 수는 없습니다.

디지털 서명도 안전을 보장하지 않습니다. 정상적으로 서명된 도구가 악용될 수 있으므로 누가 어떤 인자로 실행했는지 함께 살펴봅니다.

Joe Sandbox 실습

파일·Registry 조사 결과는 분석노트에 별도로 정리했습니다.

Network Behaviour & Investigation

Wireshark를 이용해 네트워크 패킷을 살펴보고 프로세스의 실행 기록과 연결합니다.

IoC → Behaviour

참고 자료