0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

移动应用隐私合规检测简介及目标检测技术的应用

科技怪授 来源:科技怪授 作者:科技怪授 2022-10-13 09:09 次阅读

1 移动应用隐私合规检测背景简介

移动应用的隐私合规检测,从技术形态上可以分为静态检测方案与动态检测方案。以下分别作简要介绍。

1.1 静态检测

静态检测方案通过对移动应用的安装包进行反编译,进而通过静态数据流、控制流分析等技术,检测移动应用中可能存在的隐私泄露问题。在该领域中,常用到以下工具:

• Apktool [1]: 反编译安卓Apk,可以反编译资源,并在进行修改之后重新打包Apk

• dex2jar [2]: 将Apk反编译成Java源码(classes.dex转化成jar文件)

• Soot [3]:Soot最初是Java优化框架,发展至今已广泛应用于分析优化和可视化Java和Android应用程序。

• Flowdroid [4]: 基于IFDS算法实现的针对Android的静态污点分析框架

利用上述工具,开发者可以制定相应的规范检测项,从而检测到应用中存在的隐私泄露隐患。

1.2 动态检测

动态检测方案通过运行待检测应用于真实手机或者模拟器沙箱,通过监控移动应用对系统内敏感资源的访问,结合移动应用的隐私政策声明分析,检测移动应用是否包含隐私违规行为。应用运行则可以由人工进行或者UI自动化。

1.2.1 敏感行为监测

运行时敏感行监测实时监控应用对用户隐私敏感数据的访问。在实现上分为两种:一种是直接在源码中添加监控代码。如在AOSP代码中的getLastLocation中直接添加代码,记录API访问行为。另一种则是通过hook方案,不直接修改源码,而是在系统运行APP时添加逻辑钩子,在APP调用特定敏感API时,先跳转至hook函数,最后再返回调用原敏感API。其中,hook函数负责记录应用的API访问行为。

1.2.2 UI自动化

移动应用自动化即通过程序控制移动应用UI交互。该领域典型的工具有: monkey [5],进行UI界面随机点击以及系统级事件。第三方UI自动化工具:uiautomator2 [6]和AndroidViewClient [7], 基于系统工具uiautomator实现,能够实现基本的自动化UI测试功能编程

2 目标检测技术在隐私合规检测领域的应用

深度学习中的目标检测,主要用于在视图中检测出物体的类别和位置,如下图所示。目前业界主要有YOLO [7],SSD [8]和RCNN [9]三类深度学习算法。

image.png

以Faster RCNN为例,该算法是RCNN算法的演进。在结构上,Faster RCNN将特征抽取(feature extraction),proposal提取,bounding box regression(rect refine),classification都整合在了一个网络中,使得综合性能有较大提高,在检测速度方面尤为明显。Faster RCNN主要分为4个主要内容:

  1. Conv layers。作为一种CNN网络目标检测方法,Faster RCNN首先使用一组基础的conv+relu+pooling层提取image的feature maps。该feature maps被共享用于后续RPN层和全连接层。
  2. Region Proposal Networks。RPN网络用于生成region proposals。该层通过softmax判断anchors属于positive或者negative,再利用bounding box regression修正anchors获得精确的proposals。
  3. Roi Pooling。该层收集输入的feature maps和proposals,综合这些信息后提取proposal feature maps,送入后续全连接层判定目标类别。
  4. Classification。利用proposal feature maps计算proposal的类别,同时再次bounding box regression获得检测框最终的精确位置。

image.png

2.1 应用点

在UI自动化中,常常存在基于uiautomator的工具无法识别的UI布局。主要有两种原因导致这种情况:1、UI内容由整张图片渲染而成;2、UI控件原因,某些用户编写的UI控件没有支持无障碍服务,导致uiautomator无法获取UI布局。此时,使用UI图片目标识别,可以判断可点击的有效区域。

image.png

.jpg)

