표제지
국문요약
목차
제1장 서론 8
제1절 연구의 배경 및 필요성 8
제2절 연구의 목표 및 방법 11
제2장 안드로이드 관련연구 13
제1절 안드로이드 구조와 특징 13
1.1. Linux Kernel 14
1.2. Android Libraries 14
1.3. Android Runtime 15
1.4. Application Framework 15
1.5. Application 16
1.6. 안드로이드의 특징 16
제2절 안드로이드 데이터 저장위치 분석 17
2.1. 내부저장소 17
2.2. 외부저장소(공용영역) 18
2.3. 외부저장소(Application 고유영역) 19
제3절 안드로이드 Permission 분석 20
제3장 안드로이드 Application 설치시 취약점 분석 23
제1절 개인정보 유출과정에 대한 모델링 및 시나리오 작성 23
1.1. 악성코드 체스트(chest)동작과정 분석 23
1.2. 악성코드 분석을 위한 개인정보 유출과정 모델링 25
1.3. 개인정보 유출과정 시나리오 26
제2절 안드로이드 악성코드 제작 28
제3절 안드로이드 악성코드 분석 32
3.1. apk파일 Decompile 32
3.2. McDonald.java파일 분석 34
3.2. AndroidManifest.xml 파일분석 36
제4절 Android 악성코드 예방 및 치료시 한계점 38
제4장 Permission 설정기반 대응방안 40
제1절 안드로이드 Application Permission과 개인정보 유출 40
1.1. Application의 Permission과 정보유출의 상관관계분석 40
1.2. Application설치시 Permission표시방법 분석 43
제2절 Permission 표시방법 개선안 도출 45
제5장 Permission 표시방법 개선에 대한 실험 및 검증 47
제1절 Permission 확인을 위한 어플제작 및 활용 47
제2절 Permission 표시방법 개선안 검증을 위한 어플제작 50
제6장 결론 및 향후연구 53
참고문헌 55
ABSTRACT 56
표 1. 2012년 한국 스마트폰 시장 판매량 및 점유율 10
표 2. Android Libraries 구성과 기능 14
표 3. 내부저장소에서 사용되는 Method 및 저장경로 17
표 4. 외부저장소(공용영역)에서 사용되는 Method 및 저장경로 18
표 5. 외부저장소(공용영역)에서 Method인자별 경로 18
표 6. 외부저장소(Application 고유영역)에서 사용되는 Method 및 저장경로 19
표 7. 외부저장소(Application 고유영역)에서 Method인자별 경로 19
표 8. Permission 태그 사용법 20
표 9. Android Permission의 종류(I) 21
표 10. Android Permission의 종류(II) 22
표 11. 체스트 악성코드를 포함한 주요 SMS 24
표 12. McDonald.java에서 사용한 API 35
표 13. Application 설치화면에 대한 설문내용 42
표 14. Application 설치화면에 대한 설문결과 42
그림 1. 안드로이드 구조도 13
그림 2. Chest 동작개요도 23
그림 3. 악성코드로 인한 개인정보 유출과정 모델링 25
그림 4. 악성코드 유포 문자메세지 및 포스터 26
그림 5. 악성코드 실행화면 27
그림 6. McDonald.java 소스원본 28
그림 7. main.xml 화면 및 소스 29
그림 8. CNC서버의 data 처리 Page 소스 30
그림 9. 수집된 정보처리 Page 31
그림 10. dex2jar파일 다운로드 32
그림 11. jdgui파일 다운로드 32
그림 12. classes.jar파일 축출 33
그림 13. jdgui를 이용한 McDonald.java 소스확인 33
그림 14. McDonald.java 디컴파일 후 소스 34
그림 15. AndroidManifest.xml를 output.xml파일로 변경 36
그림 16. AndroidManifest.xml과 복호화한 output.xml파일 36
그림 17. 안티바이러스 제품을 이용한 MzDonald 악성코드 점검결과 38
그림 18. Application 설치시 권한부여 승인화면 및 소스 41
그림 19. 악성코드 설치시 권한요구화면 43
그림 20. 불필요 Permission 추가 44
그림 21. Permission 승인 화면에 CheckBox 추가 및 리스트뷰 확장 45
그림 22. Permission 표시방법 개선전·후 비교 46
그림 23. Permission_Check 실행화면과 Layout의 소스 47
그림 24. Permission_Check Main.java 소스 48
그림 25. Permission 확인페이지 49
그림 26. Permission 확인 페이지에 CheckBox추가화면 및 Layout소스 50
그림 27. Permission 필터링 후 표시방법 변경 51
그림 28. 개선안 적용 후 Permission 리스트 52