Post

침해사고분석 이론 3

메모리 덤프

개념

  • 컴퓨터의 RAM에 저장된 모든 내용을 파일로 저장하는 과정
  • 사고 발생 당시의 시스템 상태를 포착하여 증거를 보존하는 중요한 과정
  • 침해사고 분석의 초기 단계에서 메모리 덤프를 확보하는 것이 중요
  • 활용 사례: 악성코드 분석, 시스템 문제 진단, 침해 사고 조사 등

종류

  1. 전체 메모리 덤프: 모든 RAM 데이터를 포함
  2. 커널 메모리 덤프: 운영체제 커널 영역만 포함
  3. 미니 메모리 덤프: 오류 관련 최소한의 정보만 포함
  4. 사용자 모드 프로세스 덤프: 특정 애플리케이션의 메모리만 포함

도구

  1. FTK Imager
  2. Volatility
  3. Belkasoft Live RAM Capturer
  4. Magnet RAM Capture
  5. Dumpit

주요 도구

FTK Imager

주요 기능

  • 디스크 이미징: 디스크 또는 특정 파티션의 이미지를 생성하며, 무결성 검증을 위한 해시 값 생성
  • 메모리 덤프: 실행 중인 메모리 상태를 파일로 저장
  • 증거 수집: 파일, 폴더, 메모리 등 다양한 데이터 수집
  • 기본 분석: 수집된 데이터에서 특정 문자열 검색 및 파일 분석

메모리 분석 기능

  • 프로세스 분석: 실행 중인 프로세스 확인
  • DLL 분석: 동적 라이브러리 파일 확인
  • 네트워크 연결 분석: 열린 포트와 연결된 IP 주소 분석
  • 문자열 검색: 메모리에 남은 키워드 또는 데이터 패턴 탐색
  • 히스토리 분석: 사용 흔적 추적

장단점

장점
  • 다양한 파일 시스템 지원
  • 강력한 검색 및 해시 검증 기능
  • 사용자 친화적인 인터페이스
단점
  • 실시간 분석 기능 부족
  • 정적 분석 중심

Redline

개념

  • FireEye Mandiant에서 개발한 무료 메모리 분석 도구
  • 침해사고 발생 시 휘발성 데이터를 수집하고 분석

주요 기능

  • 메모리 분석: 실행 중인 프로세스 및 메모리 상태 분석
  • 파일 시스템 분석: 파일의 변화 기록 파악
  • 레지스트리 분석: 시스템 설정 및 키 변화 분석
  • 이벤트 로그 분석: 시스템 및 보안 이벤트 추적
  • 네트워크 분석: 네트워크 연결 및 포트 상태 파악

NTFS 메타파일 분석

주요 메타파일

1. $MFT (Master File Table)

  • 역할: NTFS 파일 시스템에서 모든 파일과 디렉터리 정보를 저장
  • 분석 포인트
    • 삭제된 파일, 숨겨진 파일, 변조된 파일 흔적
    • 파일의 MAC 타임 정보를 통해 파일 시스템 활동 및 시간 흐름 분석
    • $MFT 엔트리 속성 분석을 통해 파일 세부 정보 확인

2. $LogFile

  • 역할: NTFS 파일 시스템의 트랜잭션 로그를 저장하여 데이터 무결성 보장
  • 분석 포인트
    • 시스템 충돌 또는 비정상 종료 전 파일 시스템 활동 재구성
    • 악성코드의 파일 조작 시도 확인

3. $Bitmap

  • 역할: 디스크의 클러스터 할당 상태를 저장
  • 분석 포인트
    • 디스크 공간 사용 현황 파악
    • 숨겨진 파일이나 파티션 존재 여부 확인

4. $Boot

  • 역할: 운영체제를 시작하는 데 필요한 부트 섹터 코드 저장
  • 분석 포인트
    • 루트킷 등의 악성코드가 부트 과정을 변조했는지 확인

5. $RECYCLE.BIN

  • 역할: 휴지통 디렉터리로, 삭제된 파일의 흔적 보존
  • 분석 포인트
    • 악성코드 감염 경로 및 정보 유출 시도 파악

6. System Volume Information

  • 역할: 시스템 복원 지점과 볼륨 섀도 복사본 저장
  • 분석 포인트
    • 과거 시스템 상태 확인
    • 악성코드 감염 시점 추적

7. $Secure

  • 역할: 파일 및 디렉터리의 접근 제어 목록(ACL) 저장
  • 분석 포인트
    • 중요 파일/디렉터리의 접근 권한 변경 여부 확인

8. $Extend

  • 역할: 파일 및 디렉터리 확장 속성 저장
  • 분석 포인트
    • 악성코드가 확장 속성을 이용해 데이터를 은닉했는지 확인

분석 절차

  1. 메모리 덤프 생성
    • FTK Imager 또는 Magnet RAM Capture로 메모리 덤프 확보
  2. 휘발성 데이터 분석
    • Volatility, Redline 도구로 프로세스, 네트워크, DLL 등 분석
  3. NTFS 메타파일 분석
    • $MFT, $LogFile 등 메타파일을 분석하여 파일 시스템 변화 확인
  4. 결과 정리 및 보고서 작성
    • 수집된 데이터를 정리하고 침해사고 분석 결과 작성

침해사고 분석 체크리스트

  1. 시스템 정보
    • systeminfo, ipconfig /all
  2. 계정 정보
    • net user, wmic useraccount get name
  3. 프로세스 정보
    • tasklist, process explorer
  4. 서비스 정보
    • services.msc, net start
  5. 네트워크 연결 정보
    • netstat -ano, tcpview
  6. 방화벽 설정
    • netsh firewall show config
  7. 로그 분석
    • eventvwr.msc, wevtutil
  8. 레지스트리
    • reg query, regedit
  9. 파일 정보
    • dir, explorer
  10. 시작 프로그램
    • msconfig, Autoruns
  11. 메모리 덤프
    • windbg, Volatility
  12. DLL 정보
    • Process Explorer
  13. 루트킷 탐지
    • GMER, Rootkit Revealer
  14. 브라우저 히스토리
    • BrowsingHistoryView
  15. USB 사용 기록
    • devmgmt.msc, USBDeview