roothide检测问题

有大佬研究过roothide如何检测吗?好像是搞了两个目录结构,把越狱的文件环境隐藏到了一个正常系统读不到(无遍历文件的权限)且名称随机的隐藏文件夹中,APP内获取到的目录和未越狱之前没有区别,这样靠文件检测越狱的方式就失效了。
另外我试了一下,如果在自己的APP中直接检测roothide的文件路径是可以检测到的,但关键问题在于这个路径是随机生成的,如果没有遍历父目录的权限是拿不到这个文件路径的。

我只有这个方案.

BOOL ret = [[LSApplicationWorkspace defaultWorkspace] openApplicationWithBundleID:@"com.opa334.Dopamine.roothide"];
    
    if(ret){
        NSLog(@"Install roothide");
    }

我试过,但是一打开APP就跳到别的软件里不好。领导不同意 :laughing:

roothide 猪猪侠的东西

检测var/jb 目录

找不到/var/jb目录啊

猪猪侠是哪个,我看这个roothide就像是国人的作品 :rofl:

https://github.com/talsec/Free-RASP-iOS/tree/master 这个可以检测出roothide,但不知道怎么做到的

你更新下roothide版本,通过github编译下tipa, 这个检测sigs修复了;JailbreakDetector/main.m at 5b3d0be4faa8df4b7da8d21ccfc5f28809e079e7 · roothider/JailbreakDetector · GitHub

检测sigs我试了好像没什么效果啊。

判断preboot目录是否可写的方式很有启发。

XPC的检测方法只能iOS14以上使用(一开roothide就检测不到了),不确定稳定性怎么样,而且看着像是私有API,感觉上线有风险。

某duoduo线上就有这个xpc代码 放心用

duoduo好像啥都敢上吧,之前不是还有漏洞利用吗

这个试了好像也不行加到黑名单里就不生效了 :smiling_face_with_tear:

您好,目前有新的方法推荐吗?
1、判断preboot时好时坏。
2、私有API的bootstrap_look_up,XPC和LSApplicationWorkspace倒是可以用,但是领导不允许用私有API。
3、这个.jbroot-XXXXX的路径,没有上层的可读权限,无法读取文件夹内容。直接遍历16^36的名称,数据量太大,又不可能。测试了几个银行的APP,只要RootHide配置黑名单后都无法检测越狱。而这个路径是一直存在的,如果这些银行的APP是检测这个目录的话,应该不是这种效果。感觉这条路也不通。

判断 注入的动态库呢

这样跟你说吧 读文件系统的方式 都会失效,因为他的原理就是重定向 文件路径,有点沙盒的意思

不注入动态库的情况下。

只是单纯判断是否越狱用于设备风险检测。

检测jit咯 但是 非越狱状态 就不准了

不注入+沙盒隔离,别人也做不了啥事吧。重点还是注入的时候把特征抓好