一、概念 1、移动终端的概念:
可移动的,以软件为基础使得设备具备特定功能的设备。
如手机、智能手表、电脑、POS机等
Android、IOS、Windows Phone
3、安全开发技术
应用组件开发安全
Activity、Service、Content Provider、Broadcast、Receiver等组件都可以通过隐式的方式打开,只要不是对外公开的,必须在AnfroidManifest里面注明exported为falsed,禁止其他程序访问组件,同时应当添加访问权限,还需要对传递的数据进行安全检验。
应用权限控制
也就是通过控制应用程序只可具备一定的权限。
应用程序签名
采用数字签名为应用程序签名。
应用加固
防病毒、防调试、防注入、防篡改
静态代码分析
通过静态代码分析工具lint监测安全隐患,对代码进行优化。
数据存储加密
如利用SQLCipher加密
移动运营商
黑客
开发者
用户自身
攻击途径漏洞
恶意代码
威胁来源的核心点不同移动智能终端的发展模式使得面临的安全威胁程度不一。一共有三种终端发展方式:
1、封闭端到端,如苹果
2、半封闭的如Windows phone
3、开放开源如android
封闭的管理模式,厂商的行为监管不到位将会导致一定的危险性;开放式的管理又具备一定的威胁。
系统漏洞
Android、IOS系统漏洞,如继承来自linux内核的漏洞、Android组件漏洞
应用软件漏洞
如不安全的开发
其他漏洞如硬件漏洞、协议漏洞
如TCP连接漏洞
攻击者构建本身完全为恶意代码的移动恶意软件,或者重新打包APK以插入恶意代码。
2、安全威胁类型与产生的原因 类型 恶意代码的威胁案例如RottenSys,其运行架构如下:
1、root提权漏洞
2、组件漏洞
3、应用程序漏洞
一个操作系统软件的类似供应链由很多厂商合作完成;
更新问题。
1)远程攻击面:ADB、SSH、WEB服务等远程服务攻击点
2)物理相邻:GPS、蓝牙、NFC等物理临近攻击点
3)本地攻击面:本机的系统威胁
4)物理攻击面:USB、SIM卡、HDMI等
(1)应用程序沙箱,实现应用程序之间的隔离
(2)应用程序签名,保证APP完整性和更新保护
(3)身份验证,通过身份验证把关加密密钥
(4)生物识别解锁
(5)Keystore硬件支持的密钥管理服务
(6)Trustzone硬件隔离技术
(7)对文件等数据进行加密
(8)权限机制
(1)漏洞挖掘:Fuzzing、污点分析
(2)漏洞检测
(3)漏洞修复
(4)漏洞利用的缓解机制:DEP、ASLR等
应用程序权限声明机制
应用程序签名机制
进程沙箱机制
进程之间的通讯机制
访问控制机制
恶意代码威胁异常检测技术:防火墙、网络隔离
误用检测技术:
完整性技术:校验和、签名验证
权限控制技术:沙箱技术、安全操作系统
三、移动终端应用程序安全攻击面架构:
产生原因开发门槛低
第三方库多样
应用重打包
第三方市场监管不力
防御方案提高开发人员的安全意识
加强第三方市场的监管
应用加固
1、组件安全 2、缓冲区溢出 3、数据库配置模式 4、浏览器同源策略漏洞 参考文献《软件安全原理》——陈恺
转载请说出处 from 信安科研人