Publications

Detailed Information

Breaking Ad-hoc Runtime Integrity Protection Mechanisms in Android Financial Apps : 안드로이드 금융 어플리케이션들의 임기응변적인 실행환경 무결성 검사 분석

DC Field Value Language
dc.contributor.advisor전병곤-
dc.contributor.author김태훈-
dc.date.accessioned2017-07-14T02:35:55Z-
dc.date.available2017-07-14T02:35:55Z-
dc.date.issued2017-02-
dc.identifier.other000000140638-
dc.identifier.urihttps://hdl.handle.net/10371/122680-
dc.description학위논문 (석사)-- 서울대학교 대학원 : 컴퓨터공학부, 2017. 2. 전병곤.-
dc.description.abstractTo protect customers' sensitive information, many mobile financial applications include steps to probe the runtime environment and abort their execution if the environment is deemed to have been tampered with. This paper investigates the security of such self-defense mechanisms used in 76 popular financial Android apps in Republic of Korea. Our investigations found that existing tools fail to analyze these Android apps effectively because of their highly obfuscated code and complex, non-traditional control flows. We overcome this challenge by extracting a call graph with a self-defense mechanism, from a detailed runtime trace record of a target apps execution to generate. To generate the call graph, we use the causality between the Android APIs and system calls used for integrity checks and for alert dialogs, or to kill the app itself. Our analysis of 76 apps shows that once we obtain a causality graph, we can pinpoint methods to bypass most self-defense mechanisms. We successfully bypassed 67 out of 73 apps that check the platform integrity and 39 out of 44 apps that check the binary integrity of the host app, which shows the inefficiency of checking the integrity at the app level. We also present in-depth studies of the top five security libraries used in the aforementioned apps to provide their self-defense mechanisms and their weaknesses. Because financial mobile applications should not run during tampered runtimes, our results clearly demonstrate the necessity of a platform-level solution for integrity checks.-
dc.description.tableofcontentsChapter 1 Introduction 1
Chapter 2 Design Characteristics of Self-Defense Mechanisms 5
2.1 Environment checking 9
2.2 Execution termination 12
2.3 Challenges to locating self-defense mechanisms 12
Chapter 3 Analysis Methodology 14
3.1 Key Insight 14
3.2 Tool Design and Implementation 16
3.2.1 Recording method calls at runtime 16
3.2.2 Constructing an SDMGraph 18
3.2.3 Handling inter-process communication 19
Chapter 4 App Analysis & Bypass Attacks 23
4.1 App Selection 23
4.2 Bypass Attacks 24
4.2.1 Bypassing device rooting checks 28
4.2.2 Bypassing app integrity checks 29
4.3 Third-party Libraries 32
4.4 Case Studies 33
4.4.1 How to check device rooting 34
4.4.2 How to check app integrity 35
4.4.3 How to check whether the library function is not bypassed 36
4.4.4 How to terminate an app running in an unsafe condition 36
4.4.5 How to return the result and how to bypass 37
4.5 Summary 38
Chapter 5 MERCIDroid Effectiveness and Limitation Evaluation 39
5.1 Effectiveness of MERCIDroid 39
5.2 Limitations of MERCIDroid 40
Chapter 6 Discussion 42
Chapter 7 RelatedWork 44
Chapter 8 Conclusion 46
Bibliography 48
국문초록 53
-
dc.formatapplication/pdf-
dc.format.extent2525960 bytes-
dc.format.mediumapplication/pdf-
dc.language.isoko-
dc.publisher서울대학교 대학원-
dc.subjectApplication Security-
dc.subjectAndroid-
dc.subjectReverse Engineering-
dc.subject.ddc621-
dc.titleBreaking Ad-hoc Runtime Integrity Protection Mechanisms in Android Financial Apps-
dc.title.alternative안드로이드 금융 어플리케이션들의 임기응변적인 실행환경 무결성 검사 분석-
dc.typeThesis-
dc.contributor.AlternativeAuthorTaehun Kim-
dc.description.degreeMaster-
dc.citation.pages53-
dc.contributor.affiliation공과대학 컴퓨터공학부-
dc.date.awarded2017-02-
Appears in Collections:
Files in This Item:

Altmetrics

Item View & Download Count

  • mendeley

Items in S-Space are protected by copyright, with all rights reserved, unless otherwise indicated.

Share