Android解析编译之后的所有文件(so,dex,xml,arsc)格式

我们在之前一篇一篇介绍了如何解析Android中编译之后的所有文件格式,所有的工作都完成了,这里我们就来做个总结,我们为什么要做这些工作:

第一篇:解析so文件格式

点击进入

这里我们解析so文件,主要是为了修改so中内容,在so文件中添加字符串内容,同时我们可以做到对so的加密工作,从而达到apk的底层加固策略。同时我们了解了so文件的格式之后,对反编译底层的代码也是很有帮助的。


第二篇:解析AndroidManifest.xml文件格式

点击进入

这里我们解析AndroidManifest.xml文件,主要是为了修复我们在使用apktool进行反编译的时候出现的一些错误信息,同时也了解到apktool反编译的工作原理,当然这里还可以解析Android中的其他资源文件xml。这里我们还可以对apk进行加固,就是通过修改AndroidManifest.xml文件内容,防止apktool这样的工具进行反编译。

注意:这里我们可以使用aapt命令更为方便,具体看文章内容的总结部分。这里就不在赘述了。


第三篇:解析resource.arsc文件格式

点击进入

这里我们解析resource.arsc文件,主要是为了修复我们在使用apktool进行反编译的时候出现的一些错误信息,同时也了解到apktool反编译的工作原理,同时我们可以减小apk包的大小,主要是通过对resource.arsc中资源文件名进行混淆,减小命名的大小。因为本身Android中是不对资源文件进行混淆工作的。同时我们可以修改resource.arsc文件内容,防止apktool这样的工具进行反编译。

注意:这里我们可以使用aapt命令更为方便,具体看文章内容的总结部分。这里就不在赘述了。


第四篇:解析dex文件格式

点击进入

这里我们解析dex文件,主要是为了更好的了解Android中的代码结构,同时我们解析完dex之后,就知道代码的结构,调用哪些api,从而判断执行了某些功能,比如判断apk是否调用了系统的api,是否包含广告sdk的api等信息,同时我们知道dex的结构之后,我们就可以对dex进行加密工作,从而做到上层对apk进行加固的工作。

注意:这里可以使用dexdump命令更为方便,具体看文章内容的总结部分,这里就不在赘述了。


总结

所以关于Android中的编译之后的文件解析工作就算告一段落,这些知识也是我们后面的逆向基础,特别是在遇到逆向失败的时候,我们能够通过具体的错误信息来定位问题,当然这些文件格式的了解也对让我们对Android中apk包生成的流程有个大体的了解。


更多内容:点击这里

关注微信公众号,最新Android技术实时推送



posted @ 2016-02-15 21:39  roccheung  阅读(951)  评论(0编辑  收藏  举报