首页
社区
课程
招聘
[求助]对于进行了代码混淆的安卓app,反编译后有什么方法读懂源码吗?
发表于: 2016-11-3 09:05 13879

[求助]对于进行了代码混淆的安卓app,反编译后有什么方法读懂源码吗?

2016-11-3 09:05
13879
近来尝试dex2jar反编译某app后,用jd-gui打开,发现用了代码混淆,其中的类名,变量名,方法名全是a,b,c , 然后又试了一下用apktool,在生成的smali文件的文件名还是正常的类名,看到有像MainActivity.smali之类的文件名,虽然不知这是不是故意拿来迷惑人的,打开里面看了下,变量名都是a,b,c ,

     有没有什么方法能读懂到进行了代码混淆的源码?

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (13)
雪    币: 60
活跃值: (16)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
变了函数名而已,这就读不懂了?
2016-11-7 09:50
0
雪    币: 38
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
就是这样读啊,混淆而已,这就是最基础的了。
MainActivity这类的是因为有入口函数,不能混淆,不是迷惑人的
2016-12-16 12:37
0
雪    币: 64
活跃值: (31)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
只是换个名称而已
2017-2-1 14:33
0
雪    币: 2
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
名称变了,只是读起来会很晦涩,逻辑是没变的,认真读还是可以读懂的,我都hook了两个混淆过的app了
2017-2-1 19:05
0
雪    币: 0
活跃值: (15)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
硬着头皮读~~
2017-2-10 16:38
0
雪    币: 36
活跃值: (16)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7

混淆后都名字  a,b,c,d  这些问题不大,只是替换来原来函数和变量都名称,代码还是能看懂的,混淆后的APK反编译后回编译会出问题,这个才是关键麻烦的事情。

2017-5-3 17:48
0
雪    币: 1110
活跃值: (286)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
JEB,读懂功能再改函数名
2017-5-9 13:48
0
雪    币: 2886
活跃值: (11798)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
apks 混淆后都名字  a,b,c,d  这些问题不大,只是替换来原来函数和变量都名称,代码还是能看懂的,混淆后的APK反编译后回编译会出问题,这个才 ...
  /*  JADX  WARNING:  inconsistent  code.  */
        /*  Code  decompiled  incorrectly,  please  refer  to  instructions  dump.  */
        public  boolean  a()  {
                /*
                r14  =  this;
                r12  =  2;
                r1  =  1;
                r2  =  0;
                r3  =  0;
                r5  =  new  java.lang.String[r12];
                r0  =  "wlan0";
                r5[r2]  =  r0;
                r0  =  "eth0";
                r5[r1]  =  r0;
                r6  =  r5.length;
                r4  =  r2;
        L_0x0010:
                if  (r4  >=  r6)  goto  L_0x0101;
像这样的怎么看呢,老铁
2017-5-9 17:31
0
雪    币: 57
活跃值: (53)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
文件名正常的那些只不过是由于无法混淆而已,并不是某些工具可以直接把混淆过的重命名回去。
2017-5-12 17:59
0
雪    币: 163
活跃值: (1874)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
11
要是看的不是很明白,在结合动态调试。
2017-5-12 22:36
0
雪    币: 36
活跃值: (16)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
你瞒我瞒 /* JADX WARNING: inconsistent code. */ /* Code decompiled incorrectly, please refer to instruc ...
这种算比较特殊的
2017-5-15 01:30
0
雪    币: 1
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
你瞒我瞒 /* JADX WARNING: inconsistent code. */ /* Code decompiled incorrectly, please refer to instruc ...
也很好读,所有确定值直接替换
2017-5-16 12:31
0
雪    币: 2886
活跃值: (11798)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
apks 这种算比较特殊的
我后来Google了一番,使用jadx打开之前,用命令
jadx-gui  --show-bad-code  target.apk
这样打开,就可以看到具体的代码了。
但是我贴出来的代码还是没法看懂,这是什么语言啊
谢谢啦。
2017-5-19 11:16
0
游客
登录 | 注册 方可回帖
返回