软考-信息安全-移动应用安全需求分析与安全保护工程
25.1 移动应用安全威胁与需求分析
- 首先阐述移动应用系统的组成,然后分析移动应用面临的安全威胁。
25.1.1 移动应用系统组成
- 基本组成主要包括三个部分:
- 一是移动应用简称App
- 二是通信网络,包括无线网络,移动通信网络及互联网
- 三是应用服务端,由相关的服务器构成,负责处理来自App的相关信息或数据。
25.1.2 移动应用安全分析
- 1.移动操作系统平台安全威胁
- 目前,市场上主要的移动操作系统是苹果公司的IOS操作系统与Google公司开源的Android操作系统。
- 2.无线网络攻击
- 攻击者利用移动应用程序依赖的无线网络通信环境或网络服务的安全隐患,实施通信内容监听,假冒基站,网络域名欺诈,网络钓鱼等攻击活动。
- 移动应用面临Wifi,蓝牙,NFC等多种无线攻击安全威胁。
- WiFi钓鱼式移动应用安全威胁常见的形式。
- 3.恶意代码
- 常见的恶意代码行为有流氓行为,资费消耗,恶意扣费,隐私窃取,远程控制,诱骗欺诈,系统破坏,恶意传播等。
- 4.移动应用代码逆向工程
- 攻击者通过对移动应用程序的二进制代码进行反编译分析,获取移动应用源代码的关键算法思路或窃取敏感数据。
- 5.移动应用程序非法篡改
- 攻击者利用安全工具,非法篡改移动应用程序,实现恶意的攻击,窃取用户信息。
25.2 Android系统安全与保护机制
- 主要阐述Android系统的组成概况,然后分析Android系统的安全机制。
25.2.1 Android系统组成概要
- Android是一个开源的移动终端操作系统,其系统结构组成共分成Linux内核层(Linux Kernel),系统运行库层(Libraries和Android Runtime),应用程序框架(Application Framework)和应用程序层(Applications)。
- Android系统的基础层安全威胁来自Linux内核攻击。
- 常见的形式有APK重打包(repackaging)更新攻击,诱导下载,提权攻击,远程控制,恶意付费,敏感信息搜集。
25.2.2 Android系统安全机制
- 1.权限声明机制
- 权限声明机制,为操作权限和对象之间设定了一些限制,只有把权限和对象进行绑定,才可以有权操作对象。
- 2.应用程序签名机制
- Android将应用程序打包成.APK文件,应用程序签名机制规定对APK文件进行数字签名,用来标识相应应用程序的开发者和应用程序之间存在信任关系。
- 3.沙箱机制
- 沙箱隔离机制使应用程序和其相应运行的Dalvik虚拟机都运行在独立的Linux进程空间,不与其他应用程序交叉,实现完全隔离。
- 4.网络通信加密
- Android支持使用SSL/TLS协议对网络数据进行传输加密,以防止敏感数据泄露。
- 5.内核安全机制
- Android系统的内核层采用分区和Linux ACL权限控制机制。
25.3 IOS系统安全与保护机制
- 主要阐述IOS系统的组成概况,然后分析IOS系统的安全机制
25.3.1 IOS系统组成概要
- 苹果公司建立以IOS平台为核心的封闭的生态系统,IOS的智能手机操作系统的原名为iPhoneOS,其核心与Mac OSX的核心同样都源自Apple Darwin。
- IOS的系统架构分四个层次:
- 核心操作系统层(Core OS Layer)
- 提供本地认证,安全,外部访问,系统等服务。
- 核心服务层(Core Services Layer)
- 提供给应用所需要的基础的系统服务,如账户,数据存储,网络连接,地理位置,运动框架等。
- 媒体层(Media Layer)
- 提供应用中视听方面的技术。
- 可触摸层(Cocoa Touch Layer)
- 为应用程序开发提供了各种常用的框架并且大部分框架与界面有关,负责用户在IOS设备上的触摸交互操作。
- 核心操作系统层(Core OS Layer)
25.3.2 IOS系统安全机制
- IOS平台的安全架构可以分为硬件,固件,软件
- 1.安全启动链
- IOS平台的安全依赖于启动链的安全,为防止恶意攻击启动过程,IOS启动过程使用的组件要求完整性验证,确保信任传递可控。
- 2.数据保护
- 针对移动设备因丢失或被窃取导致的泄露数据的风险。
- 3.数据的加密与保护机制
- 加解密是耗时耗能源的操作,而IOS内所有用户数据都是强制加密的,加密功能不能关闭。
- 苹果的AES加解密引擎都是硬件级的,位于存储与系统之间的DMA内,所有进出存储的数据都要经过硬件的加密与解密,这样提供了较高的效率与性能。
- 4.地址空间布局随机化
- IOS引入地址空间布局随机化(ASLR)安全保护技术。
- IOS的二进制文件,库文件,动态链接文件,栈和堆内存地址的位置是随机分布的,从而增强抗攻击能力。
- 5.代码签名
- 为防止应用攻击,IOS系统要求所有可执行程序必须使用苹果公司发放的证书签名。
- 6.沙箱机制
- IOS为限制恶意代码执行所造成的破坏,提供IOS沙箱机制,通过沙箱机制,可限制进程的恶意行为。
25.4 移动应用安全保护机制与技术方案
- 阐述移动应用App的安全风险,安全加固措施及安全检测方法。
25.4.1 移动应用App安全风险
- 移动应用App安装在用户的智能设备上(通常为智能手机),很容易遭受到反编译,调试,篡改,数据窃取等安全威胁。
25.4.2 移动应用App安全加固
- 通常采用防反编译,防调试,防篡改,防窃取等多种安全保护措施。
- 1.防反编译
- 对移动应用程序文件进行加密处理,防止攻击者通过静态的反编译工具,获取到应用的源代码。
- 2.防调试
- 为防止应用程序动态调试,应用程序设置调试检测功能,以触发反调试安全保护措施。
- 例如:清理用户数据,报告程序所在设备的情况,禁止使用某些功能甚至直接退出运行。
- 3.防篡改
- 通过数字签名的多重校验的防护手段,验证移动应用程序的完整性,防范移动应用程序APK被二次打包以及盗版。
- 4.防窃取
- 对移动应用相关的本地数据文件,网络通信等进行加密,防止数据被窃取。
- 国内App安全加固商用工具有腾讯乐固,360加固,梆梆加固。
- 免费的有ProGuard
25.4.3 移动应用App安全检测
- 检测内容:
- 身份认证机制检测
- 通信会话安全机制检测
- 敏感信息保护机制检测
- 日志安全策略检测
- 交易流程安全机制检测
- 服务端鉴权机制检测
- 访问控制机制检测
- 数据防篡改能力检测
- 防 SQL 注入能力检测
- 防钓鱼安全能力检测
- App 安全漏洞检测
- 检测工具
- 进程注入工具 Inject
- HijackActivity 劫持检测工具
- Jeb 静态逆向分析工具
- APK 反编译工具 apktool
- 抓包工具 Tcpdump/Wireshark
- Android Hook 框架 Xposed
- 分析工具 Burpsuite
- 静态分析工具 Androguard
- 逆向工具 Android Killer
25.5 移动应用安全综合应用案例分析
25.5.1 金融移动安全
- 1.实施移动App安全开发管理
- 2.移动App网络通信内容安全加密保护
- 3.移动App安全加固
- 4.移动App安全测评
- 参考《电子银行业务管理办法》《电子银行安全评估指引》《中国金融移动支付 客户端技术规范》《中国金融移动支付 应用安全规范》
- 5.移动App安全监测
25.5.2 运营移动安全
- 账号,密码窃取
- 漏洞利用
- 恶意代码
- 数据窃取
- 恶意刷量,刷单
- 拒绝服务攻击
- 计费SDK破解
- 钓鱼攻击
- 社工库诈骗
25.5.3 移动办公安全
- 设备丢失
- 信息泄露
- 恶意攻击
- 共享访问
- WiFi监听
迷茫的人生,需要不断努力,才能看清远方模糊的志向!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
2020-08-11 Vulnhub-靶机-Tr0ll: 3
2020-08-11 sqlmap从入门到精通-第七章-7-6 绕过WAF脚本-commalessmid.py&commentbeforeparentheses.py