首页
社区
课程
招聘
[原创]内核开发系列1 - 从越狱隐藏到自定义越狱
发表于: 2021-12-18 11:16 33293

[原创]内核开发系列1 - 从越狱隐藏到自定义越狱

2021-12-18 11:16
33293

现在越狱检测已经开始成熟,之前简单检测文件可以用kernbypass等进行处理.简单svc 0x80内核调用直接甚至可以直接NOP掉就可以了.
现在基于checkra1n和unc0ver在越狱时会过多地进行系统修改:

 

比如checkra1n,(以下检测已被不少专业安全公司使用,所以决定公开):

1
2
3
4
5
1.修改dyld -> 检测dylyd是否从/usr/lib/dyld改成/binpack/lib/dyld
 
2.使部分文件目录可以被访问 -> 比如检测/var/mobile/Media/containers可以open和opendir
 
3.修改vm_map_protect-> 检测使用vm_map_protect是否可以同时申请获得可写和可执行的权限

简单svc 0x80现在改成大量使用svc 0x80,很多正常调用都大量直接从svc0x80调用.不不仅使用很多hook和分析失效,也使得直接NOP所有的会使用软件无法使用.要分析是哪处是调用了ptrace或是sysctl,难度大大增高.

 

越狱检测使得很多技术一般的,连砸壳都难以实现.越狱检测使得分析前需要耗费大量时间去处理.

 

使得不得不考虑,是否可以自定义越狱,最少量地修改系统,使得无法被检测.答案是可以的:

unc0ver的使用是IPC漏洞cicuta_virosa,只可以使用14.0-14.3,公开原码:cicuta_virosa


checkra1n使用是checkm8, BootROM漏洞,使用CPU A11以下的,无视任何系统版本理论上都可以越狱.公开源码:checkm8


 

内核开发系列
内核开发系列1 - 从越狱隐藏到自定义越狱
内核开发系列2 - 从checkra1n了解Kernel Patch
更多待更新...


 

原创内容,转载或内核开发交流可Q: 3#1#0#4#1#9#0#6#2 (倒序)



[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

最后于 2021-12-18 12:20 被alice编辑 ,原因:
收藏
免费 3
支持
分享
最新回复 (8)
雪    币: 263
活跃值: (71)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
不使用Root 不给目标程序任何权限 不使用DynamicLibraries注入改成线程注入 目前没被检测过。hook 不使用lnline hook 防止crc ,还有一种hook可以利用硬件中断来实现,以前window那边常用防检测方法。
2021-12-18 11:44
0
雪    币: 263
活跃值: (71)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
越狱源码还有fugu14可以参考
2021-12-18 11:47
0
雪    币: 49
活跃值: (2248)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
hackerxina 不使用Root 不给目标程序任何权限 不使用DynamicLibraries注入改成线程注入 目前没被检测过。hook 不使用lnline hook 防止crc ,还有一种hook可以利用硬件中断来实 ...

不使用root是在越狱后,指定某个app不使用root权限还是整体都不能使用root。
您说的线程注入,是怎么注入的?代码怎么实现?
inline hook一般都是用的dobby,substrate之类的框架,您说的硬件中断hook能举个例子吗?

最后于 2021-12-20 11:26 被flashgg编辑 ,原因:
2021-12-20 10:39
0
雪    币: 263
活跃值: (71)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5

远程注入可以参考https://github.com/tihmstar/libtakeover  稍微修改下就能支持A12以及以上 
硬断点原理也是利用异常来做跳转,通过设置线程arm_debug_state64来进行,可以下执行断点,跟数据断点来做跳转或补丁。

最后于 2021-12-20 12:13 被hackerxina编辑 ,原因:
2021-12-20 12:10
0
雪    币: 193
活跃值: (1472)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
6
hackerxina 远程注入可以参考https://github.com/tihmstar/libtakeover  稍微修改下就能支持A12以及以上 硬断点原理也是 ...
1.你要先解决的是如何越狱,如果还是用公开的方式,那还是我说的问题
2.你的远程注入什么的,本质是用Mach的TFP,那不如用debugserver
2021-12-22 16:12
0
雪    币: 5492
活跃值: (3317)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
7
hackerxina 远程注入可以参考https://github.com/tihmstar/libtakeover  稍微修改下就能支持A12以及以上 硬断点原理也是 ...

请问下 你所实现的硬件断点是基于debug进行设置异常触发的吗

最后于 2022-1-29 16:54 被尐进编辑 ,原因:
2022-1-29 16:53
0
雪    币: 950
活跃值: (162)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
请问硬件断点是如何实现的呢
2022-11-29 07:57
0
游客
登录 | 注册 方可回帖
返回
//