
これは、ドメインがCertificate Transparencyを適切に実装しているかを確認するための、簡易的なPythonスクリプトです。実装されている場合、サーバ側でCertificate Transparencyがどのように実装されているかを確認することができます。 サーバがCertificate Transparencyを実装する場合、少なくとも1つのSCT(サーバTLS証明書がTransparency Logに含まれていることの証明)を提供する必要があります。SCTは、証明書に埋め込まれる方法、TLS拡張として提供される方法、OCSP Staplingを介して提供される方法の3つの異なる方法で提供できます。PySCTCheckerを使用すると、サーバが使用する配送オプションと、証明書が送信されたログを特定できます。また、提供されたSCTが有効で、ログによって正当に署名されているかどうかを確認することもできます。
使用方法:
python PySCTChecker/ct_domains_sct_checker.py [domain1 domain2 ...]
出力例:
user@ubuntu:~/Desktop/PySCTChecker$ python ct_domains_sct_checker.py elevenpaths.com
** ホストに接続中: elevenpaths.com... **
** 証明書に埋め込まれたSCTを検索中 **
** TLS拡張内のSCTを検索中 **
TLSにSCTが見つかりませんでした
** OCSP応答内のSCTを検索中 **
OCSPアドレスが見つかりませんでした OCSP応答にSCTが見つかりませんでした
** SCTで検出されたログ **
Symantec log (precert) └─ 署名検証: True
Google 'Pilot' log (precert) └─ 署名検証: True
Google 'Rocketeer' log (precert) └─ 署名検証: True
依存関係:
PySCTCheckerを実行するには、OpenSSLが必要です。
Pythonモジュールの依存関係をインストールするには、以下を実行してください:
sudo pip install -r PySCTChecker/requirements.txt