IOSのセキュリティについて学んでいるところです。これは完全に初心者向けの質問です。
IOSアプリがSSLピン留め機能を実装しているかどうかを確認する特定の方法があるかどうかを確認しようとしています。
現在、Burp Proxyを介して一部のアプリのSSLトラフィックを確認しています。 Burp Proxy Certificateをインストールした後でも、一部のアプリはいくつかのアラートをスローしているため、致命的なエラーが発生しているため、クライアントはSSL接続のネゴシエーションに失敗しました。そして、それが適切な方法であるかどうかはわかりません。
しかし、それを理解するための正確で完璧な方法は何ですか?
前もって感謝します
Burpを使用することはそれをテストする良い方法です。ただし、デバイスにBurpのCA証明書をインポートして、デバイスによって信頼されるようにすることを忘れないでください。デバイスのブラウザでhttp://burp
にアクセスし、証明書をダウンロードしてインストールします。
ほとんどのアプリはSSL経由で動作し、Burpでトラフィックを確認できます。ただし、それでも失敗するアプリは、より多くのチェック、つまり「固定」を実行しています。
mitmproxy を使用して同じことを行うことができます。その場合は、ブラウザーでmitm.it
にアクセスして、デバイスにmitmproxyのCA証明書をインポートします。
編集Burpでは、アプリが作成しようとした失敗した接続が表示されないことがわかりました-成功した接続のみが表示されます。それを解決するために使用するのは、mitmdump
の基本バージョンのようなmitmproxy
というツールです(mitdumpにはmitmproxyが付属しています)。成功した接続だけでなく、クライアントによって拒否されたSSL接続も表示されるので、アプリが何を試みたかがわかり、それ以上アプリが拒否したことがわかります。