世事繁华皆成空 发表于 2015-11-4 17:58:18

腾讯加固纯手工脱壳修复教程

本帖最后由 世事繁华皆成空 于 2015-11-4 22:32 编辑

腾讯壳本身没对代码做什么保护,主要就是让apktool和dex2jar失效而已,其中的反调试更加没用了,手工修复完全不涉及调试,主要找到方法,处理完成,就跟原来的app一样了,所以腾讯壳属于很弱的加固壳

自己已经测试了一个demo和市场上的app,都没什么问题

本教程不说原理了,自己根据我做的去理解一下

腾讯壳针对apktool做了处理,使之无法反编译,之前zzage大牛的教程中提到的是manifest中加入了错误引用,现版本是处理的resources.arsc,加入了两个错误引用,触发了apktool的bug

使用shakaapktool可以正常反编译

1.搜索“fasten”,在attrs.xml和public.xml 中会发现此引用,删除这两行

    <item type="attr" name="fasten" />
    <item type="attr" name="_?m@0x7f010023" />


引号中的"_?m@0x7f010023"根据不同app会不同,是连续的两行,删除即可

2.使用AndroidKiller ,导入我提供的脚本,在反编译完成后运行此脚本,脚本中有配置方法,提示完成后即可

3.删除smali中的A001.smali文件

4.在smali的目录下com/tencent/StubShell/TxAppEntry,搜索对此文件的引用,直接搜索TxAppEntry,如果发现在其它smali中调用的此文件,直接删除那句调用即可,最后删除stubShell文件夹


可能会在mainifest中发现<meta-data android:name="TxAppEntry" android:value="android.app.Application"/>,直接删除即可,如果Application标签的name值被替换成了com.tencent.StubShell.TxAppEntry

直接搜索.super Landroid/app/application,部分app的自定义Appliction可能引用有所出入,根据情况所变,填入程序自身的Appliction标签名,如果没有,直接删除

android:name="com.tencent.StubShell.TxAppEntry"即可

5.最后就是删除lib下的libtxRes64.so和asserts下的这5个文件即可
http://attach.52pojie.cn/forum/201511/04/150223je13c8737kc7ec03.png


PS:跟原版继续想比的话,多了残余的nop语句,但nop不参与程序逻辑,所以无影响,其次部分语句被替换成了

加固版:
# virtual methods
.method public clearHeader()V
    .locals 1
    move-object v0, p0
    return-void
.end method


原版:
# virtual methods
.method public clearHeader()V
    .locals 0
    return-void
.end method


观察语句,在非静态方法中p0代表this,部分方法中会调用p0,在加固版本中,将this赋给了v0,最终调用的是v0,其实就是p0,也同样无影响
处理完成后回编译,至此app可以正常运行,也可以正常使用dex2jar查看源码了

网盘里包含了教程的pdf和脚本文件

链接: http://pan.baidu.com/s/1bnqMhIZ 密码: j9a8



莫沉 发表于 2015-11-4 18:19:54

支持下繁华大,我上月也把My Android Tools Pro的腾讯加固试着脱了下

chenjingyes 发表于 2015-11-4 18:41:05

前排观摩大牛!!!{:4_86:}

xin 发表于 2015-11-4 19:17:41

前排支持。

风吹屁屁凉 发表于 2015-11-4 23:36:52

我也来学习学习。谢谢大大的分享

alphabit 发表于 2015-11-5 08:33:29

支持原创,很不错,学习下

huluxia 发表于 2015-11-5 08:34:55

前来学习!

越狱 发表于 2015-11-5 11:48:25

支持大神多多发布教程

水波摇曳 发表于 2015-11-5 15:15:29

你妹 不搞个静态脱壳机?

chenchuie 发表于 2015-11-7 01:36:33

莫沉 发表于 2015-11-4 18:19
支持下繁华大,我上月也把My Android Tools Pro的腾讯加固试着脱了下

最新版的My Android Tools Pro好像已经不是腾讯加固,没法试试{:4_106:}
页: [1] 2
查看完整版本: 腾讯加固纯手工脱壳修复教程