wyatton 发表于 2021-11-17 13:42

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

本帖最后由 wyatton 于 2021-11-23 11:14 编辑

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

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

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

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

wyatton 发表于 2021-11-18 11:51

本帖最后由 wyatton 于 2021-11-22 09:29 编辑

各位大佬,必须是64位的手机,因为apk只有一个arm64-v8a的so,32位机上安装不了。

PS:已经有大神破解成功了(二次打包在普通手机【无root,无魔改刷机】上完美运行)。

ogli324 发表于 2021-11-19 18:21

本帖最后由 ogli324 于 2021-11-19 18:26 编辑

似乎只要不碰到AndroidManifest.xmlapplication入口点 重签名也不会有问题

贴一个frida脚本
```
function crackme(){
    Java.perform(function(){
      var DigestJDK = Java.use("com.android.org.conscrypt.OpenSSLMessageDigestJDK");
      DigestJDK.engineDigest.implementation = function(){
            var ret = this.engineDigest();
            console.log(bytesToHex(Java.array('byte', ret)));

            var ret = Java.array("byte", hexToBytes("adbdea546377bb9d58298ad664311515517add13"));
            return ret;
      }

    })
}

setImmediate(crackme)
```

芽衣 发表于 2021-11-17 16:24

根本都装不了:lol

wyatton 发表于 2021-11-17 16:27

芽衣 发表于 2021-11-17 16:24
根本都装不了

不能够啊,报什么错

qq52pojie 发表于 2021-11-17 17:34

先测试看看

heihei6666 发表于 2021-11-17 20:50

测试一下看看

无闻无问 发表于 2021-11-18 08:33

小米,安卓6.0,安装失败:
C:\Users\Administrator>adb install D:\android\temp\crack\sotest_s.apk
4567 KB/s (229399 bytes in 0.049s)
      pkg: /data/local/tmp/sotest_s.apk
Failure

wyatton 发表于 2021-11-18 09:09

无闻无问 发表于 2021-11-18 08:33
小米,安卓6.0,安装失败:
C:%users\Administrator>adb install D:\android\temp\crack\sotest_s.apk
45 ...

32位的手机哦,我这只支持64位

无闻无问 发表于 2021-11-18 09:19

wyatton 发表于 2021-11-18 09:09
32位的手机哦,我这只支持64位

嗯,64位的,动态注册test,没64位,玩不了,模拟器,不理想

xuchjian 发表于 2021-11-18 10:58

测试一下,不知道是不是能不能成功

wyatton 发表于 2021-11-18 11:49

zuojm 发表于 2021-11-18 11:29
小米,安卓6.0,安装失败:
C:%users\Administrator>adb install D:\android\temp\crack\sotest_s.apk
45 ...

不支持32位手机哦
页: [1] 2 3 4
查看完整版本: 过签名校验,看起来很简单的样子【已完结,附解题攻略】