时间:2021-05-02
谷歌官方提供了apktool可以逆向已经发布出去的apk应用,即反编译已经打包成功的apk文件,使用它可以将其反编译成非常接近打包前的原始格式,对于apk来说,可以具体的逆向androidmanifest.xml、资源文件resources.arsc以及将dex文件反编译成可以调试的smali文件。
warnning
但apktool并不等于是可以用来侵犯前作者的作品的工具,所以使用apktool工具的用户千万不用用其来进行不正当、非法的使用。
it is not intended for piracy and other non-legal uses. it could be used for localizing, adding some features or support for custom platforms and other good purposes. just try to be fair with authors of an app, that you use and probably like.
关于apktool
1、反编译资源文件到原始格式(including resources.arsc, xmls and 9.png files)并且重建他们;
2、smali debugging: smalidebugging已经不支持了,猜测可能另一类的dex2jar工具崛起太快,已经可以将dex文件直接反编译成jar了;
3、更多关于apktool。
使用apktool
walfred觉得apktool目前最大的作用是可以逆向androidmanifest.xml、资源文件resources.arsc,这里就简单的使用apktool来逆向一简单的hello程序吧。
如果已经有了android开发环境就能很快使用上apktool了,这里假设你已经可以直接使用apktool了。
反编译decode
walfred@ubuntu:~/lab/apktool$apktooldhelloourandroid.apk
这时我们可以看到在当前目录下已经生成helloourandroid/文件夹了,我们来查看下反编译后的androidmanifest.xml文件和strings.xml文件:
androidmanifest.xml文件反编译之后和工程下的时候几乎是一模一样,所以我们可以来check下该android应用的所有权限。
同样可以查看这些hardcode的内容:
rebuild重打包
重打包刚刚修改过的helloourandroid.apk,我们就修改strings.xml目录下的“hello”为:hello,ourunix!
然后使用apktoo重新打包,命令如下:
最后将重新编译之后的apk进行签名就可以运行了,当然如果你不想这么麻烦的去解包看,aapt这个工具也可以做到类似的功能哦,但最大的特点是aapt不需要解包。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
前面walfred已经介绍了使用apktool对apk进行逆向编译,通过apktool我们的确可以反编译已经序列化后的androidmanifest.xml和资
使用ApkTool反编译Apk下载apktool1.4.3.tar.bz2、apktool-install-linux-r04-brut1.tar.bz2两个包
本节引言1.要准备的三个工具2.使用apktool反编译APK获得图片与XML资源:3.使用dex2jar将classes.dex转换成jar文件:4.使用jd
作为Android开发者,工作中少不了要反编译别人的apk,当然主要目的还是为了学习到更多,取彼之长,补己之短。今天就来总结一下Android反编译和二次打包的
今天我们要来分享一些关于Java的反编译工具,反编译听起来是一个非常高上大的技术词汇,通俗的说,反编译是一个对目标可执行程序进行逆向分析,从而得到原始代码的