본문 바로가기 주메뉴 바로가기
국회도서관 홈으로 정보검색 소장정보 검색

결과 내 검색

동의어 포함

목차보기

표제지

목차

요약문 3

SUMMARY 5

제1장 상용 및 공개 소프트웨어의 보안약점 진단기준 및 제거방안 12

제1절 상용 및 공개 소프트웨어 선정 12

제2절 보안약점 진단기준 13

1. 입력 데이터 검증 및 표현 13

2. 보안 기능 16

3. 시간 및 상태 19

4. 에러 처리 19

5. 코드 오류 20

6. 캡슐화 21

7. API 오용 22

제3절 보안약점 제거방안 23

제2장 동적분석을 이용한 바이너리 취약점 분석 절차 및 기준 24

제1절 네트워크 패킷 24

가. 패킷 모니터링(Packet Monitoring) 24

나. 웹 프록시(Web Proxy) 26

제2절 디버깅 27

가. 커널모드 디버깅(Kernel Mode Debugging) 28

나. 유저모드 디버깅(User mode Debugging) 30

제3절 퍼징 33

가. 퍼징 프레임워크 33

나. 웹 애플리케이션 퍼징(웹 퍼징) 34

다. 서비스 및 프로토콜 퍼징 35

라. API 과정 36

제3장 퍼징을 활용한 진단 분석 방법 및 활용방안 38

제1절 퍼징의 장ㆍ단점 38

1. 장점 38

2. 단점 39

제2절 FOE를 이용한 분석 가이드 39

1. FOE(Failure Observation Engine) 39

2. FOE 구조 41

3. FOE 설치 41

4. FOE를 이용한 퍼징 48

제3절 크래시 활용 방안 61

1. !exploitable(bang-exploitable) 61

2. WinDBG를 이용한 분석 62

제4장 결론 76

참고문헌 77

판권기 80

표목차

[표 1-1] 입력 데이터 검증 및 표현 15

[표 1-2] 보안기능 17

[표 1-3] 시간 및 상태 19

[표 1-4] 에러 처리 20

[표 1-5] 코드 오류 21

[표 1-6] 캡슐화 22

[표 1-7] API 오용 22

[표 2-1] 패킷 모니터링 도구 25

[표 2-2] 웹 프록시 도구 27

[표 2-3] 커널모드 디버깅 도구 29

[표 2-4] 유저모드 디버깅 도구 31

[표 2-5] 프레임워크 퍼징 도구 34

[표 2-6] 웹 애플리케이션 퍼징 도구 35

[표 2-7] 프로토콜 퍼징 도구 36

[표 2-8] API 퍼징 도구 37

[표 3-1] FOE의 예외처리 리스트[13] 53

[표 3-2] gomplayer에 대한 foe.yaml 예제 55

[표 3-3] WinDBG 명령어 64

[표 3-4] IDA 명령어 및 단축키 66

그림목차

(그림 1-1) 네이버 소프트웨어 동영상 부분 다운로드 순위 12

(그림 1-2) 개발사 다운로드 1위 소프트웨어 13

(그림 2-1) 유저모드 디버깅과 커널모드 디버깅 29

(그림 3-1) 커맨드라인을 이용하여 애플리케이션 실행 40

(그림 3-2) FOE 내부 구조도 41

(그림 3-3) FOE 공식사이트에서 제공하는 FOE 버전별 파일 리스트 42

(그림 3-4) FOE 설치 초기화면 43

(그림 3-5) 라이센스 관련 44

(그림 3-6) FOE 실행에 필요한 SciPy 파이썬 라이브러리 45

(그림 3-7) FOE 실행에 필요한 NumPy 파이썬 라이브러리 45

(그림 3-8) FOE 실행에 필요한 PyYAML 파이썬 라이브러리 46

(그림 3-9) FOE 실행에 필요한 윈도우용 디버깅 도구(WinDBG) 46

(그림 3-10) FOE 설치 완료화면 47

(그림 3-11) foe.yaml의 구조 48

(그림 3-12) foe.yaml 내 campaign 영역 49

(그림 3-13) foe.yaml 내 target 영역 49

(그림 3-14) foe.yaml 내 directories 영역 50

(그림 3-15) foe.yaml 내 runoptions 영역 50

(그림 3-16) foe.yaml 내 fuzzer 영역 51

(그림 3-17) foe.yaml 내 runner 영역 52

(그림 3-18) foe.yaml 내 debugger 영역 55

(그림 3-19) 곰플레이어에서 발견된 Exploitable Crash 62

(그림 3-20) windbg를 이용한 디버깅 63

(그림 3-21) 기본적으로 크래시파일을 입력할 경우 68

(그림 3-22) WinDBG JIT Debugger 설정 69

(그림 3-23) FOE를 이용해 발견된 크래시 결과 70

(그림 3-24) 010editor의 바이너리 비교 기능 71

(그림 3-25) 크래시파일과 원본파일 비교 72

(그림 3-26) 크래시 발생 시, 레지스터 상태와 명령어 73

(그림 3-27) 크래시 발생 구간의 명령어들 73

(그림 3-28) 함수에서 크래시가 발생한 부분 74

(그림 3-29) 모듈 내 크래시가 발생한 함수의 그래 75