정보보안기사 기출문제 총정리 ㉒ 악성코드 분석 – 정적·동적 분석·리버싱

악성코드 분석 개요

악성코드(Malware) 분석은 의심 파일의 동작 원리와 목적을 파악하는 과정입니다. 크게 정적 분석과 동적 분석으로 구분하며, 정보보안기사 시험에는 각 분석 방법의 특징과 대표 도구가 출제됩니다.

정적 분석 (Static Analysis)

파일을 실행하지 않고 코드와 구조를 분석하는 방법입니다.

주요 기법

  • 파일 해시 확인: MD5/SHA-256 해시를 VirusTotal에 조회하여 기존 악성코드 여부 확인
  • 문자열 추출: strings 명령으로 바이너리에서 URL, IP, 함수명 등 추출
  • PE 헤더 분석: Import Table에서 어떤 API를 호출하는지 확인 (예: CreateRemoteThread = 코드 인젝션 의심)
  • 디컴파일: IDA Pro, Ghidra로 어셈블리 코드 분석

정적 분석 회피 기법

  • 패킹(Packing): UPX, Themida 등으로 코드를 압축·암호화하여 분석 방해
  • 난독화(Obfuscation): 코드를 읽기 어렵게 변환
  • 암호화: 핵심 페이로드를 암호화하여 숨김

동적 분석 (Dynamic Analysis)

악성코드를 실제로 실행하면서 행동을 관찰합니다. 반드시 격리된 환경(샌드박스)에서 수행해야 합니다.

주요 모니터링 항목

  • 프로세스 생성: Process Monitor, Process Explorer로 새 프로세스 생성 확인
  • 레지스트리 변경: 자동 실행 등록, 시스템 설정 변경
  • 파일 시스템 변경: 파일 생성·삭제·수정 모니터링
  • 네트워크 통신: C2 서버 접속, 데이터 외부 전송 포착

샌드박스 솔루션

  • Cuckoo Sandbox: 오픈소스 자동화 악성코드 분석 플랫폼
  • ANY.RUN: 클라우드 기반 인터랙티브 샌드박스
  • Joe Sandbox: 상용 정적·동적 통합 분석 플랫폼

악성코드 유형별 특징

  • 랜섬웨어: 파일 암호화 후 복호화 키 대가로 금전 요구. 대량 파일 암호화 API 호출이 특징
  • RAT(Remote Access Trojan): 원격 제어 목적. C2 서버와 지속 통신
  • 루트킷(Rootkit): 커널 레벨에서 자신을 숨기고 지속성 유지
  • 키로거: SetWindowsHookEx API로 키 입력 캡처
  • 웜(Worm): 자기 복제로 네트워크 전파, 취약점 자동 공격

시험 핵심 포인트

  • 정적 분석 대표 도구: IDA Pro, Ghidra, PEview, strings
  • 동적 분석 대표 도구: Process Monitor, Wireshark, Cuckoo
  • 패킹 확인: PEiD, Detect-It-Easy로 패커 종류 식별
  • 동적 분석은 반드시 격리된 가상머신에서 수행
  • IoC(Indicators of Compromise): 악성코드 흔적 지표 (해시, IP, 도메인, 레지스트리 키)

마무리

악성코드 분석은 정보보안기사 실기에서도 출제 비중이 높습니다. 정적·동적 분석의 차이와 각 도구의 용도를 명확히 구분하여 암기하세요.

Leave a Comment