9***@qq.com
9***@qq.com
  • 发布:2022-12-14 10:01
  • 更新:2023-03-09 11:01
  • 阅读:198

【报Bug】安卓app打包后lib.5plus.base-release.aar 源代码中存在安全漏洞

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: win11

HBuilderX类型: 正式

HBuilderX版本号: 3.6.13

手机系统: Android

手机系统版本号: Android 8.1

手机厂商: 华为

手机机型: X8

页面类型: nvue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

操作步骤:

见BUG 描述

预期结果:

见BUG 描述

实际结果:

见BUG 描述

bug描述:

云打包的apk使用百度安全检测 发现
类名:com.nostra13.dcloudimageloader.core.download.BaseImageDown loader (classes.dex)
方法名:trustAllHosts
存在HTTPS允许任意主机名漏洞
经过对离线打包文件中的 lib.5plus.base-release 进行反编译查看
最终找到trustAllHosts 方法
方法如下:

private void trustAllHosts(HttpsURLConnection paramHttpsURLConnection) {  
    try {  
      SSLContext sSLContext = SSLContext.getInstance("TLS");  
      Object object;  
      if ((object = newInstance(this.context.getPackageName() + ".CustomTrustMgr", null, null)) != null) {  
        boolean bool = false;  
        (new TrustManager[1])[bool] = (TrustManager)this;  
        sSLContext.init(null, new TrustManager[1], new SecureRandom());  
        paramHttpsURLConnection.setSSLSocketFactory(sSLContext.getSocketFactory());  
        paramHttpsURLConnection.setHostnameVerifier((HostnameVerifier)SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);  
      }   
    } catch (Exception exception) {  
      null.printStackTrace();  
    }   
  }

其中:SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER 为允许所有主机名
所以如何修改为:STRICT_HOSTNAME_VERIFIER
请问云端打包如何处理这个问题?

2022-12-14 10:01 负责人:无 分享
已邀请:
清霆

清霆

官方失踪了?

DCloud_Android_ST

DCloud_Android_ST

收到会尽快优化

  • 清霆

    建议收集一下大公司的安全规范,因为按照安全规范来搞,就没法用uniapp开发了


    2023-03-24 12:07

要回复问题请先登录注册