Youpk 爱加密脱壳 和 梆梆脱壳实战

逆向的时候发现app加了壳, 比如爱加密加固,梆梆加固,或者360之类的 分析个半天,头都秃了还是脱不了怎么办?这个时候除了回收站, 还可以用youpk。

大家好,我是王铁头 一个乙方安全公司搬砖的菜鸡
持续更新移动安全,iot安全,编译原理相关原创视频文章
视频演示:https://space.bilibili.com/430241559

主流脱壳机对比

下面是我整理的一份常用的脱壳机的对比


Youpk 爱加密脱壳 和 梆梆脱壳实战_第1张图片
爱加密脱壳实战 梆梆脱壳

实战演示

梆梆脱壳实战

这里在网上找了梆梆2020 加固过的样本。

apk加壳前代码

Youpk 爱加密脱壳 和 梆梆脱壳实战_第2张图片
梆梆脱壳教程

这里加壳前的代码比较简单 只有一个类MainActivity MainActivity 里只有简单的add 和 sub方法。可以看到方法里面的代码也比较简单,返回相加相减的值。

梆梆加壳后

Youpk 爱加密脱壳 和 梆梆脱壳实战_第3张图片
梆梆脱壳

这里可以看到 加壳后 MainActivity 这个类已经看不到了 全是梆梆加固的相关类方法

这里 比较厉害的大佬可能直接硬钢逆向了,分析so层,然后一步步dumpdex。

另一些跟我一样懒得大佬,可以直接上工具了。用脱壳机,真香!!!!

好,上youpk.

youpk

youpk相关介绍:https://bbs.pediy.com/thread-259854.htm
youpk github : https://github.com/Youlor/Youpk

youpk 实战脱壳梆梆样本

  1. 第一步:往配置文件 /data/local/tmp/unpacker.config 写入要脱壳的包名。
    这里脱壳机会读取文件内容执行脱壳

    这里样本的包名是 com.example.test_shell
    往配置文件写入包名 如下图

Youpk 爱加密脱壳 和 梆梆脱壳实战_第4张图片
梆梆脱壳工具

具体命令如下

sailfish:/ # cd /data/local/tmp
sailfish:/data/local/tmp # 
sailfish:/data/local/tmp # echo 'com.example.test_shell' > unpacker.config
sailfish:/data/local/tmp # 
sailfish:/data/local/tmp # cat unpacker.config 
com.example.test_shell

2)第二步:启动app
这里测试机已经安装了测试app 点击图标启动


Youpk 爱加密脱壳 和 梆梆脱壳实战_第5张图片
image.png

3)第三步:进入脱出dex的目录 一般为 /data/data/包名/unpacker/dex 获取脱壳后的dex

这里目录为

/data/data/com.example.test_shell/unpacker/dex

进入目录 取出dex 如下图 这里可以看到dex有两个,脱壳机会把外壳dex和真正的dex都脱下来,后续打开一个一个辨别就可以了
小窍门:带有base.apk这种dex的一般都是外壳dex

梆梆脱壳教程

好的 成功脱壳。
此刻日志里也看到输出了 unpack end的字样
这里,有些加壳后的apk是没有日志的,因为hook了打印日志的函数,所以看不到,不过不影响脱壳机脱壳

Youpk 爱加密脱壳 和 梆梆脱壳实战_第6张图片
爱加密破解

把拖出来的dex反编译看下 坐下对比


Youpk 爱加密脱壳 和 梆梆脱壳实战_第7张图片
梆梆破解

这里可以看到完美dump出dex。
注意 这里只是dump出dex, 还原了三代壳的方法抽取
对于后续四代壳五代壳的 dexvmp sovmp并无相关处理。

爱加密脱壳实战

这里爱加密壳找的是网上的一个例子 这里并未找到加固前的样本

爱加密加固后样本

爱加密加固后反编译代码:

Youpk 爱加密脱壳 和 梆梆脱壳实战_第8张图片
爱加密脱壳工具

运行后界面

Youpk 爱加密脱壳 和 梆梆脱壳实战_第9张图片
爱加密实战脱壳

按照上面办法脱壳后的dex

这里相关步骤照搬一遍上面的 也就是写入配置文件的包名改一下,基本没啥不同
dump后的dex如下图


Youpk 爱加密脱壳 和 梆梆脱壳实战_第10张图片
爱加密脱壳i

这里可以看到 dex里面 之前被抽取的方法 已经成功回填

视频演示:https://space.bilibili.com/430241559

你可能感兴趣的:(Youpk 爱加密脱壳 和 梆梆脱壳实战)