Android应用安全系列 part 7 – 简单介绍AndroidManifest.xml文件

AndroidManifest.xml是apk文件里非常重要的部分,尤其是与安全相关时。

每一个service,ContentProvider,activity,Broadcast Receiver (四大组件)在AndroidManifest.xml文件中都需要被描述。

首先讲几种常用的方法来查看反编译后的AndroidManifest.xml文件。

方法一:drozer

drozer中有一个模块叫做 app.package.manifest  可以获取应用AndroidManifest.xml文件并显示在drozer窗口

输入命令 : run app.package.manifest org.owasp.goatdroid.fourgoats  

详细输出文档可以查看 https://gist.github.com/exploitprotocol/1d36f83838b2bd42eca9#file-androidmanifest-xml

方法二: 使用apktool反编译apk文件

使用命令: apktool d “OWASP GoatDroid- FourGoats Android App.apk” 

可以得到编译后的apk文件

使用文本查看工具如sublime打开就ok了

方法三: 使用AndroidKiller工具进行反编译

其实跟第二种方法基本一样的,只不过更加简单和直观。直接将apk文件拖入AK中会自动进行反编译即可

直接查看文件

方法四:修改apk文件后缀为zip,解压即可

apk文件本身就是一种压缩文件,在windows下修改为zip后缀,解压就可以得到AndroidManifest.xml文件

在android中当 exported = true 时组件是public(公开)的,也可以由manifest指定intent过滤设置公开。但是开发者可以明确的将组件设置为private(私有)而不用考虑intent过滤器,通过在manifest文件中对每个组件设置 exported = false 就可以实现。

——————————————————————

开发者可以设置 permission 属性来要求特定权限才可以访问组件,依次来限制组件访问性。

详情请查看:https://gist.github.com/exploitprotocol/1c3d78041d39260167e8#file-editedandroidmanifest-xml

PS:以上只是对AndroidManifest.xml文件的简单介绍。

您可能还喜欢...