설치 방법
Frida 설치
pip install frida
버전을 지정하여 설치 (ex : 12.2.27)
pip install frida==12.2.27
frida 설치 후 frida-ps 와 같은 명령어가 실행되지 않는 경우
pip install frida-tools
Error 해결 방법
Error 1 : Failed to spawn: unable to access zygote64 while preparing for app launch; try disabling Magisk Hide in case it is active
frida를 이용하여 안드로이드 앱을 attach 할 땐 문제가 발생하진 않았지만 spawn을 할 땐 에러가 발생하였습니다.
Magisk Hide를 비활성화 한 경우에도 똑같은 에러가 발생하였으며, /system 경로에 frida를 넣어준 뒤 실행해야 정상적으로 이용이 가능하였습니다.
1. /system 폴더 remount (Read Only 권한으로 되어있기 때문에 remount 필요)
# mount -o rw,remount /system
2. frida-server 파일 이동 및 실행
# mv ./frida-server /system
# /system/frida-server &
Reference : https://py0zz1.tistory.com/130?category=867529
Error 2 : TypeError: cannot read property ~ of undefined (Class Name을 제대로 인식하지 못한 경우)
IOS 앱에 존재하는 클래스명을 뽑아내는 코드입니다.
for(var className in ObjC.classes){
if(ObjC.classes.hasOwnProperty(classname)){
console.log(className);
}
}
해당 코드를 이용하여 뽑아낸 클래스명에 존재하는 메소드를 확인하는 코드입니다.
var className = "MyApp.JailbreakViewController";
var methods = eval("ObjC.classes." + className + ".$methods");
MyApp.JailbreakViewController 같이 클래스명에 .이 존재하는 경우 cannot read property JailbreakViewController 에러가 발생하였습니다.
이는 ClassName.MethodName으로 인식하였기 때문인데 위의 코드를 아래와 같이 변경하는 것으로 에러를 해결할 수 있었습니다.
var className = "MyApp.JailbreakViewController";
var methods = eval("ObjC.classes['" + className + "'].$methods");
Reference : https://github.com/frida/frida/issues/336
'Hack > Mobile' 카테고리의 다른 글
MobileSecurity App으로 Frida 관련 문제 풀어보기 (0) | 2020.09.22 |
---|---|
IOS Device의 로그 데이터 Windows에서 확인하는 방법 (0) | 2020.09.22 |
[Hacking Game App] Unity mono 엔진으로 개발된 게임 앱 (0) | 2020.09.22 |
Frida Cheat Sheet (0) | 2020.09.21 |
안드로이드 솔루션 별 Library(.so) 파일 (0) | 2020.09.21 |
댓글