Frida

안드로이드 루팅

JNU 2024. 9. 6. 14:36
반응형

 
모바일 진단을 하려면 루팅을 진행하여 관리자 권한 (root)을 얻어야 해.
루팅 대상은 갤럭시 노트 10으로 진행했고  안드로이드 버전은 12야! 바로 루팅을 위한 세팅 들어가자!
 
 

1.  휴대폰 정보 확인


 
루팅 전에 할 일은 안드로이드 버전 확인과 루팅 전 설정이야.
[설정 > 휴대전화 정보 > 소프트웨어 정보] 에 들어가면 안드로이드 버전과 빌드번호를 확인할 수 있어
그리고 빌드번호를 연타하면 다음과 같이 개발자 모드가 활성화 돼!
 

 
 
 
그다음 설정 부분으로 돌아오면 개발자 옵션이 새로 생성되었을 거야
개발자 옵션에 "OEM 잠금 해제", "USB 디버깅"을 모두 활성화해 주면 돼
 

 
 
 
 
그리고 이전에 frida 설치하면서 adb도 설치했던 포스팅이 있어! adb를 설치하지 않았다면 설치 후에 adb 연결을 진행하자
이때 adb shell로 접근 가능여부도 확인해보자!
 

 
 
https://jnudiary.tistory.com/93

Frida  설치

1. Python 설치 후, Frida-tools 설치pip install Frida-tools  2. Windows Android SDK tools 설치Windows용 SDK 플랫폼 도구 다운로드adb shell을 사용하기 위한 도구https://developer.android.com/tools/releases/platform-tools?hl=ko SDK

jnudiary.tistory.com

 
 
 
 

2. Magisk 설치 


https://github.com/topjohnwu/Magisk/releases?page=1

Releases · topjohnwu/Magisk

The Magic Mask for Android. Contribute to topjohnwu/Magisk development by creating an account on GitHub.

github.com

 
magisk는 안드로이드 장치에서 루팅을 수행하고 시스템 수정을 관리하기 위한 오픈소스야
위에 github 페이지로 가면 apk 파일을 다운로드할 수 있으니 모바일에 설치하자
 

 
 

모바일 내 설치된 magisk 파일

 
 
 
magisk 파일을 선택하면 설치가 진행되고 앱에 접근하면 다음과 같이 설치가 완료된 것을 볼 수 있어

 
 
 
 

3. 펌웨어 다운로드


Magisk에서 리커버리 모드 실행 시 필요한 tar 파일, 즉 펌웨어를 설치하기 전에
Samfirm을 통해 공식 펌웨어를 다운로드 해야 해
 
https://github.com/ivanmeler/SamFirm_Reborn/releases

Releases · ivanmeler/SamFirm_Reborn

Contribute to ivanmeler/SamFirm_Reborn development by creating an account on GitHub.

github.com

 
 
Samfirm에는 Model, Region, Serial 정보를 입력하는 부분이 있어!
[설정 > 휴대전화 정보]에 들어가면 모델명, 시리얼 번호를 확인할 수 있으니 해당 정보를 입력하고
Region의 경우 SK = SKU, KT = KTC, LG = LUC로 적어주면 돼 
(현재 USIM 없이 진행한 상황으로 본인은 KOO로 설정했음!)

 
 
 
 
 

4. 펌웨어 생성하기


다운로드가 완료되면 위에 다운로드한 enc 파일에 "AP_"로 시작하는 펌웨어가 존재할 거야
해당 파일을 복사해서 모바일 기기에 넣어두고 "md5"로 설정된 확장자를 .tar로 수정해줘야 돼
이제 이 tar 파일 즉, 펌웨어를 조금 전에 설치한 Magisk를 통해 패치할 거야
 

 
 
 

5. Magisk 펌웨어 패치


