iOS应用安全-专栏总目录(持续更新)

引言

欢迎大家来到#公众号:iOS逆向的《iOS应用安全》专栏

本文列出学习大纲,同时也可作为大家学习《iOS应用安全》专栏的索引。
文中的蓝字都是超级链接,点击进入即可

  • 本专栏的整体大纲模块

1、网络加密传输及安全优化:1.1、报文签名 1.2、SSL证书验证, Charles再也无法抓你的请求数据;1.3、不走全局proxy的方案;1.4、允许不验证SSL证书;1.5、拦截请求;1.6、DoH &DoT 1.7、SDL;
2、动态保护
3、代码混淆
4、敏感逻辑的保护方案、敏感iOS逆向:【代码混淆】1、基于编译器混淆静态库(StaticLib)2、字符串加密:使用clang-c接口将源代码转换成抽象语法树,并对抽象语法树进行遍历和分析,分析代码中的字符串,并进行加密处理。

II 敏感逻辑的保护方案

III 接口安全(网络加密传输)

在使用NSURLSession时敏感的数据采用ephemeralSessionConfiguration配置,与默认配置相比,这个配置不会将缓存、cookie等存在本地,只会存储在内存里,所以当程序退出时,所有的数据都会消失。

 AFSecurityPolicy *securityPolicy = [AFSecurityPolicy defaultPolicy]; securityPolicy.validatesDomainName = NO; securityPolicy.allowInvalidCertificates = YES; manager.securityPolicy = securityPolicy;   

3.1 接口安全设计的Checklist

  • 调用方来源IP控制

比如可通过防火墙、主机host deny、Nginx deny等技术措施进行实施

  • 调用方身份认证

比如key、secret、证书等技术措施进行实施

  • 调用参数认证

需设计参数容错机制,避免出现参数可遍历敏感数据安全问题

  • 采用数字签名保障接口身份来源可信,数据防篡改
  • 调用方权限控制设置

  • 调用频率、有效期进行控制

  • 调用行为实时检测,对异常阻拦

  • 幂等性校验,保持数据一致性

  • 采用应用接入安全网关,实现APPID/KEY身份认证,加密传输,摘要签名安全保障

版权声明:玥玥 发表于 2021-04-10 5:21:41。
转载请注明:iOS应用安全-专栏总目录(持续更新) | 女黑客导航