메모리 덤프를 이용한 분석 및 공격 기법 분석

29
메메메 메메메 메메메 메메 메 메메 메메 메메 System & Network Security Lab 석석 25 석 석석석 2013.6.24

description

메모리 덤프를 이용한 분석 및 공격 기법 분석. System & Network Security Lab 석사 25 기 유창 훈 2013.6.24. Table of Contents. 서론 메모리 덤프란 ? 메모리 덤프 방법 메모리 덤프 기술을 이용한 공격 사례 메모리 분석 예제 Q & A. 서론. 메모리 덤프란 ? 메모리 덤프의 목적 ? 프로세스 열린파일과 레지스트리 네트워크 정보 패스워드 암호화 키 복호화된 데이터 숨겨진 데이터 악성코 드. 메모리 덤프란 ?. 하드웨어방식 - PowerPoint PPT Presentation

Transcript of 메모리 덤프를 이용한 분석 및 공격 기법 분석

Page 1: 메모리 덤프를 이용한 분석 및 공격 기법 분석

메모리 덤프를 이용한 분석 및 공격 기법 분석

System & Network Security Lab석사 25 기 유창훈

2013.6.24

Page 2: 메모리 덤프를 이용한 분석 및 공격 기법 분석

Table of Contents

1. 서론2. 메모리 덤프란 ?3. 메모리 덤프 방법4. 메모리 덤프 기술을 이용한 공격 사례5. 메모리 분석6. 예제7. Q & A

Page 3: 메모리 덤프를 이용한 분석 및 공격 기법 분석

서론

Page 4: 메모리 덤프를 이용한 분석 및 공격 기법 분석

메모리 덤프란 ?

메모리 덤프란 ? 메모리 덤프의 목적 ?

프로세스열린파일과 레지스트리네트워크 정보패스워드 암호화 키 복호화된 데이터숨겨진 데이터 악성코드

Page 5: 메모리 덤프를 이용한 분석 및 공격 기법 분석

메모리 덤프 방법

하드웨어방식- Tribble

- 시스템에 영향이 적음- 미리 설치되어 있어야 함 .

Page 6: 메모리 덤프를 이용한 분석 및 공격 기법 분석

메모리 덤프 방법

소프트웨어방식- Win32(64)DD

- XP 이후 모든 버전 , 32/64 비트 . - 네트워크 전송기능 지원- 다양한 옵션을 지원 가능- 커뮤니티 버전은 무료 , 프로페셔널버전은 유료 .- Windbg 에서 분석가능

win32dd /d /f memorydump.dmp - Standard Microsoft crash dump.Win32dd /l /f c:\memory.bin - Waiting for a local connection on port 1337.

Page 7: 메모리 덤프를 이용한 분석 및 공격 기법 분석

메모리 덤프 방법

소프트웨어방식- MDD

- 모든 32 비트 지원- 4GB 이상의 램 정보 수집 불가

mdd –o test_mdd.mdd

Page 8: 메모리 덤프를 이용한 분석 및 공격 기법 분석

메모리 덤프 방법

크래시방식- Crash Dump

- BSOD(Blue Screen of Death)- 윈도우가 자동으로 생성- WinDbg 를 통해 디버깅 가능- 크래시덤프 종류

- 작은메모리덤프 - 커널메모리덤프- 전체메모리덤프

Page 9: 메모리 덤프를 이용한 분석 및 공격 기법 분석

메모리 덤프 방법

크래시방식

SessionManager

WinLogon

SaveDump

NtCreatePagingFile

User mode

Kernel mode

Paging file

Memory.dmp

① pagefile.sys 에 메모리 내용 저장

② 시스템 재부팅

③ savedump.exe 프로세스 실행

④ memory.dmp 생성 후 pagefile.sys 에 기록된 내용을 복사

Page 10: 메모리 덤프를 이용한 분석 및 공격 기법 분석

메모리 덤프 방법

크래시방식- 크래시 덤프 강제 생성방법

- PS/2 Keyboard- HKEY_LOCAL_MACHINE\System\CurrentControlSet\

Services\i8042prt\Parameter- USB Keyboard

- HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\kbdhid\Parameter

- CrashOnCtrlScroll 을 새로 만들고 DWORD 값을 0x01 로 설정

- 오른쪽 CTRL + SCROLL 을 두 번 눌러 크래시 발생 가능

Page 11: 메모리 덤프를 이용한 분석 및 공격 기법 분석

메모리 덤프 방법

가상화 방식- VMware

- 가상화 기반 프로그램을 이용한 메모리 덤프 획득- 세션이 일시정지 될 경우 , 메모리의 내용

을 .vmem 파일로 저장

Page 12: 메모리 덤프를 이용한 분석 및 공격 기법 분석

메모리 덤프 방법

절전모드 방식- 윈도우 절전모드

- 윈도우는 절전 모드 (Hibernation) 로 들어갈 경우 물리메모리 내용을 압축하여 c:\hiberfil.sys 파일로저장

- 추가적인 장비가 불필요- 숨김 파일 설정 되어있음 .

Page 13: 메모리 덤프를 이용한 분석 및 공격 기법 분석

메모리 덤프 기술을 이용한 공격 사례

개인 정보 도출 사례

국내 유명 증권사들의 홈트레이딩시스템 (HTS) 이 해킹에 무방비로 노출돼 있지만 당국과 증권사들은 알고도 쉬쉬하는데 급급하다는 지적이 일고 있다 .

홈페이지로부터 다운받은 각 증권사의 HTS 를 다양한 디버거 (Debugger) 툴을 이용해 분석한 결과 ID 도용 · 주문조작 · 데이터 조작 · 타인 계좌로 자금이체 조작 등이 손쉽게 가능한 것으로 나타났다는 지적이 잇따르고 있다 .

증권사의 HTS 가 주식거래를 위해 거치는 본인확인 장치는 증권 게좌번호와 비밀번호 , 공인인증서 , 보안카드 등 4~5 가지다 .

하지만 해커들은 증권 계좌만으로도 곧바로 계좌에 돈이 얼마나 들었는 지 찾아내는 것으로 최근 KBS 실험결과 밝혀졌다 .

Page 14: 메모리 덤프를 이용한 분석 및 공격 기법 분석

메모리 덤프 기술을 이용한 공격 사례

암호화 키 도출- Cryptographic key recovery from Linux memory

dumps 』 Torbjörn Pettersson, 2007 논문에서 리눅스 환경에서 암호화 키 도출

Page 15: 메모리 덤프를 이용한 분석 및 공격 기법 분석

메모리 분석

분석 범위- 주 메모리는 시스템 메인보드의 RAM 을 의미- 메모리 분석은 단순히 RAM 에 저장된 내용을

분석하는 것만은 아님

Page 16: 메모리 덤프를 이용한 분석 및 공격 기법 분석

메모리 분석

가상메모리- Win32 시스템에서 모든 프로세스는 4GB 의 가상

메모리를 할당- 가능한 이유 ? 페이지 파일- 사용자영역 2 GB

- 어플리케이션코드 , 전역변수 , DLL 코드 , 스택- 커널영역 2 GB

- 커널 , 필수 데이터 , I/O 버퍼공간 , EPROCESS 영역

Page 17: 메모리 덤프를 이용한 분석 및 공격 기법 분석

메모리 분석

가상메모리

Page 18: 메모리 덤프를 이용한 분석 및 공격 기법 분석

메모리 분석 - 루트킷 탐지

ActiveProcessList- 환형 이중 링크드리스트 형태의 프로세스 연결정보를

담고 있는 구조체- EPROCESS 커널 오브젝트 이하에서 접근가능 .

Page 19: 메모리 덤프를 이용한 분석 및 공격 기법 분석

메모리 분석 - 루트킷 탐지

Page 20: 메모리 덤프를 이용한 분석 및 공격 기법 분석

메모리 분석 - 루트킷 탐지 -DKOM 방식

Page 21: 메모리 덤프를 이용한 분석 및 공격 기법 분석

메모리 분석 - 루트킷 탐지 -DKOM 방식

커널오브젝트검색- 메모리를 분석하기 위해서는 덤프 이미지에서 커널

오브젝트를 찾아야 함- 커널 오브젝트 검사 방법

- 리스트 워킹- 패턴 매칭

Page 22: 메모리 덤프를 이용한 분석 및 공격 기법 분석

메모리 분석 - 루트킷 탐지 -DKOM 방식

커널오브젝트검색 – 리스트 워킹- 특정한 프로세스 이름을 이용- 덤프 이미지상에서 오브젝트 구조를 이용해 검색가능- ActiveProcessLinks 를 이용해 프로세스 검색

- DKOM 과 같은 은닉기법은 탐지 불가능

Page 23: 메모리 덤프를 이용한 분석 및 공격 기법 분석

메모리 분석 - 루트킷 탐지 -DKOM 방식

커널오브젝트검색 – 패턴매칭- 숨겨진 프로세스라 하더라도 동일한 오브젝트의

구조는 동일하게 존재 - 오브젝트의 구조를 이용하여 패턴을 매칭하여 검색

- DKOM 과 같은 기법 탐지 가능

Page 24: 메모리 덤프를 이용한 분석 및 공격 기법 분석

메모리 분석

전통적인 메모리 분석 기법– 문자열 추출

- 메모리 내무 문자열을 acsII 로 열어 검색- 이메일 , 계정 , 비밀번호 , 어플리케이션 데이터

분석 도구를 이용한 분석 기법- Volatility : https://

www.volatilesystems.com/default/volatility- Memoryze :

http://www.mandiant.com/products/free_software/memoryze/

Page 25: 메모리 덤프를 이용한 분석 및 공격 기법 분석

예제

1. 이메일 계정 암호 추출

Page 26: 메모리 덤프를 이용한 분석 및 공격 기법 분석

예제

1. 이메일 계정 암호 추출

Page 27: 메모리 덤프를 이용한 분석 및 공격 기법 분석

예제

2. FreeBSD - root 계정 및 암호

Page 28: 메모리 덤프를 이용한 분석 및 공격 기법 분석

예제

3. KakaoTalk - 메신저 대화내용

Page 29: 메모리 덤프를 이용한 분석 및 공격 기법 분석

Q&A