[发明专利]一种dex文件的存储方法和装置在审
申请号: | 201611139435.X | 申请日: | 2016-12-12 |
公开(公告)号: | CN106845166A | 公开(公告)日: | 2017-06-13 |
发明(设计)人: | 刘敏 | 申请(专利权)人: | 北京奇虎科技有限公司 |
主分类号: | G06F21/14 | 分类号: | G06F21/14 |
代理公司: | 北京天悦专利代理事务所(普通合伙)11311 | 代理人: | 任晓航,张海秀 |
地址: | 100088 北京市西城区新*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 dex 文件 存储 方法 装置 | ||
技术领域
本发明涉及应用程序安全防护技术领域,具体涉及一种dex文件的存储方法和装置。
背景技术
随着Android系统的快速发展和及设备的高速增长,基于Android的平台应用需求也越来越复杂。形形色色的应用软件壮大了Android市场,也丰富了我们的生活,越来越多的人从起初的尝试到享受再到依赖,Android应用越来越广泛。与其它操作系统相比,Android系统的开源性为应用开发者提供了更多的功能接口,但这些功能接口在提高系统可扩展性的同时也为恶意软件提供了遍历,非法拷贝、反编译、内存截取等手段不断威胁着安卓系统的安全,不仅危害了使用者,也给正常应用开发者造成了严重的损害。因此,Android应用安全性一直是开发者所关注的重点问题。
对Android应用进行加固防护的主要目的均是为了防止其java字节码文件classes.dex文件被获取,在Android平台安装运行APK文件时,都必须将dex文件释放到内存中,在dex文件完成加载时,根据文件头header中定义的其它结构的偏移地址和长度信息进行寻址解析,将其它结构中的数据加载分别加载到内存中。由于dex文件的内容是存放在内存中的一端连续的内存空间中,因此,破解者通过dex文件内存提取工具即dexdump工具只需要扫描到内存中的文件头的起始地址位置的字符串,就相当于找到了找到了dex文件,就能把它从内存中提取即dump出来,使得应用程序很容易被篡改,为开发者和用户造成损害。
发明内容
针对现有技术中存在的缺陷,本发明实施例的目的在于提供一种能够克服上述问题或者至少能够部分地解决上述问题的一种dex文件的存储方法和装置。
为实现上述目的,本发明的一个实施例中提供一种dex文件的存储方法,该方法包括:
解析待加载的dex文件,将解析后的dex文件加载到内存中;
删除所述内存中的dex文件的文件头header中的指定数据。
优选的,如上所述的一种dex文件的存储方法,还包括:
根据解析后的dex文件所在的内存地址,完成dex文件的动态加载。
优选的,如上所述的一种dex文件的存储方法,所述指定数据包括文件头header中的魔数字段magic。
优选的,如上所述的一种dex文件的存储方法,所述删除所述内存中的dex文件的文件头header中的指定数据,包括:删除内存中的“dex/0035”字符串。
优选的,如上所述的一种dex文件的存储方法,所述指定数据包括以下数据中的至少一种:
校验码字段checksum、签名字段signature、文件总长度字段fileSize、文件头长度字段headerSize、字节顺序常量标识字段endianTag、连接段开始位置字段link Off、各基地址字段。
本发明的一个实施例中还公开了一种dex文件的存储装置,该装置包括:
dex解析加载模块,用于解析待加载的dex文件,将解析后的dex文件加载到内存中;
指定数据删除模块,用于删除所述内存中的dex文件的文件头header中的指定数据。
优选的,如上所述的一种dex文件的存储装置,还包括:
dex动态加载模块,用于根据解析后的dex文件所在的内存地址,完成dex文件的动态加载。
优选的,如上所述的一种dex文件的存储装置,所述指定数据包括文件头header中的魔数字段magic。
优选的,如上所述的一种dex文件的存储装置,所述指定数据删除模块用于删除内存中的“dex/0035”字符串。
优选的,如上所述的一种dex文件的存储装置,所述指定数据包括以下数据中的至少一种:
校验码字段checksum、签名字段signature、文件总长度字段fileSize、文件头长度字段headerSize、字节顺序常量标识字段endianTag、基地址字段。
本发明的有益效果在于:本发明实施例中所提供的dex文件的存储方法和装置,通过抹除已加载到内存中的dex文件的文件头header中的指定数据,使得反编译者无法从内存中找到dex文件或者无法提取到完整的dex文件,解决了可以从内存中提取dex文件的问题,有效避免了dex文件的动态反编译,提高了dex文件动态加载及运行的安全性。
附图说明
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇虎科技有限公司,未经北京奇虎科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611139435.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种油嘴压力室去毛刺装置
- 下一篇:电路板多头锡焊机