Android 4.3 IPTABLESを介してCharlesプロキシを使用することを強制。charles証明書は電話にインストールされます。ブラウザでhttpsウェブサイトのような通常のSSLトラフィックをキャプチャできます。すべてPOSTおよびGETメソッドは正常に機能するようです。特定のアプリでは、SSL CONNECTメソッドを使用すると失敗します。
助けてください!
FacebookやInstagramなどのアプリケーションでこの問題に直面する可能性があります。チャールズ証明書は、SSL-PINNINGと呼ばれる手法を使用しているため、一部の新しいアプリでは機能しません。まず、アプリケーションのssl-pinningシステムを壊すか、古いバージョンのアプリケーションをインストールする必要がありますが、それでも動作する場合がありますが、この種のアプリケーションのトラフィックを記録するには、ssl pinningに関する新しいソリューションが必要です。
一部の人々は、ここでAndroid N証明書をインストールした後でもチャール経由でSSLを実行しないデバイス-現在 http:// chls。 pro/ssl
Nでは、xmlファイルとセキュリティ構成も追加する必要があります。この投稿ではさらに詳しく説明します: Android 7 nougat? でチャールズプロキシを動作させる方法
電話で http://charlesproxy.com/getssl にアクセスして証明書をダウンロードします。 Androidで証明書をダウンロードすると、証明書をインストールするよう求められ、証明書に名前を付けて続行します。これで動作するはずです。
注:iPhoneでも同様のはずです
@BerkayYıldızが言うように、おそらくssl/certificate pinningを使用しています。
sSLピンニングを修正/回避/無効にする方法は?
全体のロジックは次のとおりです。
レベル1:normal http
の場合:コアロジック:
注:コンピューター側、wired network
、[〜#〜] not [〜#〜]ワイヤレスを使用する必要があります。そうでない場合、モバイル側ネットワークは使用できません
レベル2:for encrypted https
:
Key Chain
を使用してCharles Root CAを信頼しますEnable SSL Proxying
VPN and Application
を選択する必要があります。Trusted Credentials -> User
、インストールされたチャールズ証明書を見ることができますレベル3:ssl pinning
を使用するSPECIAL https
の場合:
このリンクでは http://www.charlesproxy.com/documentation/using-charles/ssl-certificates/ Charles証明書を適切にインストールするために必要なすべての情報があります。
インストール後、「SSLHandshake:致命的なアラートを受信しました:unknown_ca」エラーを取り除きます。
Android電話でfacebookログインを使用してアプリでこれを取得した場合、fbアプリをアンインストールすることで回避できます。代わりにモバイルfbウェブが使用され、すべてをチャールできます。 fbアプリをインストールしたfb APIはSSLエラーで失敗します。
Nexus 6pに証明書をインストールしようとすると、Android 6.0。(charlesの指示に従って http:// chls.pro/ssl 。):
証明書ファイルを読み取れなかったため、インストールできませんでした。
この問題の解決策は、次を介してインストールすることでした:Settings
> Security
> Install from storage
証明書ファイルに移動してインストールすると、すべてが期待どおりに機能しました。