首页 > 其他 > 详细

反编译工具篇 2.1) jeb 爆锤 jadx 和 GDA | jeb 反混淆 解密字符串

时间:2021-09-05 18:18:46      阅读:26      评论:0      收藏:0      [点我收藏+]

反编译工具篇 2.1) jeb 爆锤 jadx 和 GDA

1.反混淆优化 字符串解密(jeb的灵魂能力)

这里什么是灵魂能力。

我想起一句很有逼格的话

当你出场的时候,所有人都显得不过如此。

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


正文开始:

很多时候我用jeb分析apk的代码,就是为了jeb的反混淆优化。

这里,正常有字符串的代码是这样的

A方法(明文字符串,其他参数)

被加固壳或者其他源码混淆工具,混淆过的代码就是这样

A方法(字符串解密方法(密文字符串),其他参数)

普通反编译工具在字符串反混淆这块,不咋行。

普通反编译工具遇到字符串加密后,是这样的

原方法   : A方法(字符串解密方法(密文字符串),其他参数) 
反编译后 : A方法(字符串解密方法(密文字符串),其他参数)

吊打友商的优秀反编译工具是这样的

原方法   : A方法(字符串解密方法(密文字符串),其他参数) 
反编译后 : A方法(明文字符串,其他参数)

当然这里大佬们直接去 hook A方法,直接查看函数参数也是可以的。

但是,如果一眼看过去,都是这种函数,你也一个一个hook查看参数吗,不累吗

jeb吊打友商的反混淆优化

技术分享图片

技术分享图片

这里既然是JEB的灵魂能力,那当然是来几个友商,锤几个友商


这里为了更好的展示 jeb的灵魂反混淆能力,我还专门写了个apk 给大佬们看的更清楚些

技术分享图片

下图这样的场景 你想不想 编译器优化成这个样子哪

技术分享图片

这个场景,一般情况下,上JEB就可了。

来看一下jeb反混淆后的效果

技术分享图片

下图是jeb的命令行输出,可以看到这里jeb成功解密了3个字符串

jeb命令行输出的相关解密日志

技术分享图片

开不开心,惊不惊喜。

在看看另外两个友商:

GDA出来被锤

技术分享图片

这里我很好奇 str_wang 原来的字符串在哪里, 看这个反编译把我搞懵了

我不仅不能一眼看出,被加密的字符串,解密之后是个啥。

我连开发者咋写的源码我都不知道了。。。

这里 猜测是作者做新版本太累了,GDA 3.85就没有这些错误,反编译后可读性很强

技术分享图片

不过依然没有解决核心问题,还是不能一眼看出解密后的明文是啥


不同于 jadx , GDA这里对解密字符串还是提供了支持的。

网址:https://zhuanlan.zhihu.com/p/250771438

技术分享图片

但是,这里搞起来有点麻烦,要手动定位解密函数和引用的密文,

我这种能躺着绝对不坐着的人,当然是懒的搞。

在遇到统一的字符串解密函数,就是一个apk里面,一个统一的方法,负责字符串的解密,这样的情况下,GDA这种方式还是蛮好用的。

但是如果碰到dexguard那种,一个类一个字符串解密函数,整个apk可能有几百个,几千个字符串解密函数。

这种情况下,如果写GDA字符串解密脚本,时间成本就会变的非常大。

遇到这种情况,强烈建议大佬们直接上 jeb 或者 simplify这种反混淆工具。

jadx-gui出来被锤

技术分享图片

jadx-gui这里把中间变量搞没了,链式调用让代码看起来更精炼,紧凑,但是并没有解决核心问题。

我还是不能一眼看出,被加密的字符串,解密之后是个啥。


持续更新移动安全,iot安全,编译原理相关原创视频文章
视频演示:https://space.bilibili.com/430241559

相关资料关注公众号 回复 工具 下载:
技术分享图片

反编译工具篇 2.1) jeb 爆锤 jadx 和 GDA | jeb 反混淆 解密字符串

原文:https://www.cnblogs.com/shlyd/p/15228489.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!