首页
社区
课程
招聘
[原创]初探android crc检测及绕过
发表于: 2025-2-28 20:30 53407

[原创]初探android crc检测及绕过

2025-2-28 20:30
53407
收藏
免费 299
支持
分享
最新回复 (259)
雪    币: 2252
活跃值: (2684)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
26
感谢分享
2025-3-1 16:31
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
27
1
2025-3-1 16:47
0
雪    币: 7162
活跃值: (22756)
能力值: ( LV12,RANK:550 )
在线值:
发帖
回帖
粉丝
28
不错
2025-3-1 18:41
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
29
666
2025-3-1 19:19
0
雪    币: 1530
活跃值: (2496)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
30
感谢分享
2025-3-1 19:39
0
雪    币: 45
活跃值: (533)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
31
6
2025-3-1 20:03
0
雪    币: 104
活跃值: (5701)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
32
6666666666
2025-3-1 22:30
0
雪    币: 0
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
33
666
2025-3-1 22:48
0
雪    币: 2359
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
34
不用这么麻烦,如果已经确定目标用的是极其不安全的crc32校验,可以直接crc碰撞,修改内存中可执行phdr最后4字节使其与原始文件crc32相同,耗时也就1毫秒
2025-3-2 01:02
0
雪    币: 1472
活跃值: (808)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
35
Eirv 不用这么麻烦,如果已经确定目标用的是极其不安全的crc32校验,可以直接crc碰撞,修改内存中可执行phdr最后4字节使其与原始文件crc32相同,耗时也就1毫秒
看了你的回复,我有点疑问。1.你说的crc碰撞,基于目前的校验,基本都是自写的crc,并且有的还会魔改,既然我都去碰撞了,是不是前提得是我知道这个加密函数的地址,那我已经知道这个加密函数地址了,那我为什么还去碰撞,我直接解决这个校验点不就行了,像你说的去碰撞那不显得更麻烦。实现起来也更耗时。2.通常来说,对函数的hook至少也得需要改变函数头部的前8个字节吧,frida就是16个。你这边的只改变可执行段的后4个字节的操作我属实没看懂与函数hook的crc校验有什么关系。如果你想了解hook之后的crc校验什么东西,你可以尝试对我发的app进行一个libc的hook操作,查看下内存和本地文件的区别。相信你能更加理解到基于函数hook的crc校验。
2025-3-2 03:15
1
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
36
无私精神
2025-3-2 08:54
0
雪    币: 723
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
37
6666
2025-3-2 09:28
0
雪    币: 9
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
38
感谢分享
2025-3-2 11:47
0
雪    币: 2162
活跃值: (655)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
39
6
2025-3-2 12:46
0
雪    币: 497
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
40

我忽然想到一种自身获取某个so基址的方法不知道可不可行,就是直接通过dlopen获取指定so的基址,这个接口走的不知道是不是soinfo那边的

最后于 2025-3-2 15:22 被安卓逆向test编辑 ,原因:
2025-3-2 14:21
0
雪    币: 354
活跃值: (2155)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
41
感谢分享
2025-3-2 15:20
0
雪    币: 202
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
42
666666
2025-3-2 15:50
0
雪    币: 2850
活跃值: (7448)
能力值: ( LV7,RANK:102 )
在线值:
发帖
回帖
粉丝
43
依稀记得CRC都是提前算好的
2025-3-2 16:13
0
雪    币: 19
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
44
0666
2025-3-2 16:24
0
雪    币: 123
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
45
6666
2025-3-2 17:37
0
雪    币: 1431
活跃值: (1460)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
46
学习一下
2025-3-2 18:05
0
雪    币: 1634
活跃值: (491)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
47
666
2025-3-2 18:59
0
雪    币: 0
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
48
看看大佬文章
2025-3-2 19:03
0
雪    币: 2754
活跃值: (2640)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
49
感谢分享
2025-3-2 19:11
0
雪    币: 1472
活跃值: (808)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
50
安卓逆向test 我忽然想到一种自身获取某个so基址的方法不知道可不可行,就是直接通过dlopen获取指定so的基址,这个接口走的不知道是不是soinfo那边的
改soinfo里面的load bias参数就可以影响到dlopen返回的handle,但是会有崩溃的风险
2025-3-2 19:44
0
游客
登录 | 注册 方可回帖
返回