Validación de certificados
Verifique la identidad del servidor
Validación de certificados es una lección gratuita de Cyber Security Academy en CoddyKit. Esta es la lección 3 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Cyber Security Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Cyber Security Academy incluye 4 lecciones en total.
¿Por qué validar los certificados?
El cifrado por sí solo no es suficiente. Si cifra una conexión con un atacante, habrá protegido la conversación equivocada.
La validación de certificados garantiza que realmente se está comunicando con el servidor previsto.
Qué comprueba el cliente
Durante el handshake, el cliente verifica varios aspectos:
- La cadena llega hasta una raíz de confianza.
- El certificado se encuentra dentro de su período de validez.
- El certificado no ha sido revocado.
- El nombre de host coincide.
Coincidencia del nombre de host
El nombre de host al que se conectó debe coincidir con las entradas de Subject Alternative Name (SAN) del certificado.
El antiguo campo Common Name (CN) está obsoleto para este fin; los clientes modernos requieren SAN.
openssl x509 -in cert.pem -noout -ext subjectAltNameFechas de validez
Cada certificado tiene marcas de tiempo Not Before y Not After. Fuera de este intervalo, el certificado se rechaza.
openssl x509 -in cert.pem -noout -datesVerificación de la cadena de confianza
El cliente recorre la cadena desde el certificado hoja hasta una raíz en su almacén de confianza y verifica cada firma.
Si no existe ninguna ruta hasta una raíz de confianza, la validación falla aunque el certificado parezca correcto.
Comprobación de revocación
El cliente comprueba si el certificado fue revocado anticipadamente mediante OCSP o una CRL.
Muchos navegadores utilizan el grapado de OCSP o listas de revocación mantenidas para que las comprobaciones sean rápidas.
Restricciones de uso de claves
Los certificados declaran los usos permitidos en las extensiones Key Usage y Extended Key Usage.
Un certificado de servidor debe incluir serverAuth; un certificado de CA debe tener activado el indicador de CA. Los certificados utilizados indebidamente se rechazan.
Fijación de certificados
La fijación establece explícitamente el certificado o la clave pública esperados en el cliente, algo habitual en las aplicaciones móviles.
Incluso se rechaza un certificado válido, firmado por una CA, pero inesperado, lo que protege contra CA fraudulentas o comprometidas.
Cuando falla la validación
Entre los errores de validación más comunes se incluyen:
- NET::ERR_CERT_DATE_INVALID (caducado)
- NET::ERR_CERT_COMMON_NAME_INVALID (el nombre de host no coincide)
- NET::ERR_CERT_AUTHORITY_INVALID (emisor no confiable)
El peligro de omitir la validación
Desactivar la verificación de certificados, por ejemplo, con curl -k o verify=False, elimina toda protección contra la suplantación.
Esto nunca debe usarse en código de producción, ya que facilita los ataques de intermediario.
# DO NOT do this in production
curl -k https://example.comVerificación desde la línea de comandos
Puede ejecutar una comprobación de validación completa contra un servidor activo.
openssl s_client -connect example.com:443 \
-verify_hostname example.com -verify_return_errorComprobación rápida
Un desarrollador establece verify=False para silenciar un error de certificado en producción. ¿Qué riesgo introduce esto?
Resumen
Ha aprendido cómo realizan los clientes la validación de certificados.
- Las comprobaciones incluyen la confianza de la cadena, las fechas de validez, la revocación y el nombre de host (SAN).
- La fijación añade protección contra CA fraudulentas.
- No desactive nunca la validación en producción.
A continuación, veremos los ataques habituales contra TLS.
Preguntas frecuentes
¿La lección «Validación de certificados» es gratis?
Sí — el texto completo de «Validación de certificados» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Cyber Security Academy, actualiza a CoddyKit PRO. El curso de Cyber Security Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Validación de certificados»?
Verifique la identidad del servidor Practicas Cyber Security Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Cyber Security Academy?
No se requiere experiencia previa. Cyber Security Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 3 de 4.
¿Cuánto tiempo toma la lección «Validación de certificados»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Cyber Security Academy?
Sí. Cada lección de Cyber Security Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- El handshake de TLS
- Suites de cifrado
- Validación de certificados
- Ataques habituales contra TLS