[发明专利]基于二进制动态插桩的Android恶意行为动态检测方法在审
| 申请号: | 201910225536.6 | 申请日: | 2019-03-25 |
| 公开(公告)号: | CN109992968A | 公开(公告)日: | 2019-07-09 |
| 发明(设计)人: | 罗森林;王逸洲;潘丽敏;柯懂湘;张笈 | 申请(专利权)人: | 北京理工大学 |
| 主分类号: | G06F21/56 | 分类号: | G06F21/56;G06F9/455 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 100081 *** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 恶意行为 二进制 插桩 动态检测 恶意软件 时序关系 检测 恶意行为检测 系统函数调用 信息科学技术 细粒度分类 被测软件 程序源码 调用序列 分类算法 模型提取 时序特征 特征输入 决策树 准确率 触发 构建 调用 计算机 | ||
1.基于二进制动态插桩的Android恶意行为动态检测方法,其特征在于所述方法包括如下步骤:
步骤1,将被测软件的apk文件安装到Android实体机或虚拟机上,使用Android动态监测框架触发软件潜在的所有恶意行为;
步骤2,通过二进制动态插桩工具,在程序运行过程中向二进制可执行文件中注入自定义代码,执行自定义函数收集软件的函数调用日志;
步骤3,根据函数调用日志生成函数的调用序列,生成敏感系统API的调用序列,使用N-Gram模型提取软件的系统API调用序列的时序关系特征;
步骤4,将提取出的调用时序特征作为输入,输入到采用GBDT多分类算法训练出的用于软件恶意行为识别分类的恶意行为检测模型中,对软件中潜在的恶意行为进行检测和细粒度分类。
2.根据权利要求1所述的基于二进制动态插桩的Android恶意行为动态检测方法,其特征在于:步骤1中软件潜在恶意行为触发方法为使用Monkey动态测试工具模拟用户UI操作事件,使用adb工具模拟触发系统事件、开启系统服务。
3.根据权利要求1所述的基于二进制动态插桩的Android恶意行为动态检测方法,其特征在于:步骤2中使用Frida动态代码插桩框架,在程序运行过程中向二进制可执行文件中注入自定义代码,将系统进程中原始函数地址替换为自定义函数地址,执行完自定义函数再重新跳转回原始函数的执行进程。
4.根据权利要求1所述的基于二进制动态插桩的Android恶意行为动态检测方法,其特征在于:步骤3中从函数调用序列中找到与恶意行为相关的敏感函数调用记录,生成敏感系统API的调用序列。
5.根据权利要求1所述的基于二进制动态插桩的Android恶意行为动态检测方法,其特征在于:恶意行为识别与分类模型采用GBDT多分类算法训练,将软件包含的恶意行为进行细粒度分类,包括:恶意扣费、资费消耗、信息窃取、系统破坏、权限提升和流氓行为六类。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京理工大学,未经北京理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910225536.6/1.html,转载请声明来源钻瓜专利网。





