三级等保检测,存在非uni加固能解决的问题:存在动态注册Broadcast Receiver风险。但风险问题点存在与uni自身的类及uni依赖的引用中,无法通过代码直接修复,部分等保结果如下,有什么解决方案吗?
检测依据 中国信息安全测评中心旗下“国家信息安全漏洞库“关联漏洞编号:CWE-16。
风险描述 Broadcast Receiver组件包括静态注册和动态注册两种方式,其中动态注册,即在代码中使用registerReceiver()方法注册BroadcastReceiver,只有当执行registerReceiver()代码时才进行注册,取消时则调用unregisterReceiver()方法。容易忽略的是registerReceiver()注册的是全局BroadcastReceiver,在其生命周期内是默认导出的,如果没有指定权限访问控制,可以被任意外部应用访问,向其传递Intent来执行特定的功能。因此,动态注册的BroadcastReceiver可能导致拒绝服务攻击、应用数据泄漏或是越权调用等风险。
风险等级 高
检测结果 未通过
问题描述 细则 1:动态注册Broadcast Receiver风险
问题2:
类文件:
com/taobao/weex/WXSDKInstance
类方法:
onActivityCreate()
问题3:
类文件:
io/dcloud/common/adapter/util/DownloadUtil
类方法:
init(Landroid/content/Context;)
问题4:
类文件:
io/dcloud/sdk/base/service/DownloadService
类方法:
a(Ljava/lang/String;Lio/dcloud/sdk/base/entry/AdData;)
问题5:
类文件:
/appcompat/app/AppCompatDelegateImplAutoNightModeManager
类方法:
setup()V
问题6:
类文件:
io/dcloud/feature/bluetooth/BluetoothBaseAdapter
类方法:
onBluetoothAdapterStateChange(Lio/dcloud/common/DHInterface/IWebview;Lorg/json/JSONArray;)
问题7:
类文件:
com/getui/gtc/a/a/l
类方法:
c(Landroid/content/Context;)
问题8:
类文件:
com/bumptech/glide/manager/DefaultConnectivityMonitor
类方法:
register()
问题9:
类文件:
com/getui/gtc/dim/b/b
类方法:
(Landroid/content/Context;)
问题10:
类文件:
io/dcloud/WebAppActivity
类方法:
initBackToFrontSplashAd()V
问题11:
类文件:
io/dcloud/common/util/net/NetMgr
类方法:
init(Lio/dcloud/common/DHInterface/ICore;)
问题12:
类文件:
io/dcloud/b
类方法:
registerReceiver(Lio/dcloud/feature/internal/reflect/BroadcastReceiver;Landroid/content/IntentFilter;)
问题13:
类文件:
io/dcloud/sdk/base/dcloud/ADHandlereb
类方法:
a(Lio/dcloud/p/y0;)
问题14:
类文件:
com/huawei/hms/framework/common/ContextCompat
类方法:
registerReceiver(Landroid/content/Context;Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent
修复建议 建议1:
【开发者修复】使用带权限检验的registerReceiver API进行来动态注册BroadcastReceiver。
0 个回复