O que Analisando Logs de Transparência de Certificados TLS faz?
Quando Usar
- Ao investigar incidentes de segurança que exigem análise de logs de transparência de certificados TLS
- Ao construir regras de detecção ou consultas de caça a ameaças para este domínio
- Quando analistas SOC precisam de procedimentos estruturados para este tipo de análise
- Ao validar a cobertura de monitoramento de segurança para técnicas de ataque relacionadas
Pré-requisitos
- Familiaridade com conceitos e ferramentas de operações de segurança
- Acesso a um ambiente de teste ou laboratório para execução segura
- Python 3.8+ com as dependências necessárias instaladas
- Autorização apropriada para quaisquer atividades de teste
Instruções
Consulte o banco de dados de Transparência de Certificados do crt.sh para encontrar certificados emitidos para domínios semelhantes à marca da sua organização, detectando infraestrutura de phishing.
from pycrtsh import Crtsh
c = Crtsh()
# Buscar certificados correspondentes a um domínio
certs = c.search("example.com")
for cert in certs:
print(cert["id"], cert["name_value"])
# Obter detalhes completos do certificado
details = c.get(certs[0]["id"], type="id")
Etapas principais da análise:
- Consultar o crt.sh por todos os certificados correspondentes ao padrão do seu domínio
- Identificar certificados com variações de typosquatting (distância de Levenshtein)
- Sinalizar certificados de CAs inesperadas
- Monitorar certificados curinga em subdomínios suspeitos
- Cruzar referências com infraestrutura de phishing conhecida
Exemplos
from pycrtsh import Crtsh
c = Crtsh()
certs = c.search("%.example.com")
for cert in certs:
print(f"Emissor: {cert.get('issuer_name')}, Domínio: {cert.get('name_value')}")