首页
社区
课程
招聘
[CrackMe]过签名校验,看起来很简单的样子【已完结,附解题攻略】
发表于: 2021-11-17 13:54 26037

[CrackMe]过签名校验,看起来很简单的样子【已完结,附解题攻略】

2021-11-17 13:54
26037

Java代码有一次签名校验,这个很简单,谁都会。
然后,改了之后,能不能过so的校验呢?快来试试吧。

Crack成功条件:
1.可以植入HOOK框架,也可以直接爆破
2.二次打包后,能在普通用户机器上运行,加载libtestso.so后执行函数能显示"TestSO execute"即算成功。

PS:
1.只支持6.0以上系统,只支持arm64-v8a(模拟器也可以运行,32位不行)
2.有可能不太稳定,如果运行原始APK就有问题可以告诉我。
3.如果检测到APK被修改大概率app会崩溃或者ANR。

如果附件下载不了,就上网盘:
链接: https://pan.baidu.com/s/1YAYuaiUwY49ziDYf3xrxrQ 提取码: hag7

鉴于有不少同学已经破解,这里放一下解题攻略:
3个文件:AndroidManifest.xmlresources.arscclasses.dex,保留其中至少一个文件不去做任何修改(apktool解包时填写参数保留原样)时,就很容易跳过校验,例如只修改classes.dex暴力跳过签名校验即可。
因为不填任何参数直接解包apk再重新打包的话,这3个文件的指纹都会被修改,所以……皮一下很开心啊,你学废了吗?

所以,本题如果加多一个条件“必须要修改资源,manifest和代码再打包”,那就是另外一个故事了……


[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

最后于 2021-11-23 11:46 被血舞长空编辑 ,原因:
上传的附件:
收藏
免费 2
支持
分享
最新回复 (15)
雪    币: 5
活跃值: (1080)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2

确实挺简单的,之前没注意到res下加密的文件,反编译下classes.dex,反射代理下pm,替换dex,重签即可

最后于 2021-11-23 02:11 被恋一世的爱编辑 ,原因:
2021-11-19 16:47
0
雪    币: 950
活跃值: (1405)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
tmi
3
MARK,后面试试
2021-11-19 18:25
0
雪    币: 2089
活跃值: (3933)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
安卓11 Pixel4、小米10,提示与系统不兼容,无法使用
2021-11-19 18:42
0
雪    币: 1867
活跃值: (4073)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
5
2021-11-19 22:35
0
雪    币: 902
活跃值: (1120)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
virjar 看起来似乎很简单:https://oss.virjar.com/other/com.example.myapplication_1.0_1_ratel.apk
可行方案,牛B
2021-11-20 07:40
0
雪    币: 155
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
7
大神怎么 搞数字签名?怎么过得去?
2021-11-21 23:20
0
雪    币: 5357
活跃值: (1690)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8

反正没报错

上传的附件:
2021-11-22 16:52
0
雪    币: 902
活跃值: (1120)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
PanzerT 反正没报错
很棒
2021-11-23 10:06
0
雪    币: 1867
活跃值: (4073)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
10
virjar 看起来似乎很简单:https://oss.virjar.com/other/com.example.myapplication_1.0_1_ratel.apk

你可以试一试,就算你修改了manifest,一样一行命令完成重打包。项目在这里: https://github.com/virjarRatel/ratel-core

另外,里面内置的RDP (https://git.virjar.com/ratel/ratel-doc/blob/master/9.RDP.md)模块是可以作用于国内的大型厂商app的。大佬可以来玩一玩

最后于 2021-11-24 01:38 被virjar编辑 ,原因:
2021-11-24 01:36
0
雪    币: 902
活跃值: (1120)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
virjar virjar 看起来似乎很简单:https://oss.virjar.com/other/com.example.myapplication_1. ...
我试了一下并不行啊(改3个文件的前提下),也许是我操作有问题。
如果其中有1个文件没改的话,1楼和8楼的方案也是可以的。主要是1楼说出了重点,只修改classes.dex就可以完美过这个题。

超纲的题是3个文件都要修改:AndroidManifest.xml,resources.arsc(比如修改一下应用名称),classes.dex(修改代码)。只有3个文件全部修改,才能触发最终保护。不知道是不是我打包操作有问题,你可以试试。

另外,项目挺不错的,不过很多开发者还是用windows的,要是能出个windows的脚本就更棒了,不用专门开虚拟机去编译。
2021-11-24 08:51
0
雪    币: 1867
活跃值: (4073)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
12
血舞长空 我试了一下并不行啊(改3个文件的前提下),也许是我操作有问题。 如果其中有1个文件没改的话,1楼和8楼的方案也是可以的。主要是1楼说出了重点,只修改classes.dex就可以完美过这个题。 ...
应用名称在asrc格式的androidManifest.xml中,不在resources.arsc。windows上面各种开发的问题太多,不会考虑windows。

“我试了一下并不行啊(改3个文件的前提下),也许是我操作有问题”关于这个问题,只要你不是svc汇编过去验证的,肯定都是逃不开我的hook的。并且在未来的版本,即使svc获取也逃不开,这是方案实现原理确定的。

2021-11-24 14:21
0
雪    币: 902
活跃值: (1120)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
virjar 应用名称在asrc格式的androidManifest.xml中,不在resources.arsc。windows上面各种开发的问题太多,不会考虑windows。 “我试了一下并不行啊(改3个文 ...

我阅读了你的项目代码,你的hook模块并不能hook到我的调用,我是用的svc调用,并且你也有集成svc的hook,但是并没有生效,事实上目前所有hook框架都有一个逻辑问题(暂不详述)。我也打包了一个输出日志的包,可以完整输出maps和打开任何我想要打开的文件(也就是hook无效了)。直接用你发的APK我也试了一下,只要修改了resources.arsc,就会被检测到。

最后于 2021-11-24 14:58 被血舞长空编辑 ,原因:
2021-11-24 14:54
0
雪    币: 1867
活跃值: (4073)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
14
血舞长空 virjar 应用名称在asrc格式的androidManifest.xml中,不在resources.arsc。windows上面各种开发的问题 ...
svc默认没有打开
2021-11-24 16:47
0
雪    币: 902
活跃值: (1120)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
virjar svc默认没有打开
github这个svc的hook设计就算打开了也碰不到我的调用点,而且直接扫描修改内存效率低废cpu,还可能误操作。
2021-11-24 21:54
0
雪    币: 1
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
16
你们这算什么,这是道小学题。
有本事把360加固后的app防二次打包给破了
2021-12-8 22:01
1
游客
登录 | 注册 方可回帖
返回
//