升级包数据篡改 - getExternalStorageDirectory方法


一、API


1. 继承关系


【1】java.lang.Object

【2】android.os.Environment


2. Environment.getExternalStorageDirectory()

返回:类型(File),外部存储的路径


3. 参考链接


https://developer.android.com/reference/android/os/Environment.html#getExternalStorageDirectory()


二、触发条件


1. apk文件类型


【1】对应的特征:application/vnd.android.package-archive


【2】参考链接:


http://blog.csdn.net/heikefangxian23/article/details/38582261


2. apk包存放在外部存储


【1】对应的特征:

         /sdcard

         Landroid/os/Environment;->getExternalStorageDirectory(


三、漏洞原理


【1】软件自动更新时下载的升级包文件放到了外存中,该文件可能会被篡改,导致遭受攻击


【2】参考链接



http://www.peep-squirrel.com/itcontent-2717447.html


四、修复建议


【1】不要把升级包文件放到外存,另外升级包下载完成后要对升级包进行校验,以防文件被篡改


【2】升级包文件可以放在内部缓存目录getCacheDir下

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