Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
certgraveyard_yara — Generación automatizada de reglas YARA a partir de la base de datos de certificados comprometidos de Cert Central. | Kitploit
Herramientas/GitHubGitHub/tjnel/certgraveyard_yara
Herramientas DefensivasAnálisis ForenseAnálisis de MalwareAnálisis de BinariosInteligencia de Amenazas
GitHubtjnel/certgraveyard_yara

certgraveyard_yara

Generación automatizada de reglas YARA a partir de la base de datos de certificados comprometidos de Cert Central.

Ver Repositorio
15hace 1 díaAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

CertGraveyard YARA - Reglas YARA para Análisis de Certificados

Generador de Reglas YARA de CertGraveyard

GitHub license made-with-python

Generación automatizada de reglas YARA a partir de la base de datos de certificados comprometidos de CertGraveyard.

Características

  • 🔄 Actualizaciones Diarias: Comprueba automáticamente CertGraveyard en busca de nuevos certificados comprometidos
  • 📝 Generación de Reglas YARA: Crea reglas YARA individuales para cada certificado
  • ✅ Validación: Valida todas las reglas con yara-python
  • 📦 Gestión de Lanzamientos: Lanzamientos automatizados con conjunto de reglas combinado y archivo ZIP
  • 📋 Registro de Cambios: Mantiene un registro detallado de todas las adiciones y modificaciones

Inicio Rápido

Instalación

root@kitploit:~
# Clonar el repositorio
git clone https://github.com/tjnel/certgraveyard_yara.git
cd certgraveyard_yara

# Instalar con UV
uv sync --all-extras

Uso

root@kitploit:~
# Descargar el último CSV de CertGraveyard
cert-graveyard-yara download

# Verificar si el CSV ha cambiado
cert-graveyard-yara check-changed

# Generar reglas YARA
cert-graveyard-yara generate

# Validar reglas
cert-graveyard-yara validate --engine yara

# Crear archivo combinado y archivo ZIP
cert-graveyard-yara combine
cert-graveyard-yara package

# Ejecutar el pipeline completo
cert-graveyard-yara run --all

Usar las Reglas Generadas

Descarga la última versión o usa las reglas directamente:

root@kitploit:~
# Escanear con el conjunto de reglas combinado
yara rules/combined/MAL_Compromised_Cert_*.yara /ruta/a/escanear

# O usar reglas individuales
yara rules/individual/*.yara /ruta/a/escanear

Estructura del Proyecto

root@kitploit:~
cert-graveyard-yara/
├── .github/workflows/      # GitHub Actions
│   ├── daily-update.yml    # Verificación diaria de CSV y generación de reglas
│   ├── ci.yml              # Validación y pruebas de PR
│   └── release.yml         # Creación de lanzamientos
├── src/cert_graveyard_yara/  # Código fuente
│   ├── __init__.py
│   ├── downloader.py       # Descarga y caché de CSV
│   ├── parser.py           # Análisis de CSV
│   ├── generator.py        # Generación de reglas YARA
│   ├── validator.py        # Validación de reglas
│   ├── changelog.py        # Gestión del registro de cambios
│   └── cli.py              # Interfaz de línea de comandos
├── tests/                  # Suite de pruebas
├── rules/
│   ├── individual/         # Archivos de reglas YARA individuales
│   └── combined/           # Archivos de lanzamiento combinados
├── data/                   # Datos CSV y archivos hash
├── templates/              # Plantillas Jinja2
└── CHANGELOG.md

Formato de Regla Generada

Cada regla sigue este formato:

root@kitploit:~
import "pe"

rule MAL_Compromised_Cert_Emotet_DigiCert_0a_1b_2c_3d {
   meta:
      description         = "Detecta el malware Emotet utilizando certificado comprometido..."
      author              = "TNEL (https://github.com/tjnel/certgraveyard_yara)"
      reference           = "https://certgraveyard.org"
      
      hash                = "a1b2c3d4..."
      malware             = "Emotet"
      malware_type        = "Trojan"
      
      cert_issuer         = "DigiCert SHA2 Assured ID Code Signing CA"
      cert_serial         = "0a:1b:2c:3d"
      cert_valid_from     = "2024-01-15"
      cert_valid_to       = "2025-01-15"

   condition:
      uint16(0) == 0x5a4d and
      for any sig in pe.signatures : (
         sig.issuer contains "DigiCert SHA2 Assured ID Code Signing CA" and
         sig.serial == "0a:1b:2c:3d"
      )
}

Desarrollo

Configuración del Entorno de Desarrollo

root@kitploit:~
# Instalar con dependencias de desarrollo
uv sync --all-extras

# Ejecutar linting
uv run ruff check src tests

# Ejecutar verificación de tipos
uv run mypy src

# Ejecutar pruebas
uv run pytest

Ejecutar Pruebas

root@kitploit:~
# Ejecutar todas las pruebas con cobertura
uv run pytest

# Ejecutar un archivo de prueba específico
uv run pytest tests/test_generator.py

# Ejecutar con salida detallada
uv run pytest -v

Comandos CLI

Configuración

Variables de Entorno

VariableDescripciónValor por Defecto
CERTGRAVEYARD_URLURL de descarga del CSVhttps://certgraveyard.org/api/download_csv

Licencia

Licencia MIT - consulta el archivo LICENSE para más detalles.

Agradecimientos

  • CertGraveyard por proporcionar la base de datos de certificados comprometidos
  • YARA por el motor de coincidencia de patrones
Descargar herramienta
ComandoDescripción
downloadDescargar CSV de CertGraveyard
check-changedVerificar si el CSV ha cambiado desde la última ejecución
generateGenerar reglas YARA desde el CSV
validateValidar reglas YARA
changelogActualizar el registro de cambios con las modificaciones
combineCrear archivo YARA combinado
packageCrear archivo ZIP de las reglas
runEjecutar el pipeline completo