frida 설치 과정 정리
단말기를 분석할 호스트PC ➡️ 프리다 패키지
단말기 ➡️ 프리다 서버

frida를 설치하기 전, 파이썬이 설치됐는지 확인한다.
https://www.python.org/downloads/
pip install Frida-tools
frida --version #설치 확인을 위해 버전 확인

정상적으로 설치됐다면 frida 명령어를 입력했을 떄 다음과 같이 출력된다.
adb(Android Debug Bridge)를 실행하기 위해 다운로드
https://developer.android.com/tools/releases/platform-tools?hl=ko

adb.exe가 설치된 위치 확인한다.
우선 단말기에 USB 디버깅 옵션이 활성화되어있는지 확인하자!
d:
cd D:\<adb가 저장된 경로>\platform-tools-latest-windows\platform-tools
cmd를 관리자 권한으로 실행
adb.exe가 저장된 위치까지 이동
(나는 d드라이브에 저장했기 때문에 d: 를 우선 입력함!)
adb devices

연결된 단말기가 있는지 확인한다.
이때 기기 화면에 "USB 디버깅을 허용하시겠습니까?"라고 출력되면 허용한다.
adb shell getprop ro.product.cpu.abi

단말기에 프리다 서버 설치를 위해 단말기의 비트를 확인한다.
단말기에 맞는 프리다 서버를 아래 깃허브에서 다운로드 후 압축해제한다. (나는 arm64)
https://github.com/frida/frida/releases
⚠️ 이때 주의할 것
frida-server를 다운받자. core-devkit 아니다!
Show all ... 아래에 있다.

adb push <frida-server 경로> /data/local/tmp
압축을 해제한 frida-server 디렉터리를 핸드폰의 /data/local/tmp 경로로 옮긴다.
디렉터리를 이동하는 게 아니다. 압축해제한 디렉터리 내에 frida-server 파일이 있다.
adb shell
cd /data/local/tmp
ls -al # frida-server가 잘 push됐는지 확인
su
chmod 755 frida-server[tab] # 다운받은 frida-server
chown root.root frida-server[tab] # 다운받은 frida-server
frida-server 파일에 실행 권한을 부여하고, 사용자를 root로 바꾼다.
만약 단말기 루팅을 했음에도 su를 입력했을 때 permission denied가 뜬다면, magisk -> 슈퍼유저 -> [SharedUID] 셸 항목이 활성화되어있는지 확인해보자.
./frida-server[tab] &
백그라운드로 frida-server를 실행한다.
ps -ef |grep frida

단말기에서 frida-server 프로세스가 실행 중인지 확인한다.
frida-ps -Ua

호스트 PC에서 frida 명령어가 정상적으로 작동되면 frida-server까지 모두 정상적으로 설치된거라고 함!