
Script en Python para verificar la implementación de Certificate Transparency (SCT) en dominios mediante la comprobación de SCTs embebidos, por extensión TLS y por OCSP-stapled, validando las firmas de los logs.
Este es un script Python rápido y sencillo para verificar si un dominio implementa correctamente Certificate Transparency. Si es así, es posible observar cómo se implementa Certificate Transparency en el lado del servidor. Cuando un servidor implementa Certificate Transparency, debe ofrecer al menos un SCT (una prueba de inclusión del certificado TLS del servidor en un registro de transparencia). Un SCT se puede ofrecer de tres formas distintas: incrustado en el certificado, como extensión TLS y mediante OCSP Stapling. Usando PySCTChecker es posible identificar las opciones de entrega que utiliza el servidor y los registros a los que se ha enviado el certificado. Además, es posible verificar si los SCT ofrecidos son válidos y están firmados legítimamente por los registros.
** Uso**:
python PySCTChecker/ct_domains_sct_checker.py [domain1 domain2 ...]
** Ejemplo de salida:**
user@ubuntu:~/Desktop/PySCTChecker$ python ct_domains_sct_checker.py elevenpaths.com
** Conectando al host: elevenpaths.com... **
** Buscando SCT incrustado en el certificado **
** Buscando SCTs en extensiones TLS **
No se encontró sct en TLS
** Buscando SCTs en respuesta OCSP **
No se encontró dirección OCSP No se encontró sct en la respuesta OCSP
** Logs detectados en SCTs **
Symantec log (precert) └─ Firma verificada: True
Google 'Pilot' log (precert) └─ Firma verificada: True
Google 'Rocketeer' log (precert) └─ Firma verificada: True
** Dependencias:**
Para ejecutar PySCTChecker, se requiere OpenSSL.
Para instalar las dependencias de los módulos Python, ejecute:
sudo pip install -r PySCTChecker/requirements.txt