var window = ObjC.classes.UIWindow.keyWindow();
var rootControl = window.rootViewController();
var ui = window.recursiveDescription().toString();
var ui_autolayout = window['- _autolayoutTrace']().toString();
var control = rootControl['- _printHierarchy']().toString();
// 전체 UI 계층 출력하고 싶은 경우
// console.log("\n\x1b[31m" + ui + "\x1b[0m");
// Simplified recursiveDescription
// console.log("\n\x1b[34m" + ui_autolayout + "\x1b[0m");
// 현재 화면에 보여지는 UIController를 알고 싶은 경우
console.log("\n\x1b[32m" + control + "\x1b[0m");
JavaScript
복사
앱을 실행하여 원하는 부분의 UI를 동작시킨 후, 위 자바스크립트 코드와 Frida를 이용하여 확인
-f 옵션을 사용하여 Frida를 실행하면 앱이 재동작하므로 -f 옵션을 사용하지 않는다.
frida -U [APP_NAME] -l Get_UI.js
EX) frida -U DVIA-v2 -l c:\Users\Username\Desktop\Get_UI.js
JavaScript
복사
•
실행 예시