반응형
ி frida Tool 설치
ㆍ python 3.7에서 진행함(특정 버전 실행 시 모듈오류 발생하는 경우가 있음)
ㆍ frida 설치 중 warning 오류를 해결하고 진행할 것
ㆍ frida server와 frida tools 버전이 다르면 frida 실행 시 핸드폰 강제 재부팅됨
ி frida 서버 설치
ㆍ 위에서 다운받고 압축 해제한 파일을 스마트폰 내부(/system)로 옮긴다.
ㆍ 우선 system은 rw 권한이 없기 때문에 마운트를 통해 rw 권한을 부여하고 임시 저장 공간에서 frida 파일에 대한 권한을 부여한 뒤 system 폴더로 옮긴다.
hero:/# mount -o rw,remount -t ext4 /system
안드로이드10인 경우 위 명령 대신 루트를 마운트하고, 설정 이후 다시 ro로 재설정
hero:/# mount -o rw,remount /
hero:/# mount -o ro,remount /
> 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
* ios인 경우
https://github.com/frida/frida/releases/download/12.11.18/frida-server-12.11.18-ios-arm64.xz
pip uninstall frida-tools -y
pip uninstall frida -y
pip install frida==12.11.18
pip install frida-tools==2.2.0
최근 버전(15.1.28) 의 경우 아래 deb 파일 다운 후 단말기로 옮겨서 dpkg -i frida_xxx
https://github.com/frida/frida/releases/download/15.1.28/frida_15.1.28_iphoneos-arm.deb
※ 구 버전의 프리다는 한글깨짐 및 js 최신 문법 지원안함
frida 서버 실행(백그라운드)
* android
> .\frida-server-15.1.14-android-arm64 -l 0.0.0.0 &* ios(frida 포트 변경)
> /Library/LaunchDaemons/re.frida.server.plist
cydia에서 frida 설치 후 위 파일에 "ProgramArguments" Key 항목에 아래 옵션(-l) 추가
<array>
<string>/usr/sbin/frida-server</string>
<string>-l</string>
<string>0.0.0.0:52023</string>
</array>
frida-server 중지
> launchctl unload /Library/LaunchDaemons/re.frida.server.plist
frida-server 실행
launchctl load /Library/LaunchDaemons/re.frida.server.plist
frida Tool 실행(스크립트 로드)
> frida-ps -Uai | findstr [앱 패키지명]
> frida -U -f [조회한 앱패키지명] -l .\hook.js
[SM G920S::com.app]-> %resume
hook.js
[SM G920S::com.app]-> %resume
hook.js
Java.perform(() => { const Activity = Java.use('android.app.Activity'); const Exception = Java.use('java.lang.Exception'); Activity.onResume.implementation = function () { throw Exception.$new('Oh noes!'); }; });
후킹: 특정 함수 코드를 가로채서 원하는 행위를 한 후 원래의 코드로 돌려주는 기법
- frida 문서 참고 https://frida.re/docs/javascript-api/
반응형
'해킹-보안 > 모바일' 카테고리의 다른 글
FridaLab 6번 문제 (0) | 2021.12.26 |
---|---|
FridaLab 1~5 문제 (0) | 2021.12.26 |
안드로이드 앱 교육 1일차 (0) | 2021.12.21 |
adb 명령어 및 앱 서명 방법 (0) | 2021.12.21 |
Magisk 루팅 앱 설치 및 JEB로 앱 디컴파일하기 (0) | 2021.12.17 |