일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 준비과정
- 오늘의게임
- 스타듀밸리
- 파일리스
- 정적분석
- ios
- 공급망공격
- pyqt
- MacOD
- 네트워크
- objectiveC
- paas
- reactjs
- 7layer
- anaconda
- 악성코드
- 프론트앤드
- 블록체인
- 더위쳐
- 드라이브바이다운로드
- 악성앱
- 웹크롤링
- 메타데이터
- 안드로이드
- 파이썬
- 메일헤더
- CPPG
- Python
- 악성스크립트
- IaaS
- Today
- Total
취보특개
Frida Usage -2 (Solve Example) 본문
예제파일 분석(동적)
▶ 예제 파일 설치
▶ UnCrackable-Level1.apk
▷ https://github.com/OWASP/owasp-mstg/tree/master/Crackmes/Android
OWASP/owasp-mstg
The Mobile Security Testing Guide (MSTG) is a comprehensive manual for mobile app security development, testing and reverse engineering. - OWASP/owasp-mstg
github.com
▶ 예제 파일 설치
▷ adb install UnCrackable-Level1.apk
▶ 예제 파일 실행
▷ 루팅 탐지 우회가 필요해보인다.
예제파일 분석(정적)
프리다로 함수 후킹을 하려면,
진단할 APK 파일이 어떤 클래스에서 탐지 행위가 발생하는지 파악해야 한다.
디컴파일리 도구를 이용해 자바 소스 코드를 분석해본다. (jadx, JEB 등)
▶JEB Pro로 본 apk 파일 구조
▷ 상용 프로그램에 비해 매우 간단하다. MainActivity부터 살펴본다.
▶ JEB Pro로 본 MainActivity
▷코드를 보았을 때, Root Detect 종료를 피할 수 있는건 두 가지로 보인다.
① c.a() c.b() c.c() 가 모두 False 리턴
② this.a()에서 system.exit()을 했을 때 종료되지 않게하는 것
▶ 2번 방법으로 우회해본다.
▷ 후킹 대상 클래스: java.lang.System
▷ 후킹 대상 메소드: exit
예제파일 후킹
▶ 스크립트 생성
Java.perform(function() {
var sysApi = Java.use('java.lang.System')
sysApi.exit.implementation = function()
{
console.log('Bypass EXIT');
}
};
▶ 프로세스ID(PID) 확인
▷ frida-ps -U
▷ 8303
▶ 프리다 스크립트 실행
▷ frida -U -l frida_test.js --no-pause -f owasp.mstg.uncrackable1
▷ OK버튼 클릭 이후 종료되지 않는 것을 확인
'Boan > 모바일' 카테고리의 다른 글
안드로이드 스튜디오 광고 추가 (0) | 2021.05.22 |
---|---|
iOS jailbreaking (0) | 2021.03.14 |
iOS Homebrew Usage (0) | 2021.03.14 |
Android Rooting (0) | 2021.01.10 |
Frida Usage - 1 (Basic Concept) (0) | 2021.01.09 |