【问题标题】:Why is jailbreak tweak not loaded with App?为什么越狱调整没有加载应用程序?
【发布时间】:2017-12-19 17:27:42
【问题描述】:

我创建了一个(我的精简版)tweak,它记录了应用程序使用一种特定方法实例化的所有 URL。它适用于多个应用程序,但在一个应用程序开始时,未加载调整。我尝试使用其他过滤器,包 ID、类名和可执行文件名都不起作用。

有什么想法吗?

调整.xm:

%hook NSURL

+ (instancetype)URLWithString:(NSString *)URLString {
    %log;
    return %orig;
}

%end

.plist:

{ Filter = { Bundles = ( "com.htsu.hsbcpersonalbanking" ); Executables = ("HSBC"); Classes = ("NSURL"); }; }

【问题讨论】:

    标签: ios jailbreak theos


    【解决方案1】:

    三种可能:

    1. 二进制文件有 __RESTRICTED 部分,正常注入不起作用

      otool -l /PATH/TO/BINARY|grep sectname,如果您在结果中看到__RESTRICTED,就会出现这种情况。 opttool 会为您强制注入,但您可能还需要绕过应用程序的反注入检查

    2. 您的调整未正确编译。
      查看 syslog,如果出现这种情况,MobileSubstrate 会在 syslog 中警告您
    3. 没有调用该方法
      试试:
    %ctor{
    NSLog(@"I'm injected");
    }
    

    并查看是否已记录以排除 1&2 的可能性

    【讨论】:

    • 我在那个二进制文件中找到了 __restrict 部分,所以我必须处理它
    • optool 是要走的路。那么你可能有反optool机制来处理
    猜你喜欢
    • 1970-01-01
    • 2014-11-19
    • 1970-01-01
    • 1970-01-01
    • 2023-04-02
    • 1970-01-01
    • 2012-07-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多