iOS安全–使用Theos开发Tweak过验证

Theos的安装请参考这里:http://iphonedevwiki.net/index.php/Theos/Getting_Started

其中要注意的地方:将IOS设备上的/Library/Frameworks/CydiaSubstrate.framework/CydiaSubstrate复制到Mac中,然后运行以下命令,替换无效的libsubstrate.dylib:

sudo mv -f CydiaSubstrate $THEOS/lib/libsubstrate.dylib

然后新建一个Theos工程,填上Bundle Filter (这里我们hook的还是MethodSwizzlingDemo)。

Snip20150115_1

完成后,便会在当前目录下生成一个新的文件夹loginpass。然后编辑里面的Tweak.xm文件。我们要hook的是类ViewController下面的validateLogin方法(通过class-dump-z可以得出),所以编写如下代码:

1
2
3
4
5
6
7
%hook ViewController

-(BOOL)validateLogin {
    return YES;
}

%end

保存后,编译、打包:

Snip20150115_2

便会在当前目前下面生成一个com.monkey.loginpass_0.0.1-1_iphoneos-arm.deb文件,把这个文件scp到设备上面:

scp com.monkey.loginpass_0.0.1-1_iphoneos-arm.deb root@ip:/opt

然后使用dpkg安装

dpkg -i com.monkey.loginpass_0.0.1-1_iphoneos-arm.deb

killall SpringBoard

在打开我们的应用点击Login Method1 直接进入Admin,即跳过了验证。

 

本文链接:http://www.alonemonkey.com/ioss-theos-tweak.html