반응형

frida ui dump를 뜨게 되면 탈옥 알림창 관련 ViewController를 알 수 있음

 

Frida로 DVIA_v2.JailbreakDetectionViewController의 method 출력

// Find All Methods of a specific class
if (ObjC.available) {
  try {
      var className = "DVIA_v2.JailbreakDetectionViewController";    // 찾고 싶은 class 이름으로 변경
      var methods = ObjC.classes[className].$ownMethods;

      console.warn("\n[*] Started: Find All Methods of a class " + '"' + className + '"');
      
      for (var i = 0; i < methods.length; i++) {
          try { console.log("\x1b[32m"+methods[i] + "\x1b[0m"); }
          catch(err) { console.log("[!] Exception1: " + err.message); }
      }}
  catch(err) { console.log("[!] Exception2: " + err.message); } }

else { console.log("Objective-C Runtime is not available!"); }

console.warn("[*] Completed: Find All Methods of a Class " + '"' + className + '"');

 

 

Hopper에서 -[DVIA_v2.JailbreakDetectionViewController jailbreakTest3Tapped:] 로 접근

 

__T07DVIA_v232JailbreakDetectionViewControllerC20jailbreakTest3TappedyypF 함수로 따라 들어가면 다음과 같음

 

딱히, jailbreak를 탐지하는 로직이 보이지 않으므로 lldb를 사용하여 동적 debugging 진행하여 알아보고자 함.

lldb로 attach후 aslr offset 구하기

 

breakpoint setting. breakpoint주소는 aslr offset + 

__T07DVIA_v232JailbreakDetectionViewControllerC20jailbreakTest3TappedyypF 함수의 시작주소(0x100192e90)을 해주면 됨

 

Jailbreak Test 3 버튼을 탭하면 Breakpoint를 hit하게 됨.

n으로 계속 진행하다가, blr(Branch with link to register) 지시어에서 register 값을 읽으면, DVIA_v2.JailbreakDetectionViewController.jailbreakTest3() -> () 로 분기함을 알 수 있음

 

Hopper에서 해당함수를 찾아보면 로직이 상당히 길고, 복잡해보임

 

해당함수 로직을 타고 계속 내려가다보면 "Device is Jailbroken, the application will now exit", "Device is Not Jailbroken" 문구 출력으로 분기하는 지점이 발견됨

 

해당 분기 지점 이전에 breakpoint setting

 

tbz 지시어에서 register read

 

w8 register의 값을 0으로 변경후, c(continue)

 

반응형

'Information Security > iOS' 카테고리의 다른 글

Frida on Non-Jailbreak Device(Frida 비탈옥단말)  (0) 2020.07.25
iOS TouchID Bypass(DVIA-v2)  (0) 2020.07.23
Cycript(iOS 12.4)  (1) 2020.07.10
DVIA-v2 Jailbreak Detection Test2  (0) 2020.07.10
Frida iOS Method Trace  (1) 2020.07.09

+ Recent posts