常见APP攻击方法 以及防御方法介绍(移动安全)

news2025/7/21 0:38:54

一、常见APP攻击风险以及防御方法介绍

二、APP攻击以及防御方法 案例讲解

1、基于组件攻击 - 应用劫持

用户打开安卓手机上的某一应用,这时,恶意软件侦测到用户的这一动作,如果立即弹出一个与该应用类似的界面,拦截了合法的应用,用户几乎无法察觉,该用户接下输入账号、卡密什么的 其实是在恶意软件上进行的,接下来会发生什么就可想而知了。

原理剖析:

1、恶意应用监听了受害者应用的启动操作,然后弹出UI界面覆盖受害者,让用户误以为是目标应用的窗口,进而冒充盗取用户账号密码、卡密等操作

2、另一种情况是此设备系统组件存在漏洞,被恶意应用利用,导致任务堆栈紊乱

防范建议:

1、及时更新android系统,包括系统补丁更新

2、目前,还没有什么专门针对Activity劫持的防护方法,因为,这种攻击是用户层面上的,目前还无法从代码层面上根除。 但是,我们可以适当地在APP中给用户一些警示信息,提示用户其登陆界面以被覆盖,并给出覆盖正常Activity的类名

为了减少误报可以增加对白名单包名、锁屏操作行为、判断当前是否在桌面等来减少误报率

2、基于数据攻击 - 二次打包攻击 广告植入

有数据表明,遭遇二次打包的APP就包括支付宝、微信、美团、京东、淘宝等知名应用。APP二次打包的危害涉及到开发者、用户、市场等许多方面,造成开发者权益受损,知识产权被剽窃;用户财产损失、隐私泄露;应用市场体验变差,令人诟病

原理剖析:

1、应用进行签名保护、完整性保护

防范建议:

1、启动时进行签名校验、完整性校验

2、尽可能使用APK加固保护

3、基于设备攻击 - 人机接口爆破锁屏密码

原理剖析:

通过模拟输入设备或adb调试可以对设备进行自动点击、输入等,然后利用设备对pin输入无重试次数限制的缺陷进行密码爆破

防范建议:

1、Pin输入错误多次后应限制重试时间

2、Pin输入时应该禁用辅助功能、adb调试等特性,对输入设备也应做安全识别

其他的例子:

常见的就是物理外挂、硬件焊接、各种无线电信号的监听(重放)等,比如 王者荣耀物理外挂、switch游戏机 短解破解、破解 汽车 无钥匙进入(无线电录制和重放攻击)

4、基于设备攻击 - 人机接口爆破锁屏密码

原理剖析:

android系统的开放性,决定了其漏洞发现和利用会相较其他闭源系统更加频繁。 如果设备没有及时更新安全补丁,就有可能面临已知的、公开的系统漏洞攻击。

这个视频展示的就是基于“Android Binder驱动的Use-After-Free漏洞攻击”,并成功root Pixel 2设备(EOP)。 android安全补丁时间低于2019-10-01的设备极大可能性存在此漏洞。

防范建议:

1、及时更新Android系统补丁能有效抵御已知系统漏洞攻击

5、基于业务攻击 - 利用设计缺陷,绕过限制

生活中有很多撸羊毛的例子,基本都是基于业务设计或实施缺陷、逻辑漏洞进行的

原理剖析:

1、产品设计时没有全面考虑到用户习惯以及 异常情况

2、缺乏对异常情况的监控、识别和判断

防范建议:

1、产品设计除了考虑普通用户习性之外,还应考虑对异常情况的防范、识别、处置

2、当异常长期存在,应有报警和处置手段

6、基于组件攻击 - XPOSED破解某软件收费

原理剖析:

1、App未混淆、未加壳,使用逆向工具可以对程序反编译,代码可以高度还原

2、App运行时未进行环境安全检测,相关业务对VIP识别过于简单,使用xposed、frida可以随意修改、调试,进而破解业务收费

防范建议:

1、App需要进行混淆,必要时进行加壳(加固)

2、涉及敏感业务,运行时需要对终端环境进行安全检查 3、业务设计上不要过多依赖设备端安全,尽可能在服务端做业务校验

