[15.10.07] 슈퍼컴퓨터를 이용한 안드로이드 어플리케이션의 정적 분석
TRANSCRIPT
![Page 1: [15.10.07] 슈퍼컴퓨터를 이용한 안드로이드 어플리케이션의 정적 분석](https://reader036.vdocuments.site/reader036/viewer/2022062316/58acd36f1a28ab36288b5665/html5/thumbnails/1.jpg)
1
슈퍼컴퓨터를 이용한안드로이드 어플리케이션의
정적 분석
울프리카
2015-10-07
![Page 2: [15.10.07] 슈퍼컴퓨터를 이용한 안드로이드 어플리케이션의 정적 분석](https://reader036.vdocuments.site/reader036/viewer/2022062316/58acd36f1a28ab36288b5665/html5/thumbnails/2.jpg)
2
믿었던 손전등 앱 마저…
2015-10-07
' 손전등 앱 ' 개인정보 훔쳐가… 유심칩 번호까지
유출http://imnews.imbc.com//replay/2014/nwtoday/article/3553372_13495.html
![Page 3: [15.10.07] 슈퍼컴퓨터를 이용한 안드로이드 어플리케이션의 정적 분석](https://reader036.vdocuments.site/reader036/viewer/2022062316/58acd36f1a28ab36288b5665/html5/thumbnails/3.jpg)
3
권한은 읽지도 않는다
2015-10-07
특정 권한이 있다면 개인 정보에 마음대로 접근할 수 있다http://cfile23.uf.tistory.com/image/116B183F4EDDA0D02D4774
http://rosaec.snu.ac.kr/meet/file/20120118i.pdf
![Page 4: [15.10.07] 슈퍼컴퓨터를 이용한 안드로이드 어플리케이션의 정적 분석](https://reader036.vdocuments.site/reader036/viewer/2022062316/58acd36f1a28ab36288b5665/html5/thumbnails/4.jpg)
4
백신이 필요하다
2015-10-07
TaintDroid 패키지명 ?권한 ?
![Page 5: [15.10.07] 슈퍼컴퓨터를 이용한 안드로이드 어플리케이션의 정적 분석](https://reader036.vdocuments.site/reader036/viewer/2022062316/58acd36f1a28ab36288b5665/html5/thumbnails/5.jpg)
5
동적 분석 vs 정적 분석
2015-10-07
직접 실행해 보며 유출 지점을 찾는 동적 분석
실행해 보지 않고도 분석해내는 정적 분석분석시 시간 및 위험 최소화
![Page 6: [15.10.07] 슈퍼컴퓨터를 이용한 안드로이드 어플리케이션의 정적 분석](https://reader036.vdocuments.site/reader036/viewer/2022062316/58acd36f1a28ab36288b5665/html5/thumbnails/6.jpg)
6
APK 파일 구조
2015-10-07
Android 에서 어플리케이션을 이루고 있는 APK 파일의 구조http://justamomentgoose.files.wordpress.com/2013/06/apk-structure.png
![Page 7: [15.10.07] 슈퍼컴퓨터를 이용한 안드로이드 어플리케이션의 정적 분석](https://reader036.vdocuments.site/reader036/viewer/2022062316/58acd36f1a28ab36288b5665/html5/thumbnails/7.jpg)
7
그러나…
2015-10-07
![Page 8: [15.10.07] 슈퍼컴퓨터를 이용한 안드로이드 어플리케이션의 정적 분석](https://reader036.vdocuments.site/reader036/viewer/2022062316/58acd36f1a28ab36288b5665/html5/thumbnails/8.jpg)
8
난독화 및 보호
2015-10-07
APKProtecthttp://apkprotect.com
![Page 9: [15.10.07] 슈퍼컴퓨터를 이용한 안드로이드 어플리케이션의 정적 분석](https://reader036.vdocuments.site/reader036/viewer/2022062316/58acd36f1a28ab36288b5665/html5/thumbnails/9.jpg)
9
엄청난 시간 요구
2015-10-07
ScanDal - Black Market Applicationshttp://ropas.snu.ac.kr/scandal/
![Page 10: [15.10.07] 슈퍼컴퓨터를 이용한 안드로이드 어플리케이션의 정적 분석](https://reader036.vdocuments.site/reader036/viewer/2022062316/58acd36f1a28ab36288b5665/html5/thumbnails/10.jpg)
102015-10-07
슈퍼컴퓨터를 활용하자 !
![Page 11: [15.10.07] 슈퍼컴퓨터를 이용한 안드로이드 어플리케이션의 정적 분석](https://reader036.vdocuments.site/reader036/viewer/2022062316/58acd36f1a28ab36288b5665/html5/thumbnails/11.jpg)
11
기대 효과 <Server>
2015-10-07
ScanDal
유출 가능 차단
![Page 12: [15.10.07] 슈퍼컴퓨터를 이용한 안드로이드 어플리케이션의 정적 분석](https://reader036.vdocuments.site/reader036/viewer/2022062316/58acd36f1a28ab36288b5665/html5/thumbnails/12.jpg)
12
기대 효과 <Client>
2015-10-07
ScanDal
유출 가능 안전한 앱
![Page 13: [15.10.07] 슈퍼컴퓨터를 이용한 안드로이드 어플리케이션의 정적 분석](https://reader036.vdocuments.site/reader036/viewer/2022062316/58acd36f1a28ab36288b5665/html5/thumbnails/13.jpg)
13
차단할 경로
2014-11-22
개인정보를 획득하는 부분
개인정보가 기기 밖으로 나가는 부분
Source
Sink
![Page 14: [15.10.07] 슈퍼컴퓨터를 이용한 안드로이드 어플리케이션의 정적 분석](https://reader036.vdocuments.site/reader036/viewer/2022062316/58acd36f1a28ab36288b5665/html5/thumbnails/14.jpg)
14
Flow Chart <Source>
2014-11-22
개인 정보접근
개인 정보
다음 단계로…
![Page 15: [15.10.07] 슈퍼컴퓨터를 이용한 안드로이드 어플리케이션의 정적 분석](https://reader036.vdocuments.site/reader036/viewer/2022062316/58acd36f1a28ab36288b5665/html5/thumbnails/15.jpg)
15
Flow Chart <Source> (Cont.)
2014-11-22
개인 정보접근
개인 정보
다음 단계로…
PrivateManager
![Page 16: [15.10.07] 슈퍼컴퓨터를 이용한 안드로이드 어플리케이션의 정적 분석](https://reader036.vdocuments.site/reader036/viewer/2022062316/58acd36f1a28ab36288b5665/html5/thumbnails/16.jpg)
16
Flow Chart <Sink>
2014-11-22
개인 정보유출 가능
외부
다음 단계로…
![Page 17: [15.10.07] 슈퍼컴퓨터를 이용한 안드로이드 어플리케이션의 정적 분석](https://reader036.vdocuments.site/reader036/viewer/2022062316/58acd36f1a28ab36288b5665/html5/thumbnails/17.jpg)
17
Flow Chart <Sink> (Cont.)
2014-11-22
개인 정보유출 가능
외부
다음 단계로…
PrivateManager
![Page 18: [15.10.07] 슈퍼컴퓨터를 이용한 안드로이드 어플리케이션의 정적 분석](https://reader036.vdocuments.site/reader036/viewer/2022062316/58acd36f1a28ab36288b5665/html5/thumbnails/18.jpg)
18
Smali 코드
2015-10-07
a.javajavac
01100011101010011101010010010001111001111110101001011101101010111010101010000110001010101
class-es.dex
baks-mali
smali
iget-object v2, p0 …new-instance v3, …invoke-virtual {v1} …move-result- …invoke-direct …invoke-virtual {v3} …move-result v3a.smali
![Page 19: [15.10.07] 슈퍼컴퓨터를 이용한 안드로이드 어플리케이션의 정적 분석](https://reader036.vdocuments.site/reader036/viewer/2022062316/58acd36f1a28ab36288b5665/html5/thumbnails/19.jpg)
19
Smali 코드 변경
2015-10-07
invoke-virtual {v7}, Landroid/telephony/TelephonyManager;->getDeviceId()Ljava/lang/String; move-result-object v7
개인정보에 접근
const v13, 1 const-string v11, "src" const-string v12, "id“ invoke-static/range {v11 .. v13}, Lcom/privatechecker/inAppClass;->privateRequest(Ljava/lang/String;Ljava/lang/String;I)Z move-result v11
접근해도 되는지를 물어본다
if-eqz v11, :private4
goto :privateEnd4 :private4 const-string v7, "" :privateEnd4
허가되면 그대로 진행
아니라면 빈 문자열로
대체
![Page 20: [15.10.07] 슈퍼컴퓨터를 이용한 안드로이드 어플리케이션의 정적 분석](https://reader036.vdocuments.site/reader036/viewer/2022062316/58acd36f1a28ab36288b5665/html5/thumbnails/20.jpg)
202015-10-07
Q&A
![Page 21: [15.10.07] 슈퍼컴퓨터를 이용한 안드로이드 어플리케이션의 정적 분석](https://reader036.vdocuments.site/reader036/viewer/2022062316/58acd36f1a28ab36288b5665/html5/thumbnails/21.jpg)
21
감사합니다
2015-10-07