SSL Pining Mode 设置iOS SSL 连接安全
2013-12-19 16:29
357 查看
一:SSL Ping Mode
使用SSL来进行网络通信成为了很多mobile app的默认选择。最近一些文章发现:一些app并没有采用“额外的措施”来保证窃听不可以发生:这个“额外的步骤“就是SSL Pinning。
iOS上SSL连接默认是这样的,client 和server建立一个连接,server返回其 SSL证书。如果这个证书是被OS信任的证书机构签发,那么这个连接就正常进行下去。随后交换session key进行通信。这个关键点就在于“信任“。如果攻击者进行中间人攻击,mobile device很可能也会信任攻击者的证书。一般来说,攻击者不太可能有受信任的证书,所以通常情况下这个问题也不大。
使用SSL Pinning可以消除这个可能。也可能用户本身故意作为攻击者来探查加密的网络流量。可能使用 Charles 或者mitmproxy来安装一个受信任的证书。你的app需要有能力通过SSL Pinning来阻止这种嗅探攻击。
SSL Pinning就是client能够把server的证书和一个已知的server的证书的拷贝做对比,通过把server的SSL 证书捆绑到程序中就可以达到目的。在iOS中可以使用NSURLConnectionDelegate 协议中的connection:willSendRequestForAuthenticationChallenge: 来检查。
二:AFNetworking
AFURLConnectionOperationSSLPinningMode
参考:http://wufawei.com/2013/05/SSL-Pining/
使用SSL来进行网络通信成为了很多mobile app的默认选择。最近一些文章发现:一些app并没有采用“额外的措施”来保证窃听不可以发生:这个“额外的步骤“就是SSL Pinning。
iOS上SSL连接默认是这样的,client 和server建立一个连接,server返回其 SSL证书。如果这个证书是被OS信任的证书机构签发,那么这个连接就正常进行下去。随后交换session key进行通信。这个关键点就在于“信任“。如果攻击者进行中间人攻击,mobile device很可能也会信任攻击者的证书。一般来说,攻击者不太可能有受信任的证书,所以通常情况下这个问题也不大。
使用SSL Pinning可以消除这个可能。也可能用户本身故意作为攻击者来探查加密的网络流量。可能使用 Charles 或者mitmproxy来安装一个受信任的证书。你的app需要有能力通过SSL Pinning来阻止这种嗅探攻击。
SSL Pinning就是client能够把server的证书和一个已知的server的证书的拷贝做对比,通过把server的SSL 证书捆绑到程序中就可以达到目的。在iOS中可以使用NSURLConnectionDelegate 协议中的connection:willSendRequestForAuthenticationChallenge: 来检查。
二:AFNetworking
AFURLConnectionOperationSSLPinningMode
typedef enum { AFSSLPinningModeNone, AFSSLPinningModePublicKey, AFSSLPinningModeCertificate, } AFURLConnectionOperationSSLPinningMode;
参考:http://wufawei.com/2013/05/SSL-Pining/
相关文章推荐
- @synthesize obj=_0bj的意义详解
- 在iOS中创建及使用自签名SSL证书(下)
- 在iOS中创建及使用自签名SSL证书(上)
- iOS手势
- IOS开发 把cer证书转为p12证书
- ios中long溢出
- iOS学习之 plist文件的读写
- ios编程--AVCapture编程理解
- 【WebRTC】在IOS下编译WebRTC
- 【iOS SOAP】基于第三方开源项目:wsdl2objc
- 如果爱,请深爱:10大iOS开发者最喜爱的类库
- Touch实现触摸事件的妙用
- iOS: 使用AVAudioRecorder中遇到的问题
- IOS中KVO模式的解析与应用
- iOS开发中一些常见的并行处理
- iOS 7用户界面过渡指南
- IOS常见bug.001—'NSInternalInconsistencyException', reason: 'Invalid update: invalid number of rows in
- iOS应用崩溃日志揭秘2
- IOS设计模式浅析之适配器模式(Adapter)
- IOS设计模式浅析之适配器模式(Adapter)