三、工具分享

1、逆向/反编译  工具

dex文件反编译工具 dexdump、smali.jar/baksmali、dex2jar等

class字节码反编译工具 jd-gui、jd-cmd、jad等

逆向分析工具 IDA Pro、jdb、gdb、class-dump-z、Clutch、introspy、Cycript等

综合逆向工具 APKTool、Xposed、Frida等

协议抓包工具 Wireshark、 fiddler等

2、制作工具

录屏工具https://github.com/MathewSachin/Captura

录屏工具依赖ffmpeg https://github.com/BtbN/FFmpeg-Builds/releases

android设备投屏到电脑 https://github.com/Genymobile/scrcpy/releases

录屏转gif  https://github.com/NickeManarin/ScreenToGif

视频剪辑工具  必剪-让创作更有趣

-------------------

以上实例配有视频,如需要,请打赏后私聊~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/35764.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

logcat日志文件分析

3:显示时间戳日志 adb logcat -v time > d:\文件\log.txt 日志文件分析 输出的日志格式由5部分组成 1:写下日志的时间 2:优先级,日志优先级从低到高分以下几种 v -verbose 最低级别,开发调试中的一些详细信息,仅在开发中使用&#…

动静分离LNMP

目录 安装LNMP 搭建wordpress 搭建WeCenter 根据需求实现动静分离,当客户端访问nginx网站服务时,静态网页nginx本机反馈,动态网页访问PHP,所以需要在nginx服务器中部署论坛后需要拷贝到PHP服务器中。但是如果有NFS或GFS服务器时可…

【数据结构】堆的实现(简单易懂,超级详细!!!)

目录 1、堆的概念及结构 概念 规律 2、堆的实现 2.1结构设计 2.2接口实现 2.3 初始化 2.4堆的向下调整算法 主要思想 涉及问题 代码实现 2.5建堆 思想 代码实现 建堆的时间复杂度 2.6 堆的向上调整算法 主要思想 ​涉及问题 代码实现 2.7 插入 2.8删除…

【HDU No. 2586】 树上距离 How far away ?

【HDU No. 2586】 树上距离 How far away ? 杭电 OJ 题目地址 【题意】 有n 栋房屋,由一些双向道路连接起来。 每两栋房屋之间都有一条独特的简单道路(“简单”意味着不可以通过两条道路去一个地方)。人们每天总是喜欢这样问&a…

CUDA——向量化内存

许多 CUDA 内核受带宽限制,新硬件中触发器与带宽的比率增加导致更多带宽受限内核。 这使得采取措施缓解代码中的带宽瓶颈变得非常重要。 在本文中,我将向您展示如何在 CUDA C/C 中使用矢量加载和存储来帮助提高带宽利用率,同时减少执行指令的…

【附源码】计算机毕业设计JAVA疫情社区志愿者组织的资源管理平台

【附源码】计算机毕业设计JAVA疫情社区志愿者组织的资源管理平台 目运行 环境项配置: Jdk1.8 Tomcat8.5 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术&#…

Rust权威指南配套手把手笔记

Rust权威指南配套手把手笔记 持续更新ing 共20章,110小节 P1 1.1 - 简介 06:46 P2 1.2 - 安装 Rust 03:18 P3 1.3 - Hello World 04:11 P4 1.4 - Hello Cargo 07:49 P5 2.1 - 猜数游戏:一次猜测 11:47 P6 2.2 - 猜数游戏:生成神秘数字 …

【强化学习论文合集】ICLR-2021 强化学习论文

