개요

Facebook 계정을 탈취하는 Android 악성코드 중 “Photo Motion” APK 분석을 진행했다.

분석 정보

분석 환경

OSWindows 11 Pro
ToolsAndroid Studio AVD, DB Browser for SQLite
DeviceAndroid 9 API 27 x86_64

분석 대상

NoA
File Name28e0d555e4fa12a6cb222df4e6846a9a.apk
MD528e0d555e4fa12a6cb222df4e6846a9a
SHA-256225fc4019e736fa7d320373a09bb6e9fd97571e8222d519aaa2477280e067d7e
File TypeAndroid APK
File Version1.0.1
File Size12,819,389 Bytes
Creation Time2021-10-01 07:33:42 UTC
Tag

자동화 분석

A 파일 분석 결과

VirusTotal 분석 결과 Facestealer 악성코드와 유사도가 높음을 알 수 있다.

행위 분석

앱 실행 첫 화면
페이스북 로그인 요청 화면
앱 저장소
앱 데이터에서 추출한 쿠키 데이터베이스

앱을 실행하면 첫 화면에서 페이스북 로그인 안내 문구와 함께 로그인 시도를 요청한다.

여기서 로그인 버튼을 누르면 앱 저장소에 app_textures, app_webview가 생성된다. 이는 페이스북 로그인 시 쿠키 데이터가 저장된다.

정적 분석

페이스북 로그인 데이터들을 Bundle로 묶는다.

동적 분석

프록시 연결 시 강제 종료
C:\Users\NetKingJ\Desktop>adb logcat -b crash -v tag
E/AndroidRuntime: FATAL EXCEPTION: main
E/AndroidRuntime: Process: com.meicalhowell.motion.pixmotion, PID: 7423
E/AndroidRuntime: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.meicalhowell.motion.pixmotion/com.meicalhowell.pixmotion.activities.MainActivity}: android.view.InflateException: Binary XML file line #90: Binary XML file line #90: Error inflating class ImageView
E/AndroidRuntime:       at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2913)
E/AndroidRuntime:       at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3048)
E/AndroidRuntime:       at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78)
E/AndroidRuntime:       at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108)
E/AndroidRuntime:       at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68)
E/AndroidRuntime:       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1808)
E/AndroidRuntime:       at android.os.Handler.dispatchMessage(Handler.java:106)
E/AndroidRuntime:       at android.os.Looper.loop(Looper.java:193)
E/AndroidRuntime:       at android.app.ActivityThread.main(ActivityThread.java:6669)
E/AndroidRuntime:       at java.lang.reflect.Method.invoke(Native Method)
E/AndroidRuntime:       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
E/AndroidRuntime:       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
E/AndroidRuntime: Caused by: android.view.InflateException: Binary XML file line #90: Binary XML file line #90: Error inflating class ImageView
E/AndroidRuntime: Caused by: android.view.InflateException: Binary XML file line #90: Error inflating class ImageView
E/AndroidRuntime: Caused by: android.content.res.Resources$NotFoundException: Drawable (missing name) with resource ID #0x7f080181
E/AndroidRuntime: Caused by: android.content.res.Resources$NotFoundException: Unable to find resource ID #0x7f080181

BurpSuite로 프록시 연결해서 분석을 진행하려고 했으나 앱 자체 디버깅 제한이 걸려있는지 강제 종료가 된다.

결론

  • Android 악성코드 앱으로 로그인 세션을 탈취하는 대표적인 Joker, FlyTrap, Facestealer 등과 비슷한 유형으로 해당 앱도 페이스북 로그인 세션을 C&C 서버로 전달하는 악의 행위를 살펴볼 수 있다.

Reference