8

[原创]一次对tx御安全的脱壳

 2 years ago
source link: https://bbs.pediy.com/thread-268161.htm
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
[逆向分析] [脱壳反混淆] [原创]一次对tx御安全的脱壳
2天前 1569

朋友发我两个app,好像是看雪班里面的题目,加了tx御安全的壳,问我能不能脱

857117_HZ6PAFDZ395WEHY.jpg

那便开始处理:

首先获取一下基本信息

857117_ZWJ3SRW5EZXYZSR.jpg

安装app运行起来使用frida dex dump进行脱壳

得到如下文件

spacer.gifspacer.gif857117_CAF5Q7PHH9M8K2X.jpg

发现有一摸一样大小的dex,发觉不对劲,用GDA打开

857117_S56SEK5CRFQ2QPQ.jpg

里面的方法都被抽取了,使用jeb验证一下

857117_N7WQF8394S5SSTD.jpg

全部都是nop

这里说一下原理:抽取壳的原理其实就是将原来app dex里面的代码全部替换成nop保存起来,然后在需要调用的时候再填充回去,在app运行起来的时候进行dump是能够拿到一些完整的代码的,这些代码都是被调用过的,所以已经回填变成完整的了,但是我们不可能在用户操作界面把所有的方法都运行一遍,这个时候就需要主动调用式的脱壳机才能进行脱壳了

这里我使用了 https://bbs.pediy.com/thread-259854.htm 这个脱壳机

本来是用的fart,但是不知道为什么会出现脱壳过程中app闪退的情况,猜测可能是调用到了不该调用的方法

使用youpk进行脱壳得到dex

857117_AFSX75XW7YXSYHB.jpg

使用作者提供的脚本修复一下,再按照顺序对dex重命名之后直接覆盖到原app里面的dex

857117_MCJ4DE7J5NNE9C7.jpg

至此,dex处理完毕

然后便是对manifest文件的处理,因为里面的入口还是壳的入口,需要换成app的原始入口,而app原始入口位于未脱壳的app的dex中的

com.wrapper.proxyapplication.WrapperProxyApplication的WrapperProxyApplication.className中

857117_JUHHT827JNV9HQP.jpg

将这个字符串替换到manifest文件下面的application属性里面的 name里面

857117_NZW6ST675BVU9M8.jpg

这里推荐使用np管理器或者mt管理器进行替换,省去了反编译和重打包的麻烦和各种问题

删除壳的冗余文件

已经显示未加固

857117_HF6JAUHJGVCRZJB.jpg

运行一下看看有没有问题

857117_JF54Y5DSRUZJV8T.jpg

运行正常,脱壳结束

最后附上样本

https://wwr.lanzoui.com/i0symq5q3af 
密码:9br5 

[看雪官方培训] Unicorn Trace还原Ollvm算法!《安卓高级研修班》2021年秋季班火热招生!!

最后于 1天前 被Dyingchen编辑 ,原因:
收藏 ・17

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK