핸드폰과 서버측 frida 버전은 일치해야 함. 큰 차이가 없다면 문제 없음.
1. 핸드폰(server): 루팅 필요
https://github.com/frida/frida/releases/tag/X.X.XX
핸드폰용(예시)
블루 스택용(예시)
안드로이드 핸드폰: 개발자 옵션 -> USB 디버깅
개발자 옵션: 설정 > 휴대전화 정보 > 소프트웨어 정보 > 빌드번호 7번 클릭
adb push frida-server-x.x.x-android-arm64 /data/local/tmp
adb push .\frida-server-15.1.14-android-arm64 /data/local/tmp
hero:/# chmod 755 .\frida-server-15.1.14-android-arm64
hero:/# cp .\frida-server-15.1.14-android-arm64 /system
안드로이드 10이상일 경우
# /data/local/tmp에서 /system으로 파일을 옮기기 전에 실행
hero:/# mount -o rw,remount /
# 옮기고 나서 실행
hero:/# mount -o ro,remount /
/system에 들어간 후,
./frida-server-16.1.4-android-arm64 -l 0.0.0.0 &
ps -ef | grep frida -> frida PID 출력
kill -9 PID
frida-ps -Uai
frida -U -f [조회한 앱패키지명] -l .\hook.js
예시)
frida -U -f uk.rossmarks.fridalab -l ./test.js
setprop persist.device_config.runtime_native.usap_pool_enabled false
frida-ps -H 192.168.1.18 // 연결 확인
frida -H [IP] -f [앱 패키지 이름] -l ./[보내고자하는 js 파일]