强化学习(Reinforcement Learning, RL),又称再励学习、评价学习或增强学习,是机器学习的范式和方法论之一,用于描述和解决智能体(agent)在与环境的交互过程中通过学习策略以达成回报最大化或实现特定目标的问题。 本专栏整理了近几年国际顶级会议中,涉及强化学习(Rein…

Grad-CAM

其实还是关于yolo的 利用Grad-CAM解释目标检测框架 研究者研究了视觉物体检测器的可解释性问题。具体来说,研究者在YOLO目标检测器的示例中演示了如何将Grad-CAM集成到模型架构中并分析结果。最后展示了如何计算个体检测的基于归因的解释,并发现结果的归…

Biotin-PEG2-alkyne|紫外线可裂解生物素-二聚乙二醇-炔烃|提供光谱图

试剂基团反应特点(Reagent group reaction characteristics): 紫外线可切割生物素-PEG2-炔烃含有紫外线可切割碎片(containsa UV cleavable Fragemnt),试剂通过点击化学与含叠氮化物的分子反应。点击化学生物素标记试剂包含各种点…

深入浅出PyTorch——PyTorch可视化

1. 可视化网络结构 在复杂的网络结构中确定每一层的输入结构,方便我们在短时间内完成debug 1.1 使用print函数打印模型基础信息 使用ResNet18的结构进行展示 import torchvision.models as models model models.resnet18() print(model)#打印结果 ResNet((conv1)…

算法学习 | 深度优先搜索~一条道走到黑

目录 员工的重要性 图像渲染 岛屿的周长 被围绕的区域 岛屿数量 深度优先搜索(Depth First Search):深度优先搜索属于图算法的一种,其过程主要是对每一个可能的分支路径深入到不能再深入到为止,而且每个节点只能访问一次。深度优先搜…

[毕业设计]机器学习的运动目标跟踪-opencv

目录 前言 课题背景和意义 实现技术思路 第一步:创建单目标追踪器 第二步:读取视频的第一帧 第三步:在第一帧中定位物体 第四步:初始化多目标追踪器 实现效果图样例 前言 📅大四是整个大学期间最忙碌的时光,一边…

leetcode 907. Sum of Subarray Minimums(子数组最小值的和)

所有子数组的最小值求和。 思路: 最容易想到的就是用DFS找出所有子数组,然后每个子数组找最小值,再求和。但显然不是最优的。 因为费尽心思找到了一堆子数组,它们的最小值竟然是相同的, 是不是有种直接用这个最小值乘…

Alkyne-PEG-Biotin,Alk-PEG-Biotin,炔烃-聚乙二醇-生物素试剂供应

英文:Alkyne-PEG-Biotin,Alk-PEG-Biotin 中文:炔烃-聚乙二醇-生物素 CAS编号:N/A 所属分类:Alkyne PEG Biotin PEG 分子量:可定制,生物素-聚乙二醇5-炔烃、生物素-PEG 20-炔烃 、Biotin-PEG…

HCIA 访问控制列表ACL

一、前言 ACL又称访问控制列表,其实这个东西在很多地方都有用,可能名字不太一样但原理和功能都差不太多,比如服务器、防火墙,都有类似的东西,功能其实也就是“过滤”掉不想收到的数据包。为什么不想收到一些数据包呢&…

C++ 测试框架 Gtest学习——qt版本

目录标题一、参考文档二、获取Gtest三、使用(一)qt项目导入Gtest(二)修改pro文件(三)一个简单的例子(四)EXPECT(期望)和ASSERT(断言)介…

ImportError: cannot import name ‘xxx‘ from ‘xxx‘关于python导包的问题

github clone下来的代码,在矩池云跑的好好的,在自己电脑跑却报错。 ImportError: cannot import name ‘helper’ from ‘utils’ (D:\anaconda\envs\TF2.1\lib\site-packages\utils_init_.py) 搜了网上,说加路径 import sys sys.path.appe…

力控关节机器人(关节扭矩传感器力控)

力控机器人本质上属于协作机器人中的一种,其每个关节都带有力矩传感器; [1] 广泛应用在工业、医疗、新零售领域或智能厨房行业。 Franka Emika: 力控机器人每个关节都带有力矩传感器 力矩传感器提供了一种提高机器人力控性能的途径。 更加…

[毕业设计]基于机器视觉的车辆速度检测与识别算法

前言 📅大四是整个大学期间最忙碌的时光,一边要忙着备考或实习为毕业后面临的就业升学做准备,一边要为毕业设计耗费大量精力。近几年各个学校要求的毕设项目越来越难,有不少课题是研究生级别难度的,对本科同学来说是充满挑战。为帮助大家顺利通过和节省时间与精力投…