自动绕过越狱检测的工具

2026-01-11 05:25:44

今天主要是针对三款有不同越狱检测的iOS应用,方式分为手动绕过越狱检测和自动绕过越狱检测。

测试工具FridaNeedleIDA Pro7.0Hopper Disassembler V4Cydia(添加Darwin CC Tools依赖)......案例1首先对该APP进行一键dump(砸壳)frida-ios-dump,该工具基于frida提供的强大功能通过注入js实现内存dump

然后通过python自动拷贝到电脑生成ipa文件,通过配置完成之后真的就是一条命令砸壳。

砸壳完成后,我们将可执行文件导入IDA由于MAC IDA7.0在Strings窗口无法显示中文字符串,直接在__cfstring段搜索越狱关键词,找到调用函数 -[AppDelegate application:didFinishLaunchingWithOptions:]

查看stat函数,发现该函数通过文件名filename获取文件信息,并保存在buf所指的结构体stat中,执行成功则返回0,失败返回-1。接下来我们使用Needle这款工具内的dynamic/detection/script_jailbreak-detection-bypass模块来尝试绕过越狱检测:发现并不能绕过越狱检测,找到script_jailbreak-detection-bypass.py该文件,发现虽然有HOOK到stat这个函数,但是返回值作者写的有问题,借鉴了其他工具的写法,我们修改needle,script_jailbreak-detection-bypass的代码如下:成功绕过:最后把Needle的script_jailbreak-detection-bypass代码拿出来做参考,自己动手写一个jsvar paths=[

"/Applications/blackra1n.app",

"/Applications/Cydia.app",

"/Applications/FakeCarrier.app",

"/Applications/Icy.app",

"/Applications/IntelliScreen.app",

"/Applications/MxTube.app",

"/Applications/RockApp.app",

"/Applications/SBSetttings.app",

"/Applications/WinterBoard.app",

"/bin/bash",

"/bin/sh",

"/bin/su",

"/etc/apt",

"/etc/ssh/sshd_config",

"/Library/MobileSubstrate/DynamicLibraries/LiveClock.plist",

"/Library/MobileSubstrate/DynamicLibraries/Veency.plist",

"/Library/MobileSubstrate/MobileSubstrate.dylib",

"/pguntether",

"/private/var/lib/cydia",

"/private/var/mobile/Library/SBSettings/Themes",

"/private/var/stash",

"/private/var/tmp/cydia.log",

"/System/Library/LaunchDaemons/com.ikey.bbot.plist",

"/System/Library/LaunchDaemons/com.saurik.Cydia.Startup.plist",

"/usr/bin/cycript",

"/usr/bin/ssh",

"/usr/bin/sshd",

"/usr/libexec/sftp-server",

"/usr/libexec/ssh-keysign",

"/usr/sbin/frida-server",

"/usr/sbin/sshd",

"/var/cache/apt",

"/var/lib/cydia",

"/var/log/syslog",

"/var/mobile/Media/.evasi0n7_installed",

"/var/tmp/cydia.log"];

var f = Module.findExportByName("libSystem.B.dylib","stat64");

Interceptor.attach(f, {

onEnter: function ( args) {

this.is_common_path = false;

var arg = Memory.readUtf8String(args[0]);

for (var path in paths) {

if (arg.indexOf(paths[path]) > -1) {

console.log("Hooking native function stat64: " + arg);

this.is_common_path = true;

//return -1;

}

}

},

onLeave: function (retval) {

if (this.is_common_path){

console.log("stat64 Bypass!!!");

retval.replace(-1);

}

}

});

var f = Module.findExportByName("libSystem.B.dylib","stat");

Interceptor.attach(f, {

onEnter: function ( args) {

this.is_common_path = false;

var arg = Memory.readUtf8String(args[0]);

for (var path in paths) {

if (arg.indexOf(paths[path]) > -1) {

console.log("Hooking native function stat: " + arg);

this.is_common_path = true;

//return -1;

}

}

},

onLeave: function (retval) {

if (this.is_common_path){

console.log("stat Bypass!!!");

retval.replace(-1);

}

}

});

使用Frida spawn并注入案例2 首先使用该模块测试能否绕过越狱检测[needle] > use dynamic/detection/script_jailbreak-detection-bypass发现send无法输出,改用console.log打印,砸壳后放入IDA,查看该类:-[UIDevice isJailbroken]使用Hopper查看该类:-[UIDevice isJailbroken]发现该APP,直接通过方法的返回值判断是否越狱,所以可以直接修改返回值进行绕过。使用Frida spawn并注入,成功绕过:案例3砸壳后放入IDA,在__cfstring段搜索“越狱”并查看该类:找到并打开-[AppDelegate showJailBreakDialog]发现判断返回的bool值,尝试Hook-[BMKSecurityManager jailBreak]spawn并注入经测试,该APP采用了5个方法检测越狱,具体是在framework实现了此方法,因为IDA突然崩了在此就不演示了,感兴趣的自己研究一下吧。补充说明Needle框架的两个设置选项,官方没有提供修改的方式,只能本地重新编译仓库源码。

一、设置选择进程的时候隐藏iOS自己的APP,

二、默认设置APP启动方式是spawn(否则每次都要重新设置),

grep命令:

grep -rn "HIDE_SYSTEM_APPS" needle

grep -rn "spawn" needle

自动绕过越狱检测的工具1. xCon介绍:xCon可以从Cydia中安装,是目前为止最强大的越狱检测工具。由n00neimp0rtant与Lunatik共同开发,它据说patch了目前所知的所有越狱检测方法(也有不能patch的应用)。估计是由于影响太大,目前已不开放源码了。安装方法:1.首先在Cydia中添加源http://xcon.crazy.net 2.然后进入添加的源中选择xCon下载安装,安装完之后需要重启SpringBoard。适用范围:xCon会绕过以下越狱检测方法(1)根据是否存在特定的越狱文件,及特定文件的权限是否发生变化来判断设备是否越狱(2)根据沙箱完整性检测设备是否越狱(3)根据文件系统的分区是否发生变化来检测设备是否越狱(4)根据是否安装ssh来判断设备是否越狱2. Liberty Lite(Beta)介绍:Liberty Lite(Beta)是适用于iOS 11固件的通用越狱检测工具。它由着名的补丁开发者Ryley Angus开发。可以让用户有选择性的对iOS应用进行绕过越狱检测。安装方法:1.首先在Cydia中添加源https://ryleyangus.com/repo/2.然后进入添加的源中选择Liberty Lite(Beta)下载安装,安装完之后需要重启SpringBoard。使用方法:打开iphone设备,在通用-设置内找到Liberty-lite,然后启动,选择Block Jailbreak Detection,通过User Applications选择需要绕过越狱检测的iOS应用。适用范围:上述三个APP案例都可以用这个插件进行绕过,简单粗暴相当的牛皮。

Tide安全团队正式成立于2019年1月,是新潮信息旗下以互联网攻防技术研究为目标的安全团队,目前聚集了十多位专业的安全攻防技术研究人员,专注于网络攻防、Web安全、移动终端、安全开发、IoT/物联网/工控安全等方向。

想了解更多Tide安全团队,请关注团队官网: http://www.TideSec.net 或关注公众号:

    爱·回家之八时入席剧情介绍
    大白菜u盘启动盘制作工具完整操作教程

    Copyright © 2022 摩洛哥世界杯_直播世界杯决赛 - dgaida.com All Rights Reserved.