iOS逆向----破解HTTPS雙向認證

最近在搞某個APP,這個APP做了HTTPS證書的雙向校驗,導致抓包失敗,服務器報錯400 No required SSL certificate was sent:
在這裏插入圖片描述

其實破解雙向認證很容易,具體思路如下:

首先既然要做雙向認證,那麼客戶端一定會存一個證書文件,要麼是p12,要麼是cer,要麼是pfx等等等。。而且這個證書一定是有密碼保護的。這個密碼如果不是123456的話,那麼就要進入下一步,逆向分析。

從IPA包中抓到的證書文件:
在這裏插入圖片描述
由於知道了證書的名稱,那麼我們直接在IDA中搜這個文件的名字:
在這裏插入圖片描述

然後跟蹤發現,證書名跟密碼是連在一起的,所以我們很輕易的就拿到了證書的密碼xxxxx:
在這裏插入圖片描述

打開抓包軟件,我用的是Charles,配置證書:
Proxy->SSL Proxying Settings->Client Certificates
點擊Add:
在這裏插入圖片描述
點擊choose選擇證書:
在這裏插入圖片描述
注意,這裏選擇證書的時候不會讓你輸入密碼,輸入密碼是在抓到了該域名的包之後纔要求你輸入的 ,所以域名一定要填對,就像這樣:
在這裏插入圖片描述
抓到包之後會提示輸入密碼:
在這裏插入圖片描述

輸入之後如果這次抓到包還是報錯,那麼需要重啓APP,再抓一次,或者檢查這個域名有沒有在上面的列表裏,下圖是配置成功後,可以看到抓包成功了:
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章