如上图所示,在Sechunter的UI自动化中,我们需要获取应用的隐私声明文件链接,以及相应的“同意”、“不同意”的位置。在uiautomator无法获得UI布局的情况下,可以进行目标识别,通过图像获得可点击位置,从而推进UI自动化测试的继续执行。

2.2 目标检测技术的应用

在模型训练中,主要困难在于数据集收集。Sechunter的解决方案是,先通过传统的图片处理方案获取初步的数据集,这里我们使用了图片处理领域的显著区域识别。这个过程的关键是要有一个验证模块,对隐私声明链接而言,即验证该区域点击跳转后内容的确是隐私声明。我们使用了LDA主题模型来判断文本内容是否是隐私政策。通过验证的样本都收纳到数据集中,然后用这些标注数据进行第一版的目标识别模型训练。

训练出来的模型只是利用传统图像处理能够识别成功的图片进行学习。对于不成功的图片,我们进一步使用OCR。OCR能够识别出图像中的文字内容及其位置。结合第一阶段的目标识别模型进行结果融合,可以得到更为精确的可点击区域结果,并且这个时候的融合方案已经初步可以使用了。随着数据集的积累,目标检测模型的检测结果也变得更精确。最终能够只使用目标识别方案。

3 小结

移动应用隐私合规检测对保护个人信息安全有着重要作用。但目前市场上的工具自动化检测能力普遍都还比较有限。Sechunter在自动化隐私合规检测领域做了一些积极探索,进行了众多跨领域技术调研,本文介绍的目标识别技术能够帮助自动化工具更快更准地识别UI可点击区域。
审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 移动应用
    +关注

    关注

    0

    文章

    62

    浏览量

    15462
  • 目标检测
    +关注

    关注

    0

    文章

    185

    浏览量

    15454
