1.一种安卓嫌疑软件的同源识别方法,其特征在于,包括:
对APK进行静态分析,从而定位所述APK的敏感行为,提取所述敏感行为的嫌疑路径,获取所述嫌疑路径的触发方式;
对所述APK与其同源软件进行敏感行为比对;
对所述APK与其同源软件进行所述敏感行为的嫌疑路径比对;
对所述APK与其同源软件进行所述嫌疑路径的触发方式比对。
2.根据权利要求1所述的同源识别方法,其特征在于,所述对APK进行静态分析,从而定位所述APK的敏感行为,提取所述敏感行为的嫌疑路径,获取所述嫌疑路径的触发方式的步骤包括:
对所述APK进行反编译,通过静态分析方法对所述APK的代码进行扫描,定位得到所述APK的敏感行为;
通过控制流分析提取所述敏感行为的嫌疑路径;
根据所述嫌疑路径的头节点获取所述触发方式。
3.根据权利要求1所述的同源识别方法,其特征在于,所述对所述APK与其同源软件进行敏感行为比对的步骤包括:
将所述敏感行为转化为二进制字符串;
将所述APK的敏感行为的二进制字符串与同源软件的敏感行为列表进行比对,若存在相同的字符串,则对所述APK与其同源软件进行所述敏感行为的嫌疑路径比对,若不存在相同的字符串,则认为所述APK为非嫌疑软件。
4.根据权利要求3所述的同源识别方法,其特征在于,所述对所述APK与其同源软件进行所述敏感行为的嫌疑路径比对的步骤包括:
获取所述敏感行为的嫌疑路径的数量;
对所述APK与其同源软件进行所述嫌疑路径的数量比对,若所述APK的嫌疑路径的数量与其同源软件的嫌疑路径的数量的差值处于预设范围之内,则对所述APK与其同源软件进行所述嫌疑路径的触发方式比对,若所述差值处于所述预设范围之外,则认为所述APK为非嫌疑软件。
5.根据权利要求4所述的同源识别方法,其特征在于,所述对所述APK与其同源软件进行所述嫌疑路径的触发方式比对的步骤包括:
依据所述嫌疑路径的头节点确定所述触发方式为系统触发或UI触发或其它触发;
对所述APK与其同源软件的每一嫌疑路径进行触发方式比对,若相同的触发方式的数量处于预设范围之内,则确认所述APK与其同源软件属于同一软件组,并将所述APK进入所述同源软件族中,若否,则认为所述APK为非嫌疑软件。
6.一种安卓嫌疑软件的同源识别装置,其特征在于,包括:
静态分析模块,用于对APK进行静态分析,从而定位所述APK的敏感行为,提取所述敏感行为的嫌疑路径,获取所述嫌疑路径的触发方式;
敏感行为比对模块,用于对所述APK与其同源软件进行敏感行为比对;
嫌疑路径比对模块,用于对所述APK与其同源软件进行所述敏感行为的嫌疑路径比对;
触发方式比对模块,用于对所述APK与其同源软件进行所述嫌疑路径的触发方式比对。
7.根据权利要求6所述的同源识别装置,其特征在于,所述静态分析模块包括:
敏感行为定位子模块,用于对所述APK进行反编译,通过静态分析方法对所述APK的代码进行扫描,定位得到所述APK的敏感行为;
嫌疑路径提取子模块,用于通过控制流分析提取所述敏感行为的嫌疑路径;
触发方式获取子模块,用于根据所述嫌疑路径的头节点获取所述触发方式。
8.根据权利要求6所述的同源识别装置,其特征在于,所述敏感行为比对模块包括:
字符串转化子模块,用于将所述敏感行为转化为二进制字符串;
敏感行为比对子模块,用于将所述APK的敏感行为的二进制字符串与同源软件的敏感行为列表进行比对,若存在相同的字符串,则对所述APK与其同源软件进行所述敏感行为的嫌疑路径比对,若不存在相同的字符串,则认为所述APK为非嫌疑软件。
9.根据权利要求8所述的同源识别装置,其特征在于,所述嫌疑路径比对模块包括:
数量获取子模块,用于获取所述敏感行为的嫌疑路径的数量;
嫌疑路径比对子模块,用于对所述APK与其同源软件进行所述嫌疑路径的数量比对,若所述APK的嫌疑路径的数量与其同源软件的嫌疑路径的数量的差值处于预设范围之内,则对所述APK与其同源软件进行所述嫌疑路径的触发方式比对,若所述差值处于所述预设范围之外,则认为所述APK为非嫌疑软件。
10.根据权利要求9所述的同源识别装置,其特征在于,所述触发方式比对模块包括:
触发方式确定子模块,用于依据所述嫌疑路径的头节点确定所述触发方式为系统触发或UI触发或其它触发;
触发方式比对子模块,用于对所述APK与其同源软件的每一嫌疑路径进行触发方式比对,若相同的触发方式的数量处于预设范围之内,则确认所述APK与其同源软件属于同一软件组,并将所述APK进入所述同源软件族中,若否,则认为所述APK为非嫌疑软件。