Que fait Analyse des journaux de transparence des certificats TLS ?
Quand l'utiliser
- Lors d'enquêtes sur des incidents de sécurité nécessitant l'analyse des journaux de transparence des certificats TLS
- Lors de l'élaboration de règles de détection ou de requêtes de chasse aux menaces pour ce domaine
- Lorsque les analystes SOC ont besoin de procédures structurées pour ce type d'analyse
- Lors de la validation de la couverture de surveillance des techniques d'attaque associées
Prérequis
- Familiarité avec les concepts et outils des opérations de sécurité
- Accès à un environnement de test ou de laboratoire pour une exécution sécurisée
- Python 3.8+ avec les dépendances requises installées
- Autorisation appropriée pour toute activité de test
Instructions
Interrogez la base de données crt.sh pour trouver des certificats émis pour des domaines similaires à la marque de votre organisation, détectant ainsi les infrastructures de phishing.
from pycrtsh import Crtsh
c = Crtsh()
# Rechercher les certificats correspondant à un domaine
certs = c.search("example.com")
for cert in certs:
print(cert["id"], cert["name_value"])
# Obtenir les détails complets d'un certificat
details = c.get(certs[0]["id"], type="id")
Étapes clés de l'analyse :
- Interroger crt.sh pour tous les certificats correspondant à votre modèle de domaine
- Identifier les certificats avec des variations de typosquatting (distance de Levenshtein)
- Signaler les certificats provenant d'autorités de certification inattendues
- Surveiller les certificats wildcard sur des sous-domaines suspects
- Recouper avec les infrastructures de phishing connues
Exemples
from pycrtsh import Crtsh
c = Crtsh()
certs = c.search("%.example.com")
for cert in certs:
print(f"Émetteur : {cert.get('issuer_name')}, Domaine : {cert.get('name_value')}")