Android常见安全风险点之消息处理不当

Activity,Service等组件有些是对外开放的(manifest.xml 中 export为true或定义的intent-filter的组件是可导出组件),当这些组件传递的参数未做校验时,这些参数可能导致APP 拒绝服务。

请严格校验输入参数,注意空值判定和类型转换判断,防止由于异常输入导致的应用崩溃。

相关推荐:
该风险可能产生恶意发送广播,拦截有序广播。 如果它们只被同一个软件中的代码调用,将broadcast属性改为android:exported="false",如果组件需要对外暴露,应该通过自定义权限限制对它的调用。
默认情况下当旋转屏幕时,WebView将重新加载整个页面。怎么解决旋转时屏幕会从loadUrl()方法重新加载原始URL的问题? 无需Java编码,在配置文件中这样配置: android:configChanges="keyboard|keyboardHi …
存在内容被替换的风险,openFileOutput禁止使用MODE_WORLD_READABLE和MODE_WORLD_WRITABLE。 1. 避免使用MODE_WORLD_WRITEABLE和MODE_WORLD_READABLE模式创建进程间通信的内部存储(Internal Storage)文件, …
使用隐式intent进行广播会造成数据泄露、拒绝服务、钓鱼等安全问题。 使用Intent.setPackage 、Intent.setComponent、Intent.setClassName、Intent.setClass、new Intent(context,Receivered.class)中任一 …
当这个标志被设置为true或不设置该标志时应用程序数据可以备份和恢复,adb调试备份允许恶意攻击者复制应用程序数据。 在AndroidManifest.xml中设置android:allowBackup=\"false\"。
拿起手机扫一扫即可带走我!