macOS で Chrome または Firefox と Wireshark を使用してSSL を復号化する方法

macOS で Chrome または Firefox と Wireshark を使用してSSL を復号化する方法

50582
Created On 04/27/21 00:18 AM - Last Modified 01/03/25 15:22 PM


Objective


Chrome または Firefox で暗号化された Web ブラウジングまたはその他の WebアプリケーショントラフィックからSSLセッションキーをキャプチャし、それを使用して Wireshark でパケット キャプチャを復号化します。

Environment


  • macOS 10.15以降
  • Chrome 85以降、またはFirefox 81以降
  • Wireshark 3.2.7 以降
  • RSA、DHE、またはECDHE キー交換アルゴリズムを使用するSSL/TLSセッション。


Procedure


1. Chrome または Firefox を完全に閉じます。強制終了オプション (アプリケーション ドックの Web ブラウザのアイコンを右クリックし、Option キーを押しながら強制終了を選択) を使用して、すべてのインスタンスが閉じられていることを確認します。

2. ターミナル ウィンドウを開き、次のコマンドを使用して SSLKEYLOGFILE 環境変数を設定します。

エクスポート SSLKEYLOGFILE="/Users/$USER/sslkey.log"

SSLKEYLOGFILE環境変数を設定する

ターミナルウィンドウを閉じないでください。

3. Wireshark を起動し、packet capture ( パケット キャプチャ - pcap)を開始します。

4. 手順 2 で環境変数を設定するために使用したターミナル ウィンドウを使用して、Chrome または Firefox を起動します (環境変数は、その特定のターミナルセッションに対してのみ設定されます)。

Chromeの場合:
/Applications/Google\ Chromeを開きます。アプリケーション

Firefoxの場合:
/Applications/Firefox.appを開く

ターミナル ウィンドウから Web ブラウザーを開きます。

5. ターミナルを使用して、sslkey.log ファイルが作成されたことを確認します。

ファイル /Users/$USER/sslkey.log

ファイルが正しく作成された場合の予想される出力は次のようになります。
/Users/user1/sslkey.log: ASCIIテキスト

sslkey.log ファイルが作成されたことを確認します。


6. テスト対象の Web サイトまたは Webアプリケーションを参照し、キャプチャする必要があるすべてのアクションを実行します。

この例では、EICAR の安全なサイトからマルウェアテスト ファイルをダウンロードします。
テスト対象のウェブサイトを閲覧する

7. Wireshark でアクティビティが適切に収集されたことを確認し、キャプチャを停止します。

暗号化されたキャプチャが収集されました。

8. Wireshark で [ 設定 > プロトコル > TLS ] に移動します。 (Pre)-Master-Secret ログ ファイル名の下で、手順 5 で作成した sslkey.log ファイルを選択し、 [Ok]をクリックします。

TLS オプション

9. 復号化されたpacket capture ( パケット キャプチャ - pcap)が Wireshark に表示されます。

復号化されたキャプチャが表示されます。

10. (オプション) HTTPストリームに従って、復号化されたコンテンツを視覚化します。

HTTP ストリーム

注 1 : MAC OS または Chrome が更新されると手順が変更される場合があります。
注 2:この記事は情報提供のみを目的として書かれています。Palo Palo Alto Networks はサードパーティのオペレーティング システムをサポートしていません。


Additional Information


tsharkを使用してパケットを復号化してエクスポートする

現在、Wireshark から復号化されたパケット キャプチャを PCAP 形式でエクスポートする方法はありませんが、このタスクは Wireshark のコマンド ライン版である tshark を使用して実行できます。これにより、復号化されたデータを抽出して保存できます。

  1. (Pre)-Master-Secret キーが利用可能であることを確認します

  2. Run tshark with the TLS key log and appropriate decryption settings:

    tshark -r original.pcap -o tls.keylog_file:/path/to/your/tls_keys.log -o tls.desegment_ssl_records:TRUE -o tls.desegment_ssl_application_data:TRUE -w decrypted.pcap

    • -r original.pcap: Your original PCAP file with encrypted TLS packets.
    • -o tls.keylog_file: Path to your TLS key log file.
    • -o tls.desegment_ssl_records: Ensures proper segmentation of SSL/TLS records.
    • -o tls.desegment_ssl_application_data: Ensures the SSL/TLS application data is properly reassembled.

    The -w decrypted.pcap flag will write the decrypted packets to a new output file.



Actions
  • Print
  • Copy Link

    https://knowledgebase.paloaltonetworks.com/KCSArticleDetail?id=kA14u000000oM2ECAU&lang=ja&refURL=http%3A%2F%2Fknowledgebase.paloaltonetworks.com%2FKCSArticleDetail

Choose Language