4***@qq.com
4***@qq.com
  • 发布:2026-06-18 19:10
  • 更新:2026-06-18 23:38
  • 阅读:334

【报安全问题】App存在剪切板敏感信息泄露的漏洞。

分类:uni-app

1: app打包成功之后,进行安全评估,安全平台检测出该App存在剪切板敏感信息泄露的漏洞。
2:平台给出的整改建议是: 建议将activity中的EditText设置属性android:longClickable="false"。
问: 除了上述解决方案,还有没有其他解决方案,上述方案在uni-app中是如何进行修改的呢?

我看查到论坛有好几个类似的贴子了,官方直接关闭 了评论。

2026-06-18 19:10 负责人:无 分享
已邀请:
Ask小助手

Ask小助手

欢迎到专业群( uni-app 官方技术交流群 1 ) 咨询,群中有相关专业的管理员和群友。

针对你提到的“App存在剪切板敏感信息泄露”漏洞,安全平台检测指出image_text_dialog.xml文件中的EditText缺少android:longClickable="false"属性。这个问题在uni-app社区中已有不少开发者反馈过,确实是安全检测中常见的一个风险点。

除了安全平台建议的方案外,这里提供几种解决方案,并说明在uni-app中如何操作。

一、除了设置android:longClickable="false",还有哪些解决方案?

  1. APK加固(最推荐的根本性方案)
    安全平台检测出的很多风险属于“潜在风险”而非“真实漏洞”。例如,这个EditText长按导致的剪切板问题,在Android 4.2以下版本才可能存在真实漏洞,而当前uni-app打包的最低支持版本已远超于此。因此,对APK进行加固是解决这类误报问题最有效的方式
    推荐使用DCloud官方的uni安全加固服务,它可以有效提升应用的整体安全性,规避大量安全平台的误报。

  2. 自查并规范剪切板API的使用
    安全平台会检测所有对剪切板的调用。你需要全局搜索项目代码,检查是否使用了uni.setClipboardDatauni.getClipboardData

    • 如果非必须,请移除相关调用
    • 如果必须使用(例如复制功能),请确保:
      • 在隐私政策中明确声明会读取/写入剪切板,并说明用途。
      • 在用户同意隐私政策前,不要调用任何剪切板API。
      • 不要向剪切板中存入任何敏感信息(如密码、身份证号、token等)。
  3. 使用Native.js或原生插件绕开系统API
    如果标准API的调用行为无法通过安全检测,可以考虑使用Native.js直接调用Android原生剪切板管理器,或者使用插件市场中的封装插件,它们可能提供了更灵活的控制方式。例如,插件市场有安卓监听剪切板变化等插件。

二、如何在uni-app中修改android:longClickable="false"

image_text_dialog.xml是uni-app内部使用的布局文件,开发者无法直接修改。对于这个问题,具体解决方案取决于你的打包方式:

  • 云打包(推荐)
    这是uni-app最常见的打包方式。根据官方技术人员的回复,云打包的SDK版本会持续更新以修复已知的安全漏洞。
    解决方案请将HBuilderX升级到最新正式版或Alpha版,然后重新进行云打包。 新版本的云打包SDK很可能已经修复了此问题。你目前使用的版本如果较旧,升级后大概率可以解决。

  • 离线打包
    如果你使用的是离线打包,需要自行修改原生项目。
    解决方案:在你的Android Studio原生项目中,找到image_text_dialog.xml布局文件,手动为其中的EditText节点添加android:longClickable="false"属性,然后重新编译打包。

补充说明:根据ask社区中官方人员DCloud_Android_ST的回复,处理此类问题时,提供详细的调用堆栈信息有助于更精准地定位问题。如果你的项目中确实没有主动调用剪切板API,则问题很可能源于SDK内部,此时升级SDK版本是最直接的解决办法。

总结建议

  1. 优先尝试升级HBuilderX并重新云打包,这是最简单快捷的解决方式。
  2. 使用APK加固是应对安全平台误报、提升应用安全性的最佳实践,强烈推荐。
  3. 自查并规范代码,确保所有剪切板操作都符合隐私合规要求。

如果问题依然存在,建议在官方论坛ask发帖,附上完整的安全检测报告和APK文件,并添加“安全漏洞”标签,官方人员会协助排查。

内容为 AI 生成,仅供参考
DCloud_heavensoft

DCloud_heavensoft

uni-app是一个框架,它如果在框架层面上关闭了长按,那就意味着想要长按的开发者也用不了,这个问题肯定不能从这儿解决。
安全漏洞不来自于这里,你应该问这个机构,你到底检出了什么安全问题,会侵犯用户的什么隐私?
如果就是剪切板的话,你在Manifest里关闭剪贴板的权限就行了,代码里也不要调用剪贴版的API,也检查三方SDK有没有人会去调这个剪切板。

我不知道你用的是什么安全检测,但看起来它并不清楚 uni-app 下应该怎么做安全检测。如果你要过登保的话,我建议还是从 DCloud 这边来购买等保,https://uniapp.dcloud.net.cn/tutorial/djbh.html

要回复问题请先登录注册