收藏 人收藏

    评论

    相关推荐

    AI驱动的雷达目标检测:前沿技术与实现策略

    传统的雷达目标检测方法,主要围绕雷达回波信号的统计特性进行建模,进而在噪声和杂波的背景下对目标存在与否进行判决,常用的典型算法如似然比检测(LRT)、
    发表于 03-01 12:26 421次阅读
    AI驱动的雷达<b class='flag-5'>目标</b><b class='flag-5'>检测</b>:前沿<b class='flag-5'>技术</b>与实现策略

    巍泰技术毫米波雷达如何助力道路车辆预警?静态目标检测是关键

    毫米波雷达可以识别静态目标,但在某些应用场景下,为了防止功能误触,会滤除静止目标的特征。然而,在车辆预警的实际应用中,静态目标检测十分必要。目前用于雾天安全行车诱导的车辆
    的头像 发表于 02-27 15:59 577次阅读
    巍泰<b class='flag-5'>技术</b>毫米波雷达如何助力道路车辆预警?静态<b class='flag-5'>目标</b><b class='flag-5'>检测</b>是关键

    如何搞定自动驾驶3D目标检测

    可用于自动驾驶场景下基于图像的3D目标检测的数据集总结。其中一些数据集包括多个任务,这里只报告了3D检测基准(例如KITTI 3D发布了超过40K的图像,其中约15K用于3D检测)。
    发表于 01-05 10:43 152次阅读
    如何搞定自动驾驶3D<b class='flag-5'>目标</b><b class='flag-5'>检测</b>!

    毫米波雷达模块的目标检测与跟踪

    毫米波雷达技术目标检测与跟踪方面具有独特的优势,其高精度、不受光照影响等特点使其在汽车、军事、工业等领域广泛应用。本文深入探讨毫米波雷达模块在目标
    的头像 发表于 11-14 15:50 293次阅读

    海基红外搜索和跟踪的区域自适应杂波抑制的小红外目标检测系统技术介绍

    由于目标信号小而暗淡,远程小目标检测相当困难。通过降低检测阈值可以实现检测率的标准。另一方面,由于背景混乱,这种简单的方法会导致错误
    的头像 发表于 08-30 15:28 873次阅读
    海基红外搜索和跟踪的区域自适应杂波抑制的小红外<b class='flag-5'>目标</b><b class='flag-5'>检测</b>系统<b class='flag-5'>技术</b>介绍

    MATLAB的行人目标检测的方法有哪些?

    MATLAB的行人目标检测的方法有哪些,就是主要的方法,基于背景的,基于目标的,还有其他的。都有哪些?
    发表于 08-23 16:30

    目标检测的后处理:NMS vs WBF

    和图像识别。计算机视觉的主要挑战之一是目标检测,它涉及识别和定位图像和视频中的目标。为了提高目标检测系统的性能,研究人员和从业者开发了各种
    的头像 发表于 07-31 23:44 613次阅读
    <b class='flag-5'>目标</b><b class='flag-5'>检测</b>的后处理:NMS vs WBF

    目标检测的后处理:NMS vs WBF

    自动驾驶汽车、监控系统和图像识别。计算机视觉的主要挑战之一是目标检测,它涉及识别和定位图像和视频中的目标。为了提高目标检测系统的性能,研究人
    的头像 发表于 07-26 10:25 441次阅读
    <b class='flag-5'>目标</b><b class='flag-5'>检测</b>的后处理:NMS vs WBF

    目标检测EDA方法有哪些 eda和pcb的区别

    目标检测(Object Detection)是计算机视觉领域中的重要任务,用于在图像或视频中定位和识别出多个感兴趣的对象。EDA(Enhancement, Detection, and Augmentation)方法是一种综合的目标
    发表于 07-20 14:43 917次阅读

    无Anchor的目标检测算法边框回归策略

    导读 本文主要讲述:1.无Anchor的目标检测算法:YOLOv1,CenterNet,CornerNet的边框回归策略;2.有Anchor的目标检测算法:SSD,YOLOv2,Fas
    的头像 发表于 07-17 11:17 608次阅读
    无Anchor的<b class='flag-5'>目标</b><b class='flag-5'>检测</b>算法边框回归策略

    如何区分图像分类和目标检测技术

    目标检测的问题定义是确定目标在给定图像中的位置,如目标定位,以及每个目标属于哪个类别,即目标分类
    发表于 07-11 12:50 348次阅读

    如何学习基于Tansformer的目标检测算法

    视觉感知算法的核心在于精准实时地感知周围环境,以便下游更好地进行决策规划,而 目标检测任务 就是视觉感知的 基础 。不仅在自动驾驶领域,在机器人导航、工业检测、视频监控等领域,目标
    的头像 发表于 06-25 10:37 399次阅读
    如何学习基于Tansformer的<b class='flag-5'>目标</b><b class='flag-5'>检测</b>算法

    常用的电流检测技术

    简介 电流检测技术常用于高压短路保护、电机控制、DC/DC换流器、系统功耗管理、二次电池的电流管理、蓄电池管理等电流检测等场景。对于大部分应用,都是通过间接测量电阻两端的压降来获取待测
    的头像 发表于 06-22 10:24 1615次阅读
    常用的电流<b class='flag-5'>检测</b><b class='flag-5'>技术</b>

    全面介绍小目标检测的各种解决方案

    目标检测广义是指在图像中检测和识别尺寸较小、面积较小的目标物体。通常来说,小目标的定义取决于具体的应用场景,但一般可以认为小
    发表于 06-19 12:32 2474次阅读
    全面介绍小<b class='flag-5'>目标</b><b class='flag-5'>检测</b>的各种解决方案

    目标检测的相关知识

    目标检测共有以下四个核心问题:(1)目标可能出现在图像的任何位置;(2)目标有各种不同的大小;(3)目标有各种不同的形状;(4)光照、遮挡等
    的头像 发表于 05-22 09:43 912次阅读
    <b class='flag-5'>目标</b><b class='flag-5'>检测</b>的相关知识