首页
社区
课程
招聘
[原创][原创]解决apktool不能反编译360手机卫士等ap的问题
发表于: 2015-12-18 11:40 13722

[原创][原创]解决apktool不能反编译360手机卫士等ap的问题

2015-12-18 11:40
13722

要做Android逆向第一步就是apktool.
apktool将apk中得代码反编译成smali代码.

然而,某些app利用apktool的一些"死角", 让其不能正常工作, 导致整个反汇编过程失败.
幸运的是apktool是开源的, 于是你自己编一个apktool来逆向那些app了~

首先来看, 默认情况下, 使用apktool反编译360手机卫士发生了什么:

命令:

  $ java -jar apktool.jar ~/Desktop/xxx/360.apk -f -o ~/Desktop/xxx/360.apk_out/
I: Using Apktool 2.0.3-831765-SNAPSHOT on 360.apk
I: Loading resource table...
Exception in thread "main" brut.androlib.AndrolibException: Multiple res specs: drawable/
  at brut.androlib.res.data.ResTypeSpec.addResSpec(ResTypeSpec.java:78)
  at brut.androlib.res.decoder.ARSCDecoder.readEntry(ARSCDecoder.java:248)
  at brut.androlib.res.decoder.ARSCDecoder.readTableType(ARSCDecoder.java:212)
  at brut.androlib.res.decoder.ARSCDecoder.readTableTypeSpec(ARSCDecoder.java:154)
  at brut.androlib.res.decoder.ARSCDecoder.readTablePackage(ARSCDecoder.java:116)
  at brut.androlib.res.decoder.ARSCDecoder.readTableHeader(ARSCDecoder.java:78)
  at brut.androlib.res.decoder.ARSCDecoder.decode(ARSCDecoder.java:47)
  at brut.androlib.res.AndrolibResources.getResPackagesFromApk(AndrolibResources.java:544)
  at brut.androlib.res.AndrolibResources.loadMainPkg(AndrolibResources.java:63)
  at brut.androlib.res.AndrolibResources.getResTable(AndrolibResources.java:55)
  at brut.androlib.Androlib.getResTable(Androlib.java:66)
  at brut.androlib.ApkDecoder.setTargetSdkVersion(ApkDecoder.java:198)
  at brut.androlib.ApkDecoder.decode(ApkDecoder.java:96)
  at brut.apktool.Main.cmdDecode(Main.java:165)
  at brut.apktool.Main.main(Main.java:81)

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

收藏
免费 3
支持
分享
最新回复 (11)
雪    币: 102
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
支持下Z~
2015-12-18 11:45
0
雪    币: 507
活跃值: (130)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
3
楼主遇到的主要问题是Multiple res specs,这个一方面可以手动去修改apk中的资源文件,网上也有010Editor的插件公开,就可以解决。同时ShakaApktool楼主可以关注看看,这个在很早就对资源问题做了修复,也对apktool的其他bug做了不少增强修复,也开源了的。
2015-12-18 12:40
0
雪    币: 102
活跃值: (2030)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
4
mark
2015-12-18 17:28
0
雪    币: 191
活跃值: (848)
能力值: ( LV12,RANK:530 )
在线值:
发帖
回帖
粉丝
5
前来顶贴...
2015-12-18 20:43
0
雪    币: 228
活跃值: (75)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
6
mark
2015-12-22 15:47
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
但是,反编译后无法重编译,怎么办?
2015-12-30 11:36
0
雪    币: 73
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
mark
2016-2-21 19:57
0
雪    币: 203
活跃值: (1756)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
鬼哥6666
2016-2-21 20:31
0
雪    币: 4715
活跃值: (4177)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
好帖
2017-5-11 17:44
0
雪    币: 4715
活跃值: (4177)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
感谢楼主分享自己学习的经验
2017-5-11 17:44
0
雪    币: 2
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
我遇到的问题不是这一个。。
2017-12-18 13:58
0
游客
登录 | 注册 方可回帖
返回
//