在做恶意邮件附件检测系统时,被要求尝试在该系统内增加apk的检测。要求使用静态分析手段且对检测速度有较高的要求。
选择权限特征是因为速度很快且相对简单,只需要解包apk然后编码二进制化的AndroidManifest文件,根据permission标签读取其需要的权限即可。
在调研过程中收集到了权限相关的数据集,而在具体的实现方法上并无太大区别,只是在需要作为特征的权限数量上有所区别。
本文无创新点,只是在复现别人的操作,进行了一定程度的对比。
准备知识
以下内容来自官方文档
应用必须在清单文件的<uses-permission>
标签中写入所需要的权限。
如以下代码完成对发送短信SEND_SMS
权限的声明
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.snazzyapp">
<uses-permission android:name="android.permission.SEND_SMS"/>
<application ...>
...
</application>
</manifest>
权限与应用的具体功能直接挂钩,如图。