iOS开发当中的安全防护框架详解

iOS开发当中的安全防护框架详解_第1张图片
面包会有的,牛奶也会有的,前提是你努力了吗?

话说:“进攻容易!防守艰难?”.
emmm — — — 不存在~
为什么?
唯有谨慎细微,列出多项计划进行择选,不断精进从而推出优秀可行的方案!!!(从不打无准备的仗)
势在必得/成功 = 勤奋辛勤、付出不亚于任何人的努力+灵活多变的脑子+肯吃苦受累(任劳任怨)+ 一定的机遇(运气)
多层的防护网络怎样有效的保护我们iOS应用程序的安全?
一个完善的iOS应用安全防护框架都需要哪些东西呢?
我们梳理一下常见的逆向及攻击工具。

iOS应用逆向常用工具

  • Reveal
  • Cycript
  • Class-dump
  • Keychain-Dumper
  • gdb
  • iNalyzer
  • introspy
  • Fishhook
  • removePIE
  • IDA pro or Hopper
  • snoop-it
  • iDB
  • Charles
  • SSL Kill Switch

裸奔app的安全隐患

一部越狱的iOS设备,外加上述的逆向工具,给裸奔的iOS应用程序带来哪些威胁呢?

  • 任意读写文件系统数据
  • HTTP(S)实时被监测
  • 重新打包ipa
  • 暴露的函数符号
  • 未加密的静态字符
  • 篡改程序逻辑控制流
  • 拦截系统框架API
  • 逆向加密逻辑
  • 跟踪函数调用过程(objc_msgSend)
  • 可见视图的具体实现
  • 伪造设备标识
  • 可用的URL schemes
  • runtime任意方法调用
  • ……

iOS应用安全防护开源工具

  • ios-class-guard 是对抗class-dump的利器,作用是将ObjC类名方法名等重命名为难以理解的字符。

iOS应用安全防护框架概述

针对上述安全隐患,我们的iOS应用安全防护框架需实现的任务大致如下:

  • 防护
    • ObjC类名方法名等重命名为难以理解的字符
    • 加密静态字符串运行时解密
    • 混淆代码使其难于反汇编
    • 本地存储文件防篡改
  • 检测
    • 调试状态检测
    • 越狱环境检测
    • ObjC的Swizzle检测
    • 任意函数的hook检测
    • 指定区域或数据段的校验和检测
  • 自修复
    • 自修复被篡改的数据和代码段

此外,还需要多层的防护,通过高层保护低层的方式来保证整个防护机制不失效。 参考IBM移动终端安全防护框架解决方案:

iOS开发当中的安全防护框架详解_第2张图片
IBM移动终端安全防护框架解决方案

iOS开发当中的安全防护框架详解_第3张图片
风雨无阻,一往无前,为了明天更美好,加油!

扩大圈子,技术交流,学习提升!
(机会永远是留给那些有准备的人)
email
☞☞☞GitHub ☜☜☜<感受下代码>

你可能感兴趣的:(iOS开发当中的安全防护框架详解)