Magisk 앱으로 돌아와서 [ 설치 > 리커버리 모드 > 다음 > 파일 선택 및 패치]까지 진행하면
내장 메모리에 우리가 조금 전 설치한 "AP_" 파일을 찾아볼 수 있을 거야
 

 
 
 
이제 해당 파일을 선택 후, 패치를 진행하고 "All done!" 이 나오기 전까지 기다려 주면 돼
여기서 패치된 파일 이름을 보면 “magisk_patched” 로 시작하는 파일이 생성된 것을 볼 수 있어
여기까지 진행됐으면 이제 다운로드 모드로 진입해서 패치된 파일을 모바일에 다운로드 해보자!

 
 
 
 
 

6. Magisk 펌웨어 설치하기


Magisk에서 패치가 완료되었으면 이제 다운로드 모드로 들어가서 패치된 펌웨어를 설치해 볼 거야
모바일 기기를 종료한 후, OneUI가 4.0 이기 때문에 USB를 노트북과 연결한 상태에서 볼륨 상, 하를 같이 눌러줘!
그러면 다음과 같이 초록색 화면에 경고창이 뜰 거야
해당 화면이 다운로드 모드 직전 화면이야
 

 
 
 
위의 안내대로 볼륨상 키를 누르면 다운로드 모드로 진입하는데 문제는 OEM Lock이 On이네...? 🙄🙄

 
 
OEM Lock이 OFF가 될 수 있게 다시 OEM 상태를 다시 한번 확인하자....!
이 상태에서 루팅을 실행하면 실패하기 때문에 디바이스 잠금해제 모드를 실행한 뒤 다시 위의 과정을 복기해 보자 (Magisk 설치부터 다시!)
 

 
 
OEM Lock : OFF,  KG State: Checking이라고 표기된 것 확인했지?
이제 여기서부터 Odin으로 아까 우리가 패치했던 AP 파일을 다운로드하도록 할 거야 (magisk_patched~ 파일)

해당 파일을 AP 파일에 업데이트 후 다운로드를 진행하면 돼
Odin 설치 위치는 여기서 진행!
https://www.osamsung.com/kr/

최신 삼성 오딘 무료 다운로드 | Latest Samsung Odin Free Download

삼성 오딘 공식 다운로드 버전: 3.14 3.131 3.12 - 갤럭시 롬 변경 툴, Odin 3.131 3.12 Download : Samsung Mobile Odin Firmware Downloader Tool, 펌웨어 다운로드, 커스텀롬, 커롬, xda, samfirm, 삼펌

www.osamsung.com

 
 
AP 파일을 선택하고 Start 이전에
Options의 Auto Reboot를 해제하면 세팅 완료!

 
 
펌웨어 다운로드를 실행하면 조금 시간이 걸릴 거야
성공적으로 설치가 완료되면 PASS! 가 반환되고 설치 중 실패하면 FAIL! 이 반환될 거야
FAIL! 이 반환되면 다시 Magisk에 tar 파일 패치하는 것부터 다시 시도해보자
 

 
 
PASS! 가 떴다!
이제 볼륨하 키 + 전원 버튼을 7초 이상 동시에 눌러주면 다운로드 모드를 빠져나오게 될 거야
빠져나올 때 화면이 꺼지면 바로 전원 버튼과 볼륨 상키를 눌러 리커버리 모드로 진입하고 
그 후 공장 초기화를 진행하고 다시 리부트 해주면 돼!
 

디바이스 restart!

 
 
자...! 이렇게 리부팅한 후에 Magisk와 Rootchecker를 설치해서 rooting 여부를 확인해 보자
그러면 다음과 같이 super user 권한을 얻은 것을 볼 수 있어!
 

 
 
adb shell로 접근 시 su 명령을 통해 root 권한으로 접근 가능한 것도 확인했어!
여기까지가 안드로이드 루팅 과정이야!
다음부턴 헤매지 말고 위에 순서대로 루팅 시도해보자…!

 

##. Magisk 펌웨어 설치하기


만약, 순정 펌웨어가 설치되어있지 않은 경우엔, 위의 과정에서 Samfirm에서 다운로드한 enc 파일 내부에서
AP, BL, CP, CSC 파일 네 개를 모두 다운로드 모드에서 다운로드 후 루팅을 진행해야 돼! 
다운로드 모드에서 빠져나오면 맨 처음부터 (1번부터!) 다시 진행해 보면 될 거야
 

반응형