首页
社区
课程
招聘
[求助]豌豆荚apk反编译,文件名乱码,是怎么做到的?
发表于: 2014-3-26 14:46 14788

[求助]豌豆荚apk反编译,文件名乱码,是怎么做到的?

2014-3-26 14:46
14788
最近在学习《android软件安全与逆向分析》,在实践APK反编译的过程中,我用apktool反编译豌豆荚的应用,结果得到的文件名、类名等都是乱码,如图所示。

另外一些细节:
1、我在mac下做的实验,但应该不是编码问题,在windows下也如此。
2、apktool是自己编译的最新版1.5.3,反编译没有提示出错。
3、豌豆荚用的app是最新版的,网上可以随便下载到。
4、无论是smali文件还是另外生成的jar文件,都是类似的情况,文件名、类名、方法名等都是乱码,但是又可以辨别出明显的代码结构。

Q:就我所接触的,android的代码混淆ProGuard,也只是做到类似于abcd的混淆,豌豆荚这种“混淆”我是第一次见。所以想请教下大牛,这个是怎么做到的?

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

上传的附件:
收藏
免费 0
支持
分享
最新回复 (10)
雪    币: 1413
活跃值: (401)
能力值: (RANK:270 )
在线值:
发帖
回帖
粉丝
2
这不一定是“乱码”。Android DEX中的符号只要是Unicode就可以,应该是自己写的工具或者第三方工具混淆至此,防止逆向阅读。
2014-3-26 15:05
0
雪    币: 11
活跃值: (80)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
我在windows下试了,没出想你这样的情况啊!!!
这是我的豌豆荚版本:wandoujia_5364.apk  
是不是你的环境配的有问题啊
2014-3-26 15:14
0
雪    币: 87
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
我刚试了下你这个版本,情况有点好了,但是我这边依然存在这种情况。
大部分文件名是正常的,在smali/o/目录下,有部分出现这种问题。麻烦check下该目录?
2014-3-26 15:34
0
雪    币: 87
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
应该是这样,所以如果混淆能做到这样就牛逼了。我刚刚在mac下做实验,先用apktool反编译,不加修改回编并签名,结果安装后启动就crash掉,ddms显示“could not find class ...”
我的mac下是utf-8编码,等下按层主说的,去试下unicode编码的……

有人知道这要怎么配置progurad或者第三方工具能达到这样的效果的啊?不然要自己想办法写一个啊啊。。
2014-3-26 15:58
0
雪    币: 11
活跃值: (80)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
确实如你所说,是有这种情况,这。。。。。。。
2014-3-26 16:12
0
雪    币: 208
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
-classobfuscationdictionary指定名字字典
2014-3-27 09:16
0
雪    币: 87
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
我今天弄这个字段弄了很久,但还是只能生成abcd之类的混淆。。
网上关于这个字段的说的比较少,或者说他们的操作我都尝试了还是不行,我换了不同的dictionary还是一样的混淆,就好像该字段没生效一样。
我是在eclipse下开搞的,莫非要用命令行来build才行?
阁下能否将这个过程说详细点?
2014-3-28 22:12
0
雪    币: 87
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
用ant命令行编译,实现预期效果,确实是IDE导致的问题。
2014-3-29 20:39
0
雪    币: 158
活跃值: (196)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
字典文件怎么搞
2014-4-8 14:18
0
雪    币: 87
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
问题描述不清晰。
在android sdk下,tools/proguard/example/dictionaries/目录下有字典文件的参考。
2014-4-9 09:42
0
游客
登录 | 注册 方可回帖
返回
//