几维资讯> 行业资讯

iOS 应用安全检测现状浅析

几维安全 2020-06-22 12:00:40  3029
分享到:

一般而言,iOS 系统由于固有的安全限制和严格的应用审核机制,且无法直接反编绎获取应用 码,其安全性理论上高于安卓应用,历史上出现的过一些 iOS 应用漏洞也主要集中在 iOS 越狱环境下,因此在较长时间内,iOS 安全研究主要集中在 iOS 系统安全漏洞挖掘中。但近年来 XcodeGhost、 AFNetworking 框架中间人漏洞以及多个恶意 SDK 曝光也说明了 iOS 应用安全机制仍然存在漏洞,研究 iOS应用安全检测技术对于iOS应用产品的开发者和大规模使用者而言具有显著的必要性。    

由于 iOS 系统的封闭性,目前主要的 iOS 系统应用安全测试工具多为离线工具,接下来浅析两款常见的iOS 离线安全测试工具。

idb 

idb 是一款开源的 iOS App 安全评估工具。 使用 idb 可以查看应用主要信息(应用包名、注册的 URL Schemes、SDK 版本、应用数据文件夹位置、 应用权限等)、数据文件、文件保护级别、应用共享库、系统剪切板、截屏等。idb 提供的安全测试功能则主要包括应用加密测试、应用编绎安全选项测试、应用二进制字符串提取、Class dump、系统证书安装、host 文件编辑、系统日志查看等。     

Needle   

Needle是MWR Labs开发的一个开源iOS安全测试框架,支持开发自定义模块来扩展功能;其预置的主要功能包含对 iOS 应用数据存储、IPC、网络通信、静态代码、hooking 及二进制文件防护等方面的安全审计。Needle提供了一个 shell 界面,基本涵盖了idb 的所有功能,还同时支持Cycript 与 Frida 两个hooking 方案,可以方便的加载 hook 脚本与执行命令。 

几维安全ios应用加固系统是一款针对iOS应用、动态库、静态库项目的安全加密软件,具有防逆向、防篡改和防调试等多项安全功能,能够提高APP的自身安全性,并且符合等保2.0的安全要求;该系统实际为一款经过特殊处理的安全编译器,可以轻松集成到Xcode开发工具中。与普通编译器相似,基于项目工程可将Objective-C、Swift、C、C++等源代码编译成二进制代码,不同之处在于,该系统在编译项目时,能够对代码进行控制流平展、伪造、指令替换等保护处理,并集成动态防御组件,包括反调试、越狱检测、防HOOK、签名校验等功能,极大的提高了应用程序的安全性。从而避免攻击者通过IDAPro等逆向工具反编译SO、Match-O等二进制文件,分析业务代码的执行流程,进一步篡改或窃取核心技术。可帮助中大型企业在通信、支付、算法、核心技术等模块进行安全保护,避免因逆向破解问题对公司造成经济或者名誉上的损失。 

分享到:



《安卓应用加密》 《Unity3D手游加密》 《源代码加密》 《移动端的KiwiVM虚拟机》