android-0x02
Android 동적 분석
안녕하세요 chaem 입니다.
지난 포스팅에서 다루었던 Android 정적 분석에 이어서 이번에는 Android 동적 분석에 대해 포스팅 하려고 합니다.
Android를 동적 분석하는 방법은 다양하지만 이번 포스팅에서는 FRIDA이용하는 방법에 대해 알아보겠습니다.
FRIDA
FRIDA를 이용한 동적 분석은 Android 앱을 후킹하여 분석하는 방법입니다.
분석 환경은 아래와 같습니다.
OS : Window7
Tools : FRIDA, frida-server, nox, adb, python, pip
FRIDA를 사용하기 위해서는 python 및 pip가 설치되어있어야 하며,
아래와 같이 cmd에서 “pip install frida” 명령어를 입력하여 FRIDA를 쉽게 설치할 수 있습니다.
![[그림 1-1]](/assets/images/mobile/0x02/01.png)
FRIDA 설치 후 하기 링크에서 Android architecure에 맞는 frida-server를 다운로드합니다.
https://github.com/frida/frida/releases
![[그림 1-2]](/assets/images/mobile/0x02/02.png)
![[그림 1-3]](/assets/images/mobile/0x02/03.png)
https://github.com/OWASP/owasp-mstg/tree/master/Crackmes/Android
![[그림 1-3-1]](/assets/images/mobile/0x02/03-1.png)
앱을 실행하면 루팅을 탐지하게 되고, ok 버튼을 누르면 앱이 종료되는 것을 확인할 수 있습니다.
![[그림 1-4]](/assets/images/mobile/0x02/04.png)
MainActivity를 살펴보면 ok 버튼을 누르면 System.exit(0)를 호출하는 것을 확인할 수 있습니다.
![[그림 1-5]](/assets/images/mobile/0x02/05.png)
아래 python 코드를 이용해 후킹을 시도하면 ok 버튼을 눌러도 앱이 종료되지 않는 것을 확인할 수 있습니다.
![[그림 1-6]](/assets/images/mobile/0x02/06.png)
![[그림 1-7]](/assets/images/mobile/0x02/07.png)
![[그림 1-8]](/assets/images/mobile/0x02/08.png)
![[그림 1-9]](/assets/images/mobile/0x02/09.png)
![[그림 1-10]](/assets/images/mobile/0x02/10.png)
![[그림 1-11]](/assets/images/mobile/0x02/11.png)
![[그림 1-12]](/assets/images/mobile/0x02/12.png)
감사합니다.