PKI Trust Auditor - Guía del usuario
Guía de usuario de PKI Trust Auditor para descubrir y auditar la seguridad de la infraestructura Microsoft ADCS.
Índice#
- Introducción y descripción general
- Requisitos del sistema e instalación
- Primeros pasos
- Referencia de controles de auditoría
- Escenarios de uso y ejemplos
- Resultados e informes
- Solución de problemas e incidencias comunes
- Configuración avanzada
- Consideraciones de seguridad
- Apéndice
Introducción y descripción general#
¿Qué es PKI Trust Auditor?#
PKI Trust Auditor es una herramienta integral de auditoría de seguridad para infraestructuras Active Directory Certificate Services (ADCS). Automatiza el descubrimiento, la evaluación y la generación de informes sobre el estado de seguridad de su entorno PKI.
Funciones principales#
- Descubrimiento automático de CA: descubre automáticamente todas las autoridades de certificación del entorno Active Directory.
- Auditoría completa: realiza auditorías de conectividad, configuración, plantillas, criptografía y operaciones.
- Informes en varios formatos: genera informes JSON, CSV, web y de consola.
- Interfaz interactiva: menú de consola fácil de usar con salida codificada por colores.
- Configuración mediante parámetros: personalice la auditoría con
parameters.json. - Recopilación de evidencias: archivos detallados para la ejecución de cada control.
- Aplicación web: informes web interactivos con visualizaciones.
Público destinatario#
- Administradores PKI: supervisar y mantener el estado de las autoridades de certificación.
- Profesionales de seguridad: evaluar el estado de seguridad y cumplimiento de PKI.
- Auditores de cumplimiento: generar evidencias para requisitos normativos.
- Operaciones de TI: solucionar problemas de la infraestructura PKI.
Requisitos del sistema e instalación#
Requisitos previos#
- Runtime .NET 9.0 o posterior.
- Entorno Windows con conectividad a Active Directory.
- Cuenta de usuario de dominio con los permisos adecuados:
- Acceso de lectura a Active Directory.
- Permisos WMI y PowerShell remoting en servidores CA.
- Permisos administrativos de Certificate Authority.
- Conectividad de red con los servidores Certificate Authority.
Pasos de instalación#
Opción 1: usar el ejecutable
# Run the application
PKI_Trust_Auditor.exePermisos necesarios#
- Active Directory: acceso de lectura al contenedor Configuration.
- Certificate Authorities:
- Administrador local en servidores CA (para WMI/PowerShell).
- Permisos CA Administrator o Certificate Manager.
- Red: puertos TCP 135 (WMI), 5985/5986 (WinRM).
Primeros pasos#
Primera ejecución: modo interactivo#
Ejecute la aplicación sin argumentos para abrir el menú interactivo:
PKI_Trust_Auditor.exeAparecerá el menú principal con opciones codificadas por colores:
===============================================================================
================= PKI TRUST AUDITOR | https://securetron.net =================
Active Directory Certificate Authority Infrastructure & Security Auditing Tool
===============================================================================
Main Menu:
1. Run Full Audit
2. Generate Audit Summary - CLI
3. Executive Reporting - WebUI
4. Discover Certificate Authorities Only
5. Run Connectivity Tests Only
6. Run Configuration and Operational Audits Only
7. Run Cryptographic Audits Only
8. Run Template Audits Only
9. Exit
Opciones de línea de comandos#
Ejecute operaciones específicas directamente desde la línea de comandos:
# Display help
PKI_Trust_Auditor.exe --help
# Run specific audit tests
PKI_Trust_Auditor.exe --tests config
PKI_Trust_Auditor.exe --tests crypto
PKI_Trust_Auditor.exe --tests templates
PKI_Trust_Auditor.exe --tests connectivity
PKI_Trust_Auditor.exe --tests full
# Launch web application
PKI_Trust_Auditor.exe --report
# Clear audit results cache
PKI_Trust_Auditor.exe --clear
# Display version information
PKI_Trust_Auditor.exe --versionConfiguración de parámetros#
Cree o modifique parameters.json para personalizar el comportamiento de la auditoría:
{
"DomainOverride": "DC=yourdomain,DC=com",
"CA-CRYPTO-001": 2048,
"CA-CRYPTO-002": ["MD5", "SHA1", "DES", "RC4", "3DES"],
"CA-TEMPLATE-001": true,
"CA-OPS-002": ["10", "3", "5", "1"]
}Referencia de controles de auditoría#
Pruebas de conectividad#
PKI-TEST-001: prueba de conectividad WMI/SMB
- Gravedad: Critical
- Propósito: comprueba la conectividad de red básica con las autoridades de certificación.
- Método: conectividad del servicio WMI y uso compartido de archivos SMB.
- Resultado esperado: conexión WMI/SMB correcta con la CA.
- Evidencia: método de conectividad y estado de accesibilidad.
- Recomendación: compruebe la conectividad de red, las reglas del firewall y el estado del servicio WMI.
PKI-TEST-002: prueba de conectividad PowerShell
- Gravedad: Critical
- Propósito: prueba PowerShell remoting (alternativa si WMI falla).
- Método: PowerShell remoting mediante WinRM.
- Resultado esperado: conexión PowerShell remoting correcta con la CA.
- Evidencia: método de conectividad y estado de accesibilidad.
- Recomendación: habilite PowerShell remoting y compruebe la configuración WinRM.
PKI-TEST-003: validación de privilegios del usuario
- Gravedad: Critical
- Propósito: valida que el usuario actual disponga de los privilegios necesarios.
- Método: comprueba permisos y pertenencia a grupos.
- Resultado esperado: el usuario tiene los privilegios administrativos necesarios.
- Evidencia: identidad del usuario y evaluación de privilegios.
- Recomendación: ejecute con credenciales administrativas adecuadas.
Auditorías de configuración#
CA-CONFIG-001: configuración del registro de CA
- Gravedad: High
- Propósito: obtiene la configuración completa del registro de la CA.
- Método: consultas remotas del registro mediante WMI/PowerShell.
- Resultado esperado: se obtiene la configuración completa del registro de CA.
- Evidencia: archivo JSON con todos los valores y ajustes del registro.
- Recomendación: revise la configuración del registro y sus opciones de seguridad.
CA-CONFIG-002: plantillas de CA
- Gravedad: High
- Propósito: descubre y analiza plantillas de certificado.
- Método: comandos certutil y análisis de plantillas.
- Resultado esperado: lista de todas las plantillas de certificado y sus configuraciones.
- Evidencia: nombres, configuraciones y descriptores de seguridad de las plantillas.
- Recomendación: revise la seguridad de las plantillas y elimine las innecesarias.
CA-CONFIG-003: configuración AIA
- Gravedad: High
- Propósito: analiza la configuración Authority Information Access.
- Método:
certutil -getreg CA\CSP\AIA. - Resultado esperado: URL AIA y opciones de configuración.
- Evidencia: URL AIA y marcas
AddToCertificateAia,AddToCertificateOcsp. - Recomendación: asegúrese de que las URL AIA sean accesibles y estén configuradas correctamente.
CA-CONFIG-004: puntos de distribución CRL
- Gravedad: High
- Propósito: examina la configuración CRL Distribution Point.
- Método:
certutil -getreg CA\CSP\CRL. - Resultado esperado: URL CRL y opciones de publicación.
- Evidencia: URL CRL, marcas de publicación y configuración de delta CRL.
- Recomendación: verifique que las URL CRL sean accesibles y estén publicadas correctamente.
CA-CONFIG-005: configuración CAPolicy.inf
- Gravedad: Medium
- Propósito: obtiene la configuración del archivo CAPolicy.inf.
- Método: recuperación y análisis del archivo.
- Resultado esperado: opciones y directivas de CAPolicy.inf.
- Evidencia: contenido y configuración de CAPolicy.inf.
- Recomendación: revise la configuración de directivas de certificados.
CA-CONFIG-006: exportación de plantillas PowerShell
- Gravedad: Medium
- Propósito: exporta mediante PowerShell la configuración detallada de las plantillas.
- Método: ejecución de un script PowerShell.
- Resultado esperado: configuración completa de plantillas en formato JSON.
- Evidencia: archivo JSON con atributos y opciones detallados.
- Recomendación: utilícelo para analizar detalladamente las plantillas y revisar su seguridad.
Auditorías operativas#
CA-OPS-001: estado del servicio CertSvc
- Gravedad: High
- Propósito: comprueba el estado del servicio Certificate Services.
- Método: consulta del estado del servicio mediante WMI/PowerShell.
- Resultado esperado: CertSvc está en ejecución y en buen estado.
- Evidencia: estado del servicio, tipo de inicio y estado de salud.
- Recomendación: confirme que CertSvc se está ejecutando y está configurado para iniciarse automáticamente.
CA-OPS-002: validación de expiración del certificado CA
- Gravedad: High
- Propósito: valida las fechas de expiración de certificados CA.
- Método: obtención del certificado y análisis de fechas.
- Resultado esperado: los certificados CA cumplen los límites de expiración configurados.
- Evidencia: periodos de validez, tiempo restante y estado de cumplimiento.
- Recomendación: vuelva a emitir los certificados antes de que expiren o ajuste sus periodos de validez.
CA-OPS-003: validación de configuración AIA del certificado CA
- Gravedad: High
- Propósito: valida la extensión AIA en certificados CA.
- Método: análisis del certificado y validación de extensiones.
- Resultado esperado: configuración AIA correcta en certificados CA.
- Evidencia: presencia de extensión AIA, URL y estado de configuración.
- Recomendación: configure correctamente las URL de la extensión AIA.
CA-OPS-004: validación de configuración CDP del certificado CA
- Gravedad: High
- Propósito: valida la extensión CDP en certificados CA.
- Método: análisis del certificado y validación de extensiones.
- Resultado esperado: configuración CDP correcta en certificados CA.
- Evidencia: presencia de extensión CDP, URL y estado de configuración.
- Recomendación: configure correctamente las URL de la extensión CDP.
CA-OPS-005: accesibilidad de URL AIA
- Gravedad: Medium
- Propósito: comprueba la accesibilidad de URL AIA basadas en HTTP.
- Método: prueba de conectividad HTTP a URL AIA.
- Resultado esperado: todas las URL AIA HTTP con
AddToCertificateAia=TRUEson accesibles. - Evidencia: accesibilidad de URL y códigos de respuesta HTTP.
- Recomendación: corrija problemas de accesibilidad de URL AIA HTTP.
CA-OPS-006: accesibilidad de URL CDP/CRL
- Gravedad: Medium
- Propósito: comprueba la accesibilidad de URL CDP/CRL basadas en HTTP.
- Método: prueba de conectividad HTTP a URL CDP/CRL.
- Resultado esperado: todas las URL HTTP CDP/CRL con marcas aplicables son accesibles.
- Evidencia: accesibilidad de URL, códigos HTTP y análisis de marcas.
- Recomendación: corrija problemas de accesibilidad de URL CDP/CRL HTTP.
CA-OPS-007: descarga AIA y validación de expiración
- Gravedad: Medium
- Propósito: descarga certificados AIA y valida su expiración.
- Método: descarga de certificados y análisis de expiración.
- Resultado esperado: los certificados AIA descargados tienen fechas de expiración válidas.
- Evidencia: detalles del certificado, estado de descarga y validación de expiración.
- Recomendación: actualice los certificados AIA expirados.
CA-OPS-008: descarga y validación CRL
- Gravedad: Medium
- Propósito: descarga archivos CRL y valida su accesibilidad.
- Método: descarga CRL y validación básica.
- Resultado esperado: los archivos CRL se pueden descargar y son válidos.
- Evidencia: estado de descarga, tamaño y validación básica.
- Recomendación: asegure la publicación y accesibilidad de CRL.
CA-OPS-009: configuración del filtro de auditoría CA
- Gravedad: Critical
- Propósito: valida la configuración del filtro de auditoría CA.
- Método: análisis del registro y validación de bitmask.
- Resultado esperado:
AuditFilterestá configurado en 127 para auditoría completa. - Evidencia: valor actual de
AuditFiltery categorías de auditoría ausentes. - Recomendación: establezca
AuditFilteren 127 para habilitar todas las categorías de auditoría.
Auditorías de plantillas#
CA-TEMPLATE-001: validación de restricciones de plantilla CA
- Gravedad: Critical
- Propósito: valida las restricciones de plantilla CA (
CT_FLAG_IS_CA). - Método: análisis de marcas de plantilla y validación de coherencia.
- Resultado esperado: las plantillas que no son CA no deberían estar en CA raíz ni intermedias.
- Evidencia: análisis de plantilla, estado
CT_FLAG_IS_CAy evaluación de cumplimiento. - Recomendación: quite las plantillas que no son CA de los servidores CA o garantice un uso coherente de la marca.
CA-TEMPLATE-002: validación del tamaño de clave de plantilla
- Gravedad: High
- Propósito: valida el tamaño mínimo de clave de las plantillas de certificado.
- Método: análisis del tamaño de clave frente al umbral configurado.
- Resultado esperado: todas las plantillas cumplen el tamaño mínimo de clave.
- Evidencia: tamaños de clave, estado de cumplimiento y plantillas que no cumplen.
- Recomendación: actualice las plantillas para cumplir los tamaños mínimos de clave.
CA-TEMPLATE-003: validación de la versión del esquema de plantilla
- Gravedad: High
- Propósito: valida las versiones del esquema frente a las versiones prohibidas.
- Método: análisis de versión y comprobación de versiones prohibidas.
- Resultado esperado: las plantillas no utilizan versiones de esquema prohibidas.
- Evidencia: versiones de esquema, coincidencias prohibidas y estado de cumplimiento.
- Recomendación: actualice las plantillas para que utilicen versiones de esquema conformes.
CA-TEMPLATE-004: validación de CSP de plantilla
- Gravedad: Critical
- Propósito: valida el uso de Cryptographic Service Provider en plantillas.
- Método: análisis de CSP frente a listas aprobadas y prohibidas.
- Resultado esperado: las plantillas usan CSP aprobados y evitan los prohibidos.
- Evidencia: CSP utilizados, estado de cumplimiento y plantillas que no cumplen.
- Recomendación: actualice las plantillas para utilizar CSP aprobados y evitar los prohibidos.
CA-TEMPLATE-005: validación de la marca Enrollee Supplies Subject
- Gravedad: High
- Propósito: valida el uso de la marca de asunto proporcionado por el solicitante.
- Método: análisis de la marca y validación de la lista de exclusión.
- Resultado esperado: las plantillas con
CT_FLAG_ENROLLEE_SUPPLIES_SUBJECT=1están en la lista de exclusión. - Evidencia: estado de la marca y cumplimiento de la lista de exclusión.
- Recomendación: actualice las plantillas o la lista de exclusión para mantener el cumplimiento.
Auditorías criptográficas#
CA-CRYPTO-001: validación del tamaño de clave del certificado CA
- Gravedad: High
- Propósito: valida el tamaño de las claves de certificados CA.
- Método: análisis del certificado y validación del tamaño de clave.
- Resultado esperado: el tamaño de clave del certificado CA cumple el mínimo requerido.
- Evidencia: detalles del certificado, tamaño de clave y estado de cumplimiento.
- Recomendación: vuelva a emitir el certificado CA con un tamaño de clave adecuado.
CA-CRYPTO-002: detección de algoritmos débiles en certificados CA
- Gravedad: High
- Propósito: detecta algoritmos criptográficos débiles en certificados CA.
- Método: análisis de algoritmos frente a la lista de algoritmos prohibidos.
- Resultado esperado: el certificado CA utiliza algoritmos criptográficos sólidos.
- Evidencia: algoritmos de firma y clave, y detección de algoritmos débiles.
- Recomendación: vuelva a emitir el certificado CA con algoritmos sólidos.
CA-CRYPTO-003: validación de Extended Key Usage del certificado CA
- Gravedad: High
- Propósito: valida extensiones Extended Key Usage en certificados CA.
- Método: análisis EKU frente a la lista de EKU prohibidas.
- Resultado esperado: el certificado CA no contiene EKU prohibidas.
- Evidencia: extensiones EKU, detección de EKU prohibidas y estado de cumplimiento.
- Recomendación: vuelva a emitir el certificado CA sin EKU prohibidas.
CA-CRYPTO-004: validación de Basic Constraints del certificado CA
- Gravedad: High
- Propósito: valida la extensión Basic Constraints de certificados CA.
- Método: análisis de Basic Constraints frente a los valores configurados.
- Resultado esperado: las restricciones básicas coinciden con los valores configurados.
- Evidencia: marca CA, restricción de longitud de ruta y estado de cumplimiento.
- Recomendación: vuelva a emitir el certificado CA con Basic Constraints correctos.
Auditorías de permisos#
CA-PERM-001: validación de permisos de administradores CA
- Gravedad: Critical
- Propósito: valida los permisos de administradores CA frente a las identidades principales esperadas.
- Método: análisis de permisos de seguridad y validación de identidades.
- Resultado esperado: todos los administradores CA figuran en la lista de identidades esperadas.
- Evidencia: identidades administradoras, identidades esperadas y estado de cumplimiento.
- Recomendación: añada las identidades que no cumplen a la lista esperada o elimine sus permisos.
Escenarios de uso y ejemplos#
Evaluación completa de la infraestructura#
Ejecute una auditoría completa del entorno PKI:
# Interactive menu option 1
PKI_Trust_Auditor.exe
# Command line equivalent
PKI_Trust_Auditor.exe --tests fullSe ejecutan las siguientes pruebas:
- Validación de privilegios de usuario.
- Descubrimiento de Certificate Authority.
- Pruebas de conectividad (WMI/PowerShell).
- Auditorías de configuración (registro, plantillas, AIA, CRL).
- Auditorías operativas (estado de servicio, certificados y URL).
- Auditorías de plantillas (restricciones, tamaños de clave, versiones de esquema).
- Auditorías criptográficas (tamaños de clave, algoritmos y extensiones).
- Auditorías de permisos.
Prueba de conectividad específica#
Pruebe únicamente la conectividad de red con las CA descubiertas:
# Interactive menu option 5
# Or command line
PKI_Trust_Auditor.exe --tests connectivityEvaluación de seguridad de plantillas#
Céntrese en la seguridad de plantillas de certificado:
# Interactive menu option 8
# Or command line
PKI_Trust_Auditor.exe --tests templatesRevisión criptográfica#
Analice la seguridad de certificados y algoritmos:
# Interactive menu option 7
# Or command line
PKI_Trust_Auditor.exe --tests cryptoInformes web#
Genere y abra informes web interactivos:
# Interactive menu option 3
# Or command line
PKI_Trust_Auditor.exe --reportSolo descubrimiento rápido#
Descubra CA sin ejecutar auditorías:
# Interactive menu option 4
# Or command line (no direct equivalent, use interactive menu)Resultados e informes#
Estructura de archivos de salida#
La herramienta crea el directorio Audit-Results/ con esta estructura:
Audit-Results/
├── PKI-Audit.json # Complete audit results in JSON format
├── PKI-Audit.csv # Summary data in CSV format
├── CA-CRYPTO-001-{CA-Name}.cer # Downloaded CA certificates
├── CA-OPS-007-{CA-Name}.cer # Downloaded AIA certificates
├── CA-OPS-008-{CA-Name}.crl # Downloaded CRL files
├── {Control-ID}-{CA-Name}.txt # Individual control evidence files
└── {Control-ID}-{CA-Name}.json # JSON evidence files (for some controls)
Formatos de informe#
Informe JSON (PKI-Audit.json)
Datos estructurados completos que incluyen:
- Detalles de Certificate Authority.
- Resultados de todos los controles con sus evidencias.
- Marcas de tiempo y duración de ejecución.
- Estadísticas resumidas y tasas de éxito.
Informe CSV (PKI-Audit.csv)
Datos tabulares adecuados para hojas de cálculo:
- ID, nombre, gravedad y estado del control.
- Certificate Authority y resultado esperado.
- Hora y duración de ejecución.
Archivos por control
Evidencias detalladas de cada control ejecutado:
- Metadatos y configuración del control.
- Texto completo de evidencia.
- Recomendaciones y estado de cumplimiento.
- Detalles y duración de ejecución.
Aplicación web
Informes web interactivos:
- Panel visual de resumen.
- Desglose detallado de controles.
- Filtrado y búsqueda.
- Función de exportación.
Recopilación de evidencias#
Cada control genera evidencias detalladas, entre ellas:
- Metadatos del control: ID, nombre, gravedad y resultado esperado.
- Detalles de ejecución: marca temporal, duración e información de CA.
- Contenido de evidencia: salida sin procesar, datos analizados y resultados.
- Estado de cumplimiento: correcto, fallo, error o no ejecutado.
- Recomendaciones: pasos específicos de corrección.
Almacenamiento de certificados y CRL#
- Certificados CA: descargados de Active Directory para su análisis.
- Certificados AIA: descargados de URL AIA para validación.
- Archivos CRL: descargados de URL CDP para probar accesibilidad.
Solución de problemas e incidencias comunes#
Problemas de conectividad#
Fallos de conectividad WMI
Síntomas: fallos de PKI-TEST-001.
Causas:
- El firewall bloquea el puerto 135.
- El servicio WMI no se está ejecutando en la CA.
- Problemas de conectividad de red.
- Permisos insuficientes.
Soluciones:
# Check WMI service status
sc \\CA-Server query winmgmt
# Test basic connectivity
Test-NetConnection CA-Server -Port 135
# Verify firewall rules
netsh advfirewall firewall show rule name="Windows Management Instrumentation (WMI-In)"Fallos de PowerShell remoting
Síntomas: fallos de PKI-TEST-002.
Causas:
- El servicio WinRM no se está ejecutando.
- PowerShell remoting no está habilitado.
- Problemas de certificado para HTTPS.
- Problemas de conectividad de red.
Soluciones:
# Enable PowerShell remoting (run on CA server)
Enable-PSRemoting -Force
# Check WinRM service
Get-Service WinRM
# Test WinRM connectivity
Test-WSMan CA-ServerProblemas de permisos#
Acceso a Active Directory
Síntomas: fallos en el descubrimiento de CA. Causas:
- Permisos AD insuficientes.
- Problemas de conectividad con el controlador de dominio.
- Problemas de resolución DNS.
Soluciones:
- Asegúrese de que la cuenta de usuario de dominio tenga acceso de lectura al contenedor Configuration.
- Verifique la resolución DNS de los controladores de dominio.
- Compruebe la conectividad de red con los controladores de dominio.
Permisos administrativos de CA
Síntomas: fallos en auditorías de configuración. Causas:
- Faltan permisos CA Administrator.
- No hay derechos de administrador local en servidores CA.
- Faltan permisos Certificate Manager.
Soluciones:
- Añada el usuario al grupo CA Administrators.
- Conceda derechos de administrador local en los servidores CA.
- Asegúrese de que dispone de permisos Certificate Manager.
Problemas de configuración#
Problemas de parameters.json
Síntomas: errores de ejecución de controles o comportamiento inesperado. Causas:
- Formato JSON no válido.
- Faltan parámetros obligatorios.
- Valores de parámetros incorrectos.
Soluciones:
// Validate parameters.json structure
{
"DomainOverride": "DC=yourdomain,DC=com",
"CA-CRYPTO-001": 2048,
"CA-CRYPTO-002": ["MD5", "SHA1", "DES", "RC4", "3DES"],
"CA-TEMPLATE-001": true
}Problemas de detección del dominio
Síntomas: no se pueden descubrir CA ni recuperar certificados. Causas:
- Falló la detección automática del dominio.
- El valor
DomainOverridees incorrecto. - Problemas de red o DNS.
Soluciones:
- Compruebe que
DomainOverrideenparameters.jsoncoincida con su dominio. - Compruebe la resolución DNS de los controladores de dominio.
- Asegúrese de que existe conectividad de red con el dominio.
Problemas de rendimiento#
Ejecución lenta
Causas:
- Número elevado de CA para auditar.
- Latencia de red con CA remotas.
- Recursos insuficientes en los servidores CA.
Soluciones:
- Ejecute auditorías específicas en lugar de una auditoría completa.
- Programe auditorías fuera de las horas punta.
- Asegúrese de que los servidores CA dispongan de recursos suficientes.
Uso de memoria
Causas:
- Archivos de certificado grandes.
- Recopilación extensa de evidencias.
- Varias auditorías simultáneas.
Soluciones:
- Borre periódicamente la caché de resultados de auditoría.
- Supervise los recursos del sistema durante la ejecución.
- Considere ejecutar la herramienta en un servidor de auditoría dedicado.
Configuración avanzada#
Referencia de parameters.json
Configuración del dominio
{
"DomainOverride": "DC=securetron-lab,DC=local"
}Configuración criptográfica
{
"CA-CRYPTO-001": 2048, // Minimum key size in bits
"CA-CRYPTO-002": ["MD5", "SHA1", "DES"], // Prohibited algorithms
"CA-CRYPTO-003": ["Server Authentication", "Client Authentication"], // Prohibited EKUs
"CA-CRYPTO-004": ["CA", "-1"] // Basic constraints (CA flag, path length)
}Configuración de plantillas
{
"CA-TEMPLATE-001": true, // Enable template restriction validation
"CA-TEMPLATE-002": 2048, // Minimum template key size
"CA-TEMPLATE-003": [1], // Prohibited schema versions
"CA-TEMPLATE-004": [ // CSP validation settings
"Microsoft Base Cryptographic Provider v1.0", // Prohibited CSPs
"APPROVED", // Separator
"Microsoft Enhanced Cryptographic Provider v1.0", // Approved CSPs
"Microsoft Strong Cryptographic Provider"
],
"CA-TEMPLATE-005": [ // Enrollee supplies subject
"1", // Control enabled (1) or disabled (0)
"WebServer", // Exclusion list templates
"Workstation"
]
}Configuración operativa
{
"CA-OPS-002": ["10", "3", "5", "1"], // Certificate expiration limits
// [Root Max, Root Min, Sub Max, Sub Min]
"CA-OPS-003": true, // AIA validation required
"CA-OPS-004": true, // CDP validation required
"CA-OPS-005": true, // AIA reachability validation
"CA-OPS-006": true, // CDP/CRL reachability validation
"CA-OPS-007": true, // AIA certificate validation
"CA-OPS-008": true, // CRL download validation
"CA-OPS-009": 127 // Audit filter threshold
}Configuración de permisos
{
"CA-PERM-001": [ // Expected CA administrators
"DOMAIN\\CA-Admins", // Substitute DOMAIN in parameters.json
"DOMAIN\\PKI-Admins"
]
}Configuración personalizada de controles#
Habilitar o deshabilitar controles
Los controles se pueden activar o desactivar mediante parameters.json:
- Valores booleanos:
truepara habilitar,falsepara deshabilitar. - Valores numéricos: un valor distinto de cero habilita;
0deshabilita. - Valores de matriz: el primer elemento determina si se habilita.
Configuración de umbrales
Muchos controles admiten umbrales configurables:
- Tamaños de clave (
CA-CRYPTO-001,CA-TEMPLATE-002). - Límites de expiración (
CA-OPS-002). - Listas de algoritmos (
CA-CRYPTO-002). - Versiones de esquema (
CA-TEMPLATE-003).
Listas de exclusión
Algunos controles admiten listas de exclusión:
- Exclusiones de plantillas (
CA-TEMPLATE-005). - Identidades principales de administradores (
CA-PERM-001).
Personalización de scripts#
Scripts PowerShell
La herramienta utiliza scripts auxiliares PowerShell para ciertas operaciones:
helper/ca-config-001.ps1- configuración del registro.helper/ca-config-006.ps1- exportación de plantillas.
Se pueden personalizar para entornos o requisitos específicos.
Análisis de evidencias
La herramienta ofrece análisis avanzado de evidencias para:
- Archivos de configuración JSON.
- Salida de comandos certutil.
- Salida de objetos PowerShell.
- Estructuras de datos del registro.
Consideraciones de seguridad#
Tratamiento de datos#
Información recopilada
La herramienta recopila y almacena:
- Datos de configuración de Certificate Authority.
- Plantillas y configuraciones de certificados.
- Información sobre algoritmos criptográficos.
- Información de conectividad de red.
- Configuración de permisos y seguridad.
Seguridad del almacenamiento
- Todos los datos se almacenan localmente en
Audit-Results. - No se transmite información confidencial a servicios externos.
- Los archivos de evidencia contienen datos de evaluación de seguridad.
- Los certificados y CRL descargados se conservan para su análisis.
Seguridad de red#
Métodos de comunicación
- WMI: utiliza DCOM/RPC por el puerto 135.
- PowerShell: utiliza WinRM por los puertos 5985/5986.
- LDAP: consultas Active Directory por el puerto 389/636.
- HTTP/HTTPS: pruebas de accesibilidad de URL.
Recomendaciones de seguridad
- Utilice cuentas de auditoría dedicadas con privilegios mínimos.
- Segmente la red de los servidores CA.
- Utilice canales cifrados cuando estén disponibles (LDAPS, WinRM HTTPS).
- Revise y actualice periódicamente los permisos de auditoría.
Uso de credenciales#
Métodos de autenticación
- Utiliza las credenciales del usuario actual en todas las operaciones.
- No almacena ni guarda credenciales en caché.
- Se basa en la autenticación integrada de Windows.
Buenas prácticas
- Utilice cuentas de servicio dedicadas para auditoría.
- Aplique el principio de privilegio mínimo.
- Rote periódicamente las credenciales de la cuenta de auditoría.
- Supervise el uso de la cuenta de auditoría.
Compatibilidad de cumplimiento#
Marcos normativos
La herramienta ayuda a evaluar el cumplimiento de:
- NIST SP 800-53: evaluación de controles de seguridad.
- PCI DSS: requisitos de certificados y criptografía.
- ISO 27001: gestión de seguridad de la información.
- CIS Benchmarks: directrices de configuración de seguridad.
Generación de evidencias
- Evidencias detalladas de ejecución de controles.
- Registros de ejecución con marcas de tiempo.
- Informes de estado de cumplimiento.
- Recomendaciones de corrección.
Apéndice#
Referencia de ID de controles#
Pruebas de conectividad
- PKI-TEST-001: prueba de conectividad WMI/SMB.
- PKI-TEST-002: prueba de conectividad PowerShell.
- PKI-TEST-003: validación de privilegios del usuario.
Auditorías de configuración
- CA-CONFIG-001: configuración del registro de CA.
- CA-CONFIG-002: plantillas de CA.
- CA-CONFIG-003: configuración AIA.
- CA-CONFIG-004: puntos de distribución CRL.
- CA-CONFIG-005: configuración CAPolicy.inf.
- CA-CONFIG-006: exportación de plantillas PowerShell.
Auditorías operativas
- CA-OPS-001: estado del servicio CertSvc.
- CA-OPS-002: validación de expiración del certificado CA.
- CA-OPS-003: validación AIA del certificado CA.
- CA-OPS-004: validación CDP del certificado CA.
- CA-OPS-005: accesibilidad de URL AIA.
- CA-OPS-006: accesibilidad de URL CDP/CRL.
- CA-OPS-007: descarga AIA y validación de expiración.
- CA-OPS-008: descarga y validación CRL.
- CA-OPS-009: configuración del filtro de auditoría CA.
Auditorías de plantillas
- CA-TEMPLATE-001: validación de restricciones de plantilla CA.
- CA-TEMPLATE-002: validación del tamaño de clave de plantilla.
- CA-TEMPLATE-003: validación de versión del esquema de plantilla.
- CA-TEMPLATE-004: validación de CSP de plantilla.
- CA-TEMPLATE-005: validación de la marca Enrollee Supplies Subject.
Auditorías criptográficas
- CA-CRYPTO-001: validación del tamaño de clave del certificado CA.
- CA-CRYPTO-002: detección de algoritmos débiles en certificados CA.
- CA-CRYPTO-003: validación de Extended Key Usage del certificado CA.
- CA-CRYPTO-004: validación de Basic Constraints del certificado CA.
Auditorías de permisos
- CA-PERM-001: validación de permisos de administradores CA.
Niveles de gravedad#
Critical
- Riesgos de seguridad inmediatos.
- Impactos en la disponibilidad del sistema.
- Fallos fundamentales de seguridad.
High
- Problemas de seguridad importantes.
- Incumplimientos normativos.
- Problemas de configuración importantes.
Medium
- Riesgos de seguridad moderados.
- Desviaciones de buenas prácticas.
- Mejoras de configuración necesarias.
Low
- Observaciones menores de seguridad.
- Hallazgos informativos.
- Oportunidades de mejora.
Códigos de estado#
Success
El control se ejecutó correctamente y cumplió los resultados esperados.
Failure
El control se ejecutó correctamente, pero no cumplió los resultados esperados.
Error
El control no pudo ejecutarse correctamente debido a problemas técnicos.
Not Run
El control se omitió (normalmente debido a fallos en requisitos previos).
Estructura de archivos#
Estructura de salida
Audit-Results/
├── PKI-Audit.json (Complete results)
├── PKI-Audit.csv (Summary data)
├── *.cer (Certificate files)
├── *.crl (CRL files)
├── *.txt (Evidence files)
└── *.json (JSON evidence files)
Soporte y recursos#
Documentación
- Esta guía del usuario.
- Ayuda incluida en la aplicación (opción
--help). - Archivos de evidencia específicos de los controles.
Soporte técnico
- Contacto: [email protected]
- Sitio web: https://securetron.net
- Producto: https://securetron.net/pki-trust-auditor/
Actualizaciones y mantenimiento
- Actualizaciones de seguridad periódicas.
- Nuevos controles.
- Mejoras de rendimiento.
- Actualizaciones de compatibilidad.
Esta guía del usuario es mantenida por el equipo de desarrollo de PKI Trust Auditor. Última actualización: octubre de 2025.