2016-07-08 88 views
0

我在iOS中創建需要與我的TLS-1.2兼容服務器交談的應用程序。在iOS 9之後,引入了ATS(應用程序傳輸安全性),默認情況下啓用此功能。我無法再使用CharlesProxy輕鬆查看我的數據包。charlesproxy的iOS應用程序傳輸安全性

四處搜索後,我發現我們可以在我的應用程序的info.plist中暫時禁用它以查看流量​​。

<key>NSAppTransportSecurity</key> 
<dict> 
    <!--Connect to anything (for dev env only)--> 
    <key>NSAllowsArbitraryLoads</key> 

如果我理解正確,ATS是用於數據加密而不是MITM。我們需要各種SSL固定來實現MITM預防。我的問題是,爲什麼我無法在不修改info.plist的情況下查看charles proxy上的流量? (我可以看到來自其他應用程序的其他https呼叫)

+0

MITM對於https很不容易。在Charles Proxy的情況下,作爲計算機管理員,您允許Charles Proxy安裝證書,這允許接受Charles Proxy https會話。固定不會允許這樣做,因爲不僅可以允許任何有效的證書,而且可以使用屬於您期望的服務器的證書。 – zaph

回答

0

您需要允許查爾斯MITM攻擊。爲此,您需要在設備上安裝Charles的證書。有關如何這樣做的信息可以在其網站上找到here

正確安裝證書後,您需要選擇URL,右鍵單擊然後單擊URL的「SSL代理」。

enter image description here

+0

感謝您的輸入,我最終更新了Charles版本,他們提到ATS僅在某些版本的Charles後才支持 –

相關問題