主流安卓APP都中招了!“应用克隆漏洞”的快速检测修复方案

2023-10-29

2018年1月9日, 国家信息安全漏洞共享平台发布了关于Android平台WebView控件存在跨域访问高危漏洞的安全公告。

漏洞描述:
攻击者利用该漏洞,可远程获取用户隐私数据(包括手机应用数据、照片、文档等敏感信息),还可窃取用户登录凭证,在受害者毫无察觉的情况下实现对APP用户账户的完全控制。由于该组件广泛应用于Android平台,导致大量APP受影响,构成较为严重的攻击威胁。

影响范围:
国内多款安卓版知名手机APP被曝光存在“应用克隆”漏洞,约10%的主流APP受到漏洞影响。作为中国领先的网络安全厂商,360旗下APP从产品开发阶段就已对“应用克隆”攻击威胁进行全面预防,完全不受此次漏洞影响。

如何检测:
1. 使用360旗下代码检测工具火线进行代码检测。
2. 下载火线Android Studio插件(推荐开发人员使用)或者火线Jenkins插件(推荐测试人员使用)。
3. 代码检测完成后查看火线报告,确认项目代码是否存在“应用克隆漏洞”。

修复建议:
1. file域访问为非功能需求时,手动配置setAllowFileAccessFromFileURLs或setAllowUniversalAccessFromFileURLs两个API为false。(Android4.1版本之前这两个API默认是true,需要显式设置为false)
2. 若需要开启file域访问,则设置file路径的白名单,严格控制file域的访问范围,具体如下:
(1)固定不变的HTML文件可以放在assets或res目录下,file:///android_asset和file:///android_res 在不开启API的情况下也可以访问;
(2)可能会更新的HTML文件放在/data/data/(app) 目录下,避免被第三方替换或修改;
(3)对file域请求做白名单限制时,需要对“../../”特殊情况进行处理,避免白名单被绕过。
3. 避免App内部的WebView被不信任的第三方调用。排查内置WebView的Activity是否被导出、必须导出的Activity是否会通过参数传递调起内置的WebView等。
4. 建议进一步对APP目录下的敏感数据进行保护。客户端APP应用设备相关信息(如IMEI、IMSI、Android_id等)作为密钥对敏感数据进行加密。使攻击者难以利用相关漏洞获得敏感信息。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

