서지주요정보
Towards secure interoperation in android : a study of interoperation vulnerabilities in Android = 안드로이드 플랫폼에서 상호 연동되는 모듈의 취약점 분석을 통한 앱 보안 향상에 대한 연구
서명 / 저자 Towards secure interoperation in android : a study of interoperation vulnerabilities in Android = 안드로이드 플랫폼에서 상호 연동되는 모듈의 취약점 분석을 통한 앱 보안 향상에 대한 연구 / SungJae Hwang.
발행사항 [대전 : 한국과학기술원, 2021].
Online Access 원문보기 원문인쇄

소장정보

등록번호

8037551

소장위치/청구기호

학술문화관(문화관) 보존서고

DIS 21001

휴대폰 전송

도서상태

이용가능(대출불가)

사유안내

반납예정일

리뷰정보

초록정보

Android apps interoperate with different components to provide extensive experience to users. Even though interoperation between Android apps and different components may improve the quality of apps by providing additional features, it may cause security issues. In this thesis, we study interoperation vulnerabilities in the Android platform to improve the security of the mobile platform. We investigate three different levels of interoperation: app level, system level, and programming language level. For the app level, we study security issues arisen while Android apps interoperate with each other. We focus on vulnerabilities in managing the Activity component in the Android platform and introduce a new type of attack called activity injection. We demonstrate the attack to show how powerful it is and propose a static analyzer and a defense system that detects and prevents such attacks. For the system level, we study security problems while Android apps interoperate with system utilities provided by the Android platform. Among many system utilities, we target Android Debug Bridge (ADB) as it provides powerful debug features. We intensively analyze ADB to understand how malicious apps can exploit the ADB to launch various kinds of attacks. Our work shows that the missing authentication logic in an ADB server allows an attacker to leverage powerful functionalities in ADB that lead to critical attacks. For the programming language level, we study Java Native Interface (JNI) that allows Android Java code to interoperate with other programming languages such as C and C++. In this work, we propose JUSTGen, a semi-automated approach which utilizes SMT solver to identify unspecified cases from a JNI specification and generates test programs that trigger the behaviors of unspecified cases. Using the test programs, we found critical run-time errors such as violation of the Java type system, and memory corruption from the mainstream JVMs. We reported 792 unspecified cases that are not validated by JVMs to their corresponding JVM vendors. Among them, 563 cases have been fixed and the remaining cases will be fixed in near future. We believe that applying techniques introduced in this thesis would improve the security of mobile platforms.

안드로이드 플랫폼은 서로 다른 모듈간의 연동을 통해 사용자에게 다양한 서비스를 제공한다. 이러한 다양한 모듈과의 연동은 애플리케이션(이하 앱) 기능 확장이라는 강력한 기능을 제공함과 동시에, 신뢰할 수 없는 외부 모듈로 인한 보안 취약점을 드러내기도 한다. 본 학위 논문에서는 안드로이드 플랫폼 상의 모듈간 연동에서 발생할 수 있는 취약점을 분석하고, 보안을 향상시키기 위한 다양한 보완책을 제시한다. 이를 위해 앱 사이의 연동, 앱과 시스템 유틸리티 사이의 연동, 앱을개발하는서로다른프로그래밍언어사이의연동에서발생할수있는보안문제를다룬다. 앱사이의 연동에서는 액티비티 컴포넌트를 관리하는 모듈의 취약점을 이용한 액티비티 삽입 공격을 소개하고 이를 자동으로 탐지하는 도구를 제안한다. 또한 액티비티 삽입 공격을 방어할 수 있는 새로운 안드로이드 시스템을 제안한다. 앱과 시스템 유틸리티 사이의 연동에서는 디버깅 기능을 제공하는 ADB(안드로이드 디버거 브리지)의 취약점을 분석한다. ADB의 강력한 기능을 신뢰할 수 없는 앱이 악용하여 다른 앱 혹은 시스템에 치명적인 영향을 끼칠 수 있음을 보이고, 이러한 공격을 자동으로 탐지하는 정적 분석기를 제안한다. 서로 다른 언어로 개발된 모듈 사이의 연동에서는 Android Java로 개발된 모듈과 C/C++ 언어로 개발된 모듈 사이의 상호작용을 담당하는 JNI(자바 네이티브 인터페이스)에서 발생 가능한 결함 및 취약점을 분석한다. JNI 표준 명세에 정의되지 않은 행동을 자동으로 찾아내고, 이러한 행동을 재현하는 테스트 프로그램을 자동 생성하는 프레임워크를 제안한다. 또한, 생성된 테스트 프로그램을 이용하여, 정의되지 않은 행동으로 인해 발생할 수 있는 JVM(자바 가상 머신)의 다양한 문제점을 찾아내고, JVM 디버깅 기능의 한계로 인해 이러한 문제점이 테스트 과정에서도 탐지되지 않음을 보였다. 본 학위 논문에서 제시하는 기법을 통해 모듈 간의 상호 연동에서 발생 가능한 다양한 형태의 보안 취약점을 드러내고 이에 대한 해결책을 제시함으로써, 안드로이드 플랫폼의 신뢰성 향상에 기여할 것으로 기대한다.

서지기타정보

서지기타정보
청구기호 {DIS 21001
형태사항 iv, 63 p. : 삽화 ; 30 cm
언어 영어
일반주기 저자명의 한글표기 : 황성재
지도교수의 영문표기 : Sukyoung Ryu
지도교수의 한글표기 : 류석영
공동지도교수의 영문표기 : Yongdae Kim
공동지도교수의 한글표기 : 김용대
학위논문 학위논문(박사) - 한국과학기술원 : 정보보호대학원,
서지주기 References : p. 56-62
QR CODE

책소개

전체보기

목차

전체보기

이 주제의 인기대출도서