android开发中遇到的安全问题
2016-03-25 23:35
183 查看
本文是自己在开发过程中,app上线前的安全检测遇到的问题,以便及时汇总记录下来.
参考链接:http://drops.wooyun.org/tips/3936http://www.360doc.com/content/15/0320/19/15077656_456766941.shtml
http://blog.claudxiao.net/2013/03/android-webview-cache/
1.组件暴露的问题
Activity, Service, Broadcast Receiver, Content Provider都会存在有组件暴露的风险,所以要时刻注意.我们知道在混淆代码的到时候四大组件是不会被混淆的,所以如果出现组件暴露,那么就会有可能被其他的应用启动. 处理方式:设置exported属相为false;
2.数据被恶意备份
当我们输入账号和密码登录某一款应用后,然后用电脑进行数据的备份,此时备份数据在电脑中存储的,当我们在拿另外一部手机,同样的拿该应用做实验,不需要登录数据,此时只需要将之前备份的数据直接恢复到该手机中,不需要输入账号密码就可以登录. 原因在于:在manifest.xml文件中,默认的程序是被允许备份的. <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/AppTheme"> 处理方式:allowBackup属性改为false.
3.webview控件的缓存明文密码
微信使用webview加载微博的OAuth登录和认证页面,并采用了webview的默认设置。这种情况下,用户输入账户和密码登陆微博时,系统会弹出提示询问是否保存密码。如果用户选择了是,密码就会保存在这个应用私有目录的databases/webview.db中. 处理方式:开发在处理过程中只需要在初始化webview时加一行代码即可:WebView.getSettings().setSavePassword(false),设置成不保存密码就可以了.
相关文章推荐
- 图片异步加载之 Android-Universal-Image-Loader
- Android中listview图片错乱问题及解决方案
- [Android]MAC JVM安装路径
- [android] activity横竖屏切换的生命周期
- android 自定义控件学习
- AndroidKiller反编译失败
- Android Studio SDK 代理地址设置
- Android涉及到的设计模式(转)
- Android数据库存储
- [android] activity的启动模式
- adb 启动报错
- ZrcListView
- Android中IntentService详解
- Android基础之IO流
- 初探极光推送(一)
- 关于Sqlite数据库连接Android
- Android代码生成器设计文档
- Android课程---课下练习(表格、线性和相对布局)
- android之常用知识点(一)
- [android] activity的生命周期