主流安卓APP都中招了!“应用克隆漏洞”的快速检测修复方案 的相关文章

  • 通过附加上下文改进 Android 语音识别

    据我了解 Android API 使用谷歌语音识别服务进行语音转文本 我已经学习了 API 我发现它非常简单 只需将语音转换为单词数组即可 有什么方法可以提高识别率 我的意思是 如果我知道上下文 我可以向服务发送一些参数以提高识别率吗 或者
  • Android N 通过代码安装apk

    我正在尝试在 android N 上安装 APK if Build VERSION SDK INT gt Build VERSION CODES N File apkFile new File Environment getExternal
  • 如何获取存储在MySQL中的经纬度位置并在Android地图应用程序中使用它

    我试图获取存储在 MySQL 中的纬度和经度位置 我想将这些值用于我的 Android 地图应用程序 这是我的代码 Java脚本 Button direction Button findViewById R id btnDir direct
  • 两个 ListView 和 ScrollView

    我离这里很近 我已经尝试了很多东西 但无法让它发挥作用 我这里有两个列表视图 我想要的是每个列表视图显示其全部内容 我不希望列表视图可滚动 我想要保持列表视图可滚动的滚动视图 我能得到的最接近的结果 这是错误的 是每个列表视图都是可滚动的
  • 如何以编程方式检查应用程序是否在调试模式下运行?

    我必须在应用程序中的某个位置确定我的应用程序是在调试模式还是实时模式下运行 是否有任何函数或代码可用于检查 在开 关两种情况下都会返回 true false 如果是这样 请帮助我 提前致谢 从问题中尚不清楚调试模式是否指的是 应用程序是否可
  • 是否可以使用 AWS AppSync 构建离线优先的移动应用程序?

    我想使用 AWS AppSync 进行移动开发 Android iOS 但我不确定其离线功能 根据文档 数据将在离线时访问 并在客户端再次上线时自动同步 但我找不到任何有关应用程序客户端在使用 AppSync 创建和修改离线数据之前是否需要
  • 错误的本机调用堆栈

    我在 crashylitics 显示本机崩溃的正确调用堆栈时遇到问题 它以前可以工作 但现在调用堆栈要么没有意义 要么名称丢失 我已通过查看 crashylitics 日志文件来确保符号正在上传 那里一切看起来都很好 我进行了一次崩溃测试
  • 如何从 Android 中的 DatePicker 小部件获取日期?

    I use a DatePickerAndroid中的小部件供用户设置日期 并希望在单击确认按钮时获取日期值 我该怎么做 尝试这个 DatePicker datePicker DatePicker findViewById R id dat
  • 如何在 Google Analytics v4 崩溃报告中为未捕获的异常创建详细的堆栈跟踪?

    默认情况下 Google Analytics 仅在其崩溃报告中报告未捕获异常的顶行 请参阅此中的第一张图片 博客文章 http dandar3 blogspot nl 2013 03 google analytics easytracker
  • “您的 APP_BUILD_SCRIPT 指向未知文件:./jni/Android.mk”

    我搜索了整个网络 我认为 不管它说了什么 我尝试过 但仍然没有运气 不工作 我在cygwin和windows下都测试了它这是我的项目文件 目录 D Java 2 workspace indigo JniTest classpath D Ja
  • 如何在Android中绘制钟形曲线?

    我正在尝试在 Android 中绘制钟形曲线 正态分布 我使用这个方程 自己增加x轴并获得相对于x轴的y轴坐标 for int i 0 i lt 1000 i x float i 0 5 yy float 1 Math sqrt 0 5 M
  • 在 Android 中使用 lambdaj

    有人尝试过在android开发中使用lambdaj库吗 当我创建一个简单的小型java应用程序时 它对我来说工作得很好 但我无法在android应用程序中使用它 UPDATE 我正在添加 lambdaj lambdaj 2 3 2 with
  • 在 AChartEngine 中单击时突出显示饼图切片

    我想在用户单击时突出显示 更改颜色 饼图特定切片 我可以在示例 下面的代码 中发现可以显示切片的索引和确切的点 但是给切片重新着色怎么样 mChartView setOnClickListener new View OnClickListe
  • 如何限制 Android 设备网络速度以进行测试

    我正在测试一个 Android 应用程序 该应用程序在低质量网络上管理其内容时遇到一些问题 我无法验证问题是否仍然存在 因为以我家的网络速度 120mb s 在我设法开始复制路线之前 所有内容都已经下载完毕 在这种情况下 不能选择使用 An
  • Android 中每个 dex 文件的方法限制为 64K

    我遇到了这个问题java lang IllegalArgumentException method ID not in 0 0xffff 65536我决定从 dex 文件中排除一些方法 我的 gradle build compile com
  • 如何迭代SparseArray?

    有没有办法迭代 Java SparseArray 适用于 Android 我用了sparsearray通过索引轻松获取值 我找不到 看来我找到了解决方案 我没有正确注意到keyAt index 功能 所以我会这样做 for int i 0
  • Handler.removeCallbacksAndMessages(null) 和主循环

    在片段的 onDestory 中 我放置了代码来清理我开始使用 Handler postDelayed 的所有挂起的可运行对象 mUiHandler removeCallbacksAndMessages null 我在这里有一个问题 调用
  • androidx Recycler View 匹配约束 (0dp) 与换行内容行为

    我这里有简单的回收器视图 我想要的是 当列表很短时 将按钮粘贴到回收器视图下方 当列表很长时 将按钮粘在屏幕底部 但回收器视图正确换行并且能够滚动到底部
  • 如何从停止的地方开始播放视频

    我正在使用 VideoView 来播放视频 如果我退出应用程序 在返回应用程序 即在 onResume 中 时 它应该从停止的位置播放视频 要获取当前进度 在 onPause 中检查 long progress mVideoView get
  • KeyboardAvoidingView“行为”中的高度与位置与填充

    KeyboardAvoidingView 中有一个 行为 属性 例如 import KeyboardAvoidingView from react native

随机推荐

  • 【MQTT】mqtt 3.1.1 和 5.0的区别

    MQTT Message Queuing Telemetry Transport 是一种轻量级的消息传递协议 用于在物联网 IoT 设备之间进行通信 MQTT有不同的版本 其中最常见的是3 1 1和5 0 下面是它们之间的主要区别 连接过程
  • PowerDesigner逆向工程导入MYSQL数据库

    由于日常数据建模经常使用PowerDesigner 使用逆向工程能更加快速的生成模型提高效率 所以总结使用如下 1 安装MYSQL的ODBC驱动 Connector ODBC 5 1 10 下载地址 http dev mysql com d
  • list容器的使用方法

    本文出自 https msdn microsoft com zh cn library 802d66bt aspx list 类 Visual Studio 2015 其他版本 若要了解有关 Visual Studio 2017 RC 的最
  • 编程求解字符串中每个字母出现的次数

    统计在tt字符中 a 到 z 26各字母各自出现的次数 并依次放在pp所指的数组中 include
  • UE设计师

    岗位职责 1 负责互联网的交互设计工作 分析用户的操作习惯和偏好 并设计交互流程 内容及界面 2 完成界面交互行为和功能的改良 提高网站的易用性 3 根据需求和用户研究结果 完成界面的 流程设计和页面设计 4 对现有产品的可用测试和评估 提
  • 盒子模型,box-sizing (conent-box,boder-box)

    a 伪类的使用css设置的盒子宽度仅仅是内容区的宽度 而非盒子的宽度 高度同理 真正盒子的宽度 需要加上一些其他的属性 盒子的宽度 padding border width 盒子的高度 padding border width b css3
  • 大M法的python编程求解和python包求解

    大M法的python编程求解和python包求解 一 大M算法的求解步骤讲解 二 python编程求解 三 利用python包scipy的优化包optimize 四 用excel求解 五 分析结果 一 大M算法的求解步骤讲解 单纯形法的步骤
  • 2023年6月19日--6月25日(上班熟悉公司代码,下班进行渲染,本周20小时,共2159小时,剩7841小时)

    目前四处透风的感觉 按下葫芦浮起瓢 公司代码还没有熟悉完 幸亏时间充足 可以一边调试一边抄 控制在上班时间应该没问题 渲染这边比较头晕 没人能告诉我 怎么做是正确的 早上先看看洛克人的玻璃材质教程 再看下光线追踪的视频教程 晚上也要抄下fi
  • java正则表达式验证金额

    String reg money d d 1 2 金额正则 可以没有小数 小数最多不超过两位 Pattern pattern Pattern compile reg money Matcher matcher pattern matcher
  • Python 24.opencv 多对象模板匹配

    import cv2 import numpy as np img rgb cv2 imread mali PNG img rgb COPY img rgb img gray cv2 cvtColor img rgb cv2 COLOR B
  • 小甲鱼《C++快速入门》第11集作业

    第一次写博客 一起学习 一起成长 有什么不对的地方望能指正 题目要求 1 定义一个机构 至少存储 姓名 身份证号 性别 2 实现文件存储 3 可以打印到屏幕 代码如下 include
  • ORACLE递归统计所有子孙机构!

    select bid from t branch c start with c upbid 11000000 connect by prior c bid c upbid 说明 1 统计某个机构下所有的子孙机构 如统计北京机构下的子孙机构
  • Web自动化测试03:Selenium安装配置,详细教程

    系列文章目录 软件测试功能到自动化学习路线图 2022年最新版技术栈 软件测试01 从了解测试岗位职能和测试流程开始 附作业 软件测试02 6大实际案例手把手教你设计测试点 软件测试03 用例执行以及缺陷管理的学习 附禅道下载使用流程 软件
  • 【Linux搭建专题】mysql——分片代理——SharingProxy

    SharingProxy 基本知识 固定分区 事先设定一个比较大的库基数 但是这些库可以部署在同一个物理机上 这样即使未来需要扩展物理机也不需要做过多的数据迁移 当物理机扩展时 原有分片规则不变 直接将库指向远程机而非本地的机的库即可 分库
  • js性能优化之Timeline

    有时候 我们就是会不由自主地写出一些低效的代码 严重影响页面运行的效率 或者我们接手的项目中 前人写出来的代码千奇百怪 比如为了一个 Canvas 特效需要同时绘制 600 个三角形 又比如 Coding net 的任务中心需要同时 wat
  • javaseday补充16(迭代器 集合框架list有hasNext set去重无序 )

    import java util ArrayList import java util Collection import java util Iterator public class Test04 public static void
  • 岛屿的个数

    给一个01矩阵 求不同的岛屿的个数 0代表海 1代表岛 如果两个1相邻 那么这两个1属于同一个岛 我们只考虑上下左右为相邻 样例 在矩阵 1 1 0 0 0 0 1 0 0 1 0 0 0 1 1 0 0 0 0 0 0 0 0 0 1 中
  • QML中使用 VLC-Qt 播放网络视频流(附实例)

    VLC Qt库 一个在libVLC基础上结合了Qt框架的开源库 它提供了媒体播放的视频 音频处理控制的核心类 并提供基于QWidget和QML的GUI框架 QWidget中使用VLC方法见我博文 Qt 中使用 VLC Qt 播放网络视频流
  • Metashape/PhotoScan2.02中文版下载安装教程

    Metashape 前身为PhotoScan 是一款由Agisoft开发的专业的3D重建软件 它能够根据照片生成高质量的三维模型 广泛应用于地理信息 测绘 建筑 游戏开发和虚拟现实等领域 本文将详细介绍Metashape的下载和安装过程 下
  • 主流安卓APP都中招了!“应用克隆漏洞”的快速检测修复方案

    2018年1月9日 国家信息安全漏洞共享平台发布了关于Android平台WebView控件存在跨域访问高危漏洞的安全公告 漏洞描述 攻击者利用该漏洞 可远程获取用户隐私数据 包括手机应用数据 照片 文档等敏感信息 还可窃取用户登录凭证 在受