Android常见安全风险点之Intent风险

隐式intent没有明确指明哪些接收方有权限接收,恶意程序指定action标识后,可以获取intent内容,导致数据泄露,intent劫持,仿冒,钓鱼应用等风险。

使用Intent.setPackage、Intent.setComponent、Intent.setClassName、Intent.setClass、new Intent(context,Receivered.class)中任一种方法明确指定目标接收方,显式调用intent。

如:Intent.setAction(getPackageName() + ".download.handler_service")

相关推荐:
在manifest文件中加上:<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
使用SecureRandom时不要使用SecureRandom (byte[] seed)这个构造函数,会造成生成的随机数不随机。 建议通过/dev/urandom或者/dev/random获取的熵值来初始化伪随机数生成器PRNG。
存在被攻击者利用并通过密钥构造伪数据的风险。 可以通过网上的第三方加固平台来实现,如爱加密、阿里聚安全加密等,同时建议在进行加解密等敏感操作的时候,将算法写到SO扩展库中,这样处理会更安全。
1. 全部Activity可继承自BaseActivity,便于统一风格与处理公共事件,构建对话框统一构建器的建立,万一需要整体变动,一处修改到处有效。 2. 数据库表段字段常量和SQL逻辑分离,更清晰,建议使用Lite系列 …
在manifest.xml中定义Debuggable项,如果该项被打开,app存在被恶意程序调试的风险,可能导致泄漏敏感信息泄漏等问题。 显示的设置manifest的debuggable标志为false
拿起手机扫一扫即可带走我!