
Python-Skript zur Überprüfung der Certificate Transparency (SCT)-Implementierung in Domains durch Prüfung von eingebetteten, TLS-Erweiterungs- und OCSP-gehefteten SCTs sowie Validierung von Log-Signaturen.
Dies ist ein schnelles und einfaches Python-Skript, um zu prüfen, ob eine Domain Certificate Transparency ordnungsgemäß implementiert. Falls ja, kann beobachtet werden, wie Certificate Transparency serverseitig umgesetzt wird. Wenn ein Server Certificate Transparency implementiert, muss er mindestens ein SCT (einen Nachweis der Aufnahme des Server-TLS-Zertifikats in ein Transparency Log) anbieten. Ein SCT kann auf drei verschiedene Arten bereitgestellt werden: eingebettet im Zertifikat, als TLS-Erweiterung und via OCSP Stapling. Mit PySCTChecker lässt sich ermitteln, welche Bereitstellungsoptionen der Server verwendet und an welche Logs das Zertifikat gesendet wurde. Außerdem kann überprüft werden, ob die angebotenen SCTs gültig und ordnungsgemäß von Logs signiert sind.
Verwendung:
python PySCTChecker/ct_domains_sct_checker.py [domain1 domain2 ...]
Beispielausgabe:
user@ubuntu:~/Desktop/PySCTChecker$ python ct_domains_sct_checker.py elevenpaths.com
** Connecting to host: elevenpaths.com... **
** Looking for embedded SCT in certificate **
** Looking for SCTs in TLS extensions**
No sct found on TLS
** Looking for SCTs in OCSP response **
OCSP address not found No sct found in OCSP response
** Logs detected in SCTs **
Symantec log (precert) └─ Verified signature: True
Google 'Pilot' log (precert) └─ Verified signature: True
Google 'Rocketeer' log (precert) └─ Verified signature: True
Abhängigkeiten:
Um PySCTChecker auszuführen, wird OpenSSL benötigt.
Zum Installieren der Python-Modulabhängigkeiten ausführen:
sudo pip install -r PySCTChecker/requirements.txt