反编译 AndroidManifest.xml文件

1. Android安装包的结构

我们将app的apk文件改为zip文件,然后解压就会看到如下图的Android安装包的结构了。

Paste_Image.png

  • resources.arsc:这个文件是编译后的二进制资源文件的索引,也就是apk文件的资源表(索引)。
  • lib:目录下的子目录armeabi存放的是一些so文件。
  • META-INF:目录下存放的是签名信息,用来保证apk包的完整性和系统安全。但这个目录下的文件却不会被签名,从而给了我们无限的想象空间。
  • assets:目录下可以看到很多的基础数据,以及本地会使用的一些HTML、CSS和JavaScript文件。
  • res:目录下的anim目录很值得研究,这个目录存放app所有的动画效果。

2. 查看xml文件(需要借助工具 AXMLPrinter2)

目录中的xml文件都是经过压缩的,所以我们不经过处理看到的都是乱码的,这就需要我们来借助一款工具来查看包括AndroidManifest.xml在内的xml文件。

地址链接 :https://code.google.com/archive/p/android4me/downloadsicon-default.png?t=M0H8https://code.google.com/archive/p/android4me/downloads

怎样使用AXMLPrinter2.jar?
在命令行(cmd)进入AXMLPrinter2.jar所在的目录,将你需要破解的xml文件也要放在和工具一起的目录中,然后运行命令:java -jar AXMLPrinter2.jar xml文件名
这样就会在cmd窗口中显示正常的xml文件了,但是有时内容太多,窗口放不下,我们可以用命令放在一个txt文件中。命令:java -jar AXMLPrinter2.jar xml文件名 > result.txt ,这样就会在txt中显示正常的xml了。

查看是否有自定义暗码

在result.txt中搜索secret_code过滤出暗码,比如"2432546"就是产品的暗码。

“<data android:host="2432546" android:scheme="android_secret_code"”

参考的路径: 反编译 AndroidManifest.xml文件(APP安全测试) - 幸福在今天 - 博客园

猜你喜欢

转载自blog.csdn.net/m1234567q/article/details/122694574