[发明专利]基于APK的系统API和运行时字符串提取方法及系统有效
申请号: | 201210559627.1 | 申请日: | 2012-12-21 |
公开(公告)号: | CN103365699A | 公开(公告)日: | 2013-10-23 |
发明(设计)人: | 仇学龙;李柏松 | 申请(专利权)人: | 北京安天电子设备有限公司 |
主分类号: | G06F9/45 | 分类号: | G06F9/45;G06F21/56 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100080 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提供的基于APK的系统API和运行时字符串提取方法及系统,通过对APK文件进行解包及对其中classes文件的反编译,分析classes文件中的smali文件,通过增加输出代码,实现自动提取调用系统API和运行时字符串信息的代码。本方法可以细粒度自动化的对APK文件进行处理,从而获取在程序当中调用的系统API方法,及运行时字符串等信息,为检测APK文件中是否存有恶意代码提供了有力并且更加深度的检测方式。同时减少人工分析的工作量,减少重复性工作,且提供的数据更加高效准确。 | ||
搜索关键词: | 基于 apk 系统 api 运行 字符串 提取 方法 | ||
【主权项】:
一种基于APK的系统API和运行时字符串提取方法,其特征在于,包括:a.对APK文件进行解压缩,获取classes.dex文件;b.对classes.dex文件进行反汇编,得到至少一个扩展名为.smali的文件;c.将每个smali文件映射到内存,并解析smali文件中的每个函数;d.顺序读取函数中的代码指令,并判断当前代码指令是否为最后一条代码指令,如果是,则执行步骤h,否则执行步骤e;e.判断当前代码指令是否为API调用入口点,如果是,则执行步骤g,否则执行步骤f;f.判断当前代码指令是否为产生运行时字符串入口点,如果是,则确定产生运行时字符串的最终指令,并执行步骤g,否则返回步骤d;g.在当前代码指令后添加输出代码,返回步骤d;h.将全部smali文件生成带有输出指令的smali文件,并将所有带有输出指令的smali文件重新打包为classes.dex文件,并将新生成的classes.dex文件替代原classes.dex文件,重新签名打包生成新APK文件。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京安天电子设备有限公司,未经北京安天电子设备有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201210559627.1/,转载请声明来源钻瓜专利网。
- 上一篇:一种模拟读卡器的工作方法和模拟通信系统
- 下一篇:专利核驳历程显示系统及方法