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

목차보기

표제지

목차

제1장 서론 10

1.1. 연구 배경 및 목적 10

1.2. 논문 구성 18

제2장 관련 연구 19

2.1. OWASP 선정 HTML5 보안 취약점 19

2.2. Detecting Cross Site Scripting Vulnerabilities Introduced by HTML5 22

2.3. 25 Million Flows Later - Large-scale Detection of DOM-based XSS 23

2.4. Apache Nutch 24

2.5. 본 연구의 차별성 26

제3장 Nutch 기반 HTML5 보안 취약점 탐지 방법 28

3.1. Nutch의 웹 문서 수집 과정 28

3.2. 선정 HTML5 보안 취약점 정의와 분류 30

3.2.1. 태그 및 속성에 기반한 취약점 30

3.2.2. 자바스크립트에 기반한 취약점 32

3.2.3. HTML5 보안 취약점 패턴 정의 34

3.3. HTML5 보안 취약점 탐지 과정 36

3.4. HTML5 보안 취약점 탐지 방법 39

3.4.1. 태그 및 속성에 기반한 취약점 탐지 방법 39

3.4.2. 자바스크립트에 기반한 취약점 탐지 방법 42

제4장 성능 기반 데이터 분배를 통한 Nutch 수집 속도 향상 방법 44

4.1. Nutch의 기본 수집 과정과 문제점 44

4.2. 노드 성능비와 분배비 49

4.2.1. 노드 성능비 측정 방법 49

4.2.2. 노드 분배비 계산 방법 51

4.3. 성능 기반 데이터 분배 53

제5장 HTML5 보안 취약점 탐지 연구 결과 56

5.1. 태그 및 속성에 기반한 취약점 탐지 56

5.2. 자바스크립트에 기반한 취약점 탐지 58

제6장 성능 기반 데이터 분배 성능 평가 60

6.1. 성능 평가 환경 60

6.2. 도메인 기반 데이터 분배(Nutch) 61

6.3. 균등 데이터 분배 62

6.4. 성능 기반 데이터 분배 63

6.5. 성능 비교 결과 64

제7장 결론 및 향후 연구 66

참고 문헌 68

ABSTRACT 70

표목차

표 1. 브라우저 별 HTML5 호환성 점수 12

표 2. HTML5의 추가된 앨리먼트 및 변경된 속성 13

표 3. 영국 정부를 대상으로 depth 4까지 문서를 수집한 결과 14

표 4. depth 2에서 노드 별 수집 문서 개수와 시간 16

표 5. depth 3에서 노드 별 수집 문서 개수와 시간 17

표 6. OWASP 선정 HTML5 보안 취약점 20

표 7. 관련 연구와 본 연구의 비교표 27

표 8. 태그 및 속성에 기반한 취약점 31

표 9. 자바스크립트에 기반한 취약점 32

표 10. OWASP 선정 HTML5 보안 취약점 35

표 11. 자바스크립트 키워드 정의 42

표 12. 분배비에 따른 웹 문서 분배 53

표 13. 발견한 취약점 정보 57

표 14. 발견한 취약점 정보 59

표 15. 성능 평가에 사용되는 서버 사양 61

표 16. 도메인 기반 데이터 분배 - depth 2에서 문서 수집 개수와 시간 61

표 17. 도메인 기반 데이터 분배 - depth 3에서 문서 수집 개수와 시간 61

표 18. 균등 데이터 분배 - depth 2에서 문서 수집 개수와 시간 62

표 19. 균등 데이터 분배 - depth 3에서 문서 수집 개수와 시간 62

표 20. 성능 기반 데이터 분배 - depth 2에서 문서 수집 개수와 시간 63

표 21. 성능 기반 데이터 분배 - depth 3에서 문서 수집 개수와 시간 63

그림목차

그림 1. HTML5에 추가된 신규 기능들 11

그림 2. 미국의 HTML5 적용 웹 사이트 수 12

그림 3. Nutch의 웹 문서 수집 과정 15

그림 4. iFrame의 sandbox 속성을 이용한 잭킹 공격 흐름 20

그림 5. Input 태그를 이용한 크로스 사이트 스크립팅 공격 예시 21

그림 6. 웹 메일 대상 HTML5 보안 취약점 탐지 시스템 22

그림 7. 관련 연구에서 개발한 웹 문서 크롤링 시스템 24

그림 8. Nutch의 수집 과정에서 성능 그래프 26

그림 9. Nutch의 웹 문서 수집 과정 29

그림 10. MapReduce 기반의 HTML5 보안 취약점 탐지 36

그림 11. HTML5 보안 취약점 탐지 과정 37

그림 12. HTML5 보안 취약점 탐지 분류 38

그림 13. 태그 및 속성에 기반한 취약점 탐지 예시 41

그림 14. 자바스크립트에 기반한 취약점 탐지 예시 43

그림 15. Nutch 수집 과정에서의 불균형한 수집 시간 45

그림 16. Nutch의 웹 문서 수집 과정 46

그림 17. Nutch의 Generator 과정 47

그림 18. Nutch의 Fetcher 과정 48

그림 19. 수집 과정에서의 분배비와 성능비 49

그림 20. 새로운 분배비를 계산하는 방법 52

그림 21. 파티셔닝한 웹 문서와 노드의 매핑 과정 54

그림 22. 본 연구에서의 Generator 과정 55

그림 23. 본 연구에서의 Fetcher 과정 55

그림 24. 발견 취약점 정보 결과 56

그림 25. 취약점이 발견된 웹 문서 57

그림 26. 발견 취약점 정보 결과 58

그림 27. 취약점이 발견된 웹 문서 59

그림 28. 도메인 기반 데이터 분배, 균등 분배, 성능 기반 분배 비교 65

초록보기

 HTML5 is the next-generation web standards of World Wide Web that was proposed to solve the problems with the existing HTML. HTML5 has added a large number of elements and functions to existing HTML's specification and aims for compatibility between the platforms and devices. New elements and functions of HTML5 have expanded the attack in which an attacker can maliciously done via the web. OWASP was selected new security vulnerabilities for HTML5 web applications.

Since common web sites have a structure that the lower documents are connected to the top of the web document, it is difficult to crawl a large number of web documents by a single machine. Therefore, in this paper, we defined the patterns of the security vulnerabilities in HTML5 environment and proposed the detecting method according to the defined vulnerabilities targeting for a large number of web documents based on Apache Nutch which is a distributed parallel web crawler.

However, when crawling web documents through Nutch, there is a possibility that data is distributed in unbalanced to slave nodes according to the number of domains and web documents. This is because that Nutch distributes and partitions the target web documents' URLs based on domain. Especially, for detecting HTML5 vulnerabilities, there is a high possibility of low crawling speed because the whole web documents of specific web sites can be the targets for the detection. In this paper, we proposed the crawling speed improvement method detecting HTML5 vulnerabilities by the nodes' performance-based data distribution.

Through the detecting method we proposed, we was able to detect the HTML5 security vulnerabilities in GOV.UK which is structured with HTML5 web documents. In addition, we measured slave nodes' performance and distributed data based on the nodes' performance. The experimental result of the performance-based data distribution was found to indicate a faster rate compared to Nutch's domain-based data distribution.

We improved the crawling speed of Nutch for detecting HTML5 vulnerabilities by performance-based data distribution. However, there is a small gap of the time between slave nodes. Therefore, there is a need to optimize performance for reducing the gap.