표제지
목차
약어표 9
논문요약 10
제1장 서론 12
제2장 매크로와 악성코드 15
제1절 매크로와 VBA 정의 15
1. 매크로 정의 15
2. VBA 정의 16
제2절 악성코드 정의 및 유형 17
1. 악성코드의 정의 17
2. 악성코드의 유형 18
제3장 매크로 악성코드와 난독화 20
제1절 매크로 악성코드 20
1. 매크로 악성코드의 유포 방식 20
2. 매크로 악성코드의 특징 20
제2절 매크로 악성코드의 난독화 21
1. 난독화의 정의 및 유형 21
2. 매크로 악성코드의 난독화 22
제4장 매크로 악성코드 탐지 및 분석 24
제1절 매크로 코드 탐지 24
1. MS Office 문서 구조 24
2. 매크로 코드 덤프 30
제2절 매크로 악성코드 분석 32
1. 매크로 악성코드 동적 분석 방법 32
2. 매크로 악성코드 동작 방식 34
3. 매크로 악성코드 구문 분석 35
제5장 난독화된 매크로 악성코드 탐지 모델 37
제1절 난독화된 매크로 악성코드 탐지를 위한 모델 제안 37
1. 난독화된 매크로 악성코드 탐지를 위한 모델의 알고리즘 37
2. 매크로 악성코드의 난독화 분석 39
3. 난독화된 매크로 악성코드의 변수 분석 41
4. 난독화된 매크로 악성코드의 함수 호출 분석 42
5. 난독화된 매크로 악성코드에 대한 분류 및 진단 43
제2절 난독화된 매크로 악성코드 탐지 모델의 검증 47
1. 제안 모델의 구현 47
2. 매크로 악성코드 탐지율 분석 50
제3절 난독화된 매크로 악성코드 탐지 모델의 기대효과 54
제6장 결론 56
참고문헌 58
ABSTRACT 60
[표 2-1] 악성코드 분류 18
[표 4-1] CFBF 헤더 구조 설명 27
[표 4-2] 디렉터리 섹터 설명 28
[표 5-1] 의심코드 분류 기준 44
[표 5-2] 의심코드 판단 기준 46
[표 5-3] 샘플군 A에 대한 제안 모델과 백신사 성능 비교 결과 51
[표 5-4] 샘플군 B에 대한 제안 모델과 백신사 성능 비교 결과 51
[표 5-5] 제안 모델의 URL 탐지 세부 결과 53
[표 5-6] 제안 모델의 의심 코드 탐지 세부 결과 53
[그림 2-1] 비주얼 베이직 에디터 16
[그림 2-2] 바이러스 유형별 통계 자료 19
[그림 2-3] 바이러스 분류별 통계 자료 19
[그림 3-1] 숫자 연산 및 문자열을 통한 초기 난독화 형태 22
[그림 3-2] 내장 문자열 함수를 이용한 난독화 23
[그림 3-3] 난독화를 위해 저장된 폼 변수, 속성 값 데이터 23
[그림 4-1] 매크로를 포함하지 않는 CFBF 파일 구조 25
[그림 4-2] 매크로를 포함하는 CFBF 파일 구조 25
[그림 4-3] 스트림 내부 매크로 코드 변환 26
[그림 4-4] OOXML 포맷 파일 압축 형식 29
[그림 4-5] 매크로 코드 덤프 소스코드 일부 30
[그림 4-6] DecompressChunk 함수 코드 일부 31
[그림 4-7] 폼 오브젝트 파싱 구조 31
[그림 4-8] 스트림 오브젝트 데이터 파싱 코드 일부 32
[그림 4-9] 매크로 보안 설정 32
[그림 4-10] 악성코드 다운로드 패킷 33
[그림 4-11] 악성코드 다운로드 위치 34
[그림 4-12] 매크로 코드 실행 후 시작 부분 35
[그림 4-13] 첫 실행 후 함수 호출 36
[그림 4-14] 추가 악성코드 파일 다운로드 36
[그림 5-1] 제안 모델의 전체 순서도 38
[그림 5-2] 변수 분석에 사용되는 구조 41
[그림 5-3] Function 분석에 사용되는 구조 42
[그림 5-4] 정규식을 이용한 내장 함수 파싱 43
[그림 5-5] 제안 모델의 난독화 해제 부분 48
[그림 5-6] 제안 모델의 의심 코드 결과 도출 UI 49
[그림 5-7] 제안 모델의 악성 URL 탐지 결과 UI 49
[그림 5-8] 샘플군에 대한 탐지 결과 그래프 52