Comprender las amenazas, vulnerabilidades y riesgos en ciberseguridad
26 de octubre de 2020
Los certificados de firma de código y los certificados SSL/TLS desempeñan funciones distintas pero complementarias en la ciberseguridad moderna, ayudando a las organizaciones a proteger tanto su software como sus comunicaciones web. La firma de código garantiza la integridad del software y verifica la identidad del editor, lo que evita la manipulación y los ataques a la cadena de suministro. Los certificados SSL/TLS cifran los datos en tránsito y autentican los sitios web, lo que elimina las advertencias del navegador que indican que la conexión «no es segura» y protege la información confidencial. Juntos, estos certificados establecen una confianza de extremo a extremo, reducen los riesgos de seguridad a lo largo del ciclo de vida del software y respaldan los marcos de seguridad de «confianza cero» (Zero Trust). Comprender las diferencias entre la firma de código y los certificados SSL/TLS ayuda a las organizaciones a implementar la protección adecuada en cada capa.
La firma de código y los certificados SSL/TLS se encuentran entre los mecanismos más utilizados en la infraestructura de clave pública (PKI). Los certificados de firma de código protegen el software, mientras que los certificados SSL/TLS cifran las comunicaciones. Ambos desempeñan un papel fundamental a la hora de fomentar la confianza y reforzar las prácticas modernas de ciberseguridad.
Ambos se ajustan al estándar X.509 establecido por la Unión Internacional de Telecomunicaciones, que define cómo se distribuyen las claves públicas y cómo se verifican las identidades. Aunque la firma de código y los certificados SSL/TLS cumplen funciones distintas, a menudo no se trata de una elección entre uno u otro para las empresas actuales. Muchas organizaciones necesitan ambos para hacer frente a diferentes niveles de riesgo. Comprender sus diferencias ayuda a las organizaciones a implementar los certificados adecuados por los motivos correctos.
Los certificados de firma de código confirman que el software procede de editores conocidos y, al mismo tiempo, verifican que no ha sido alterado. Los certificados SSL/TLS proporcionan cifrado y autenticación para proteger los datos que se intercambian entre navegadores y servidores.
La firma de código garantiza la integridad del software y las aplicaciones, mientras que SSL/TLS protege la información en tránsito.
La firma de código verifica las identidades mediante la firma digital de archivos ejecutables y scripts. Este proceso se lleva a cabo mediante certificados de firma de código. Emitidos por autoridades de certificación (CA), los certificados de firma de código son credenciales que vinculan identidades verificadas a claves criptográficas. Esto permite a los desarrolladores y editores de software firmar el software y los archivos ejecutables para confirmar que no han sido modificados desde su lanzamiento.
Durante la firma, el código se convierte en una huella digital mediante una función hash, se cifra con la clave privada del editor y, opcionalmente, se le añade una marca de tiempo para preservar la validez de la firma incluso después de que caduque el certificado. El software debidamente firmado reduce las advertencias de «editor desconocido» y puede ayudar a establecer la reputación de SmartScreen con el tiempo.
Entre las ventajas de los certificados de firma de código se incluyen la verificación de la identidad de los editores, la reducción del riesgo de modificaciones no autorizadas del código y de ataques a la cadena de suministro, y un menor número de advertencias de seguridad, lo que puede mejorar las tasas de instalación. A gran escala, la firma de código contribuye a la protección de la marca al indicar que el software es auténtico y no ha sido manipulado. A través de la firma de código, la criptografía refuerza la integridad del software y la seguridad general.
Los certificados de firma de código están disponibles en dos formatos principales:
Los certificados de firma de código OV ofrecen una emisión más rápida y una validación básica, mientras que los certificados de firma de código EV ofrecen el máximo nivel de seguridad.
El protocolo criptográfico heredado conocido como Secure Sockets Layer (SSL) se diseñó originalmente para proteger los datos intercambiados entre navegadores y servidores. Desde entonces, ha quedado obsoleto en favor del protocolo Transport Layer Security (TLS), pero el término SSL sigue utilizándose ampliamente para referirse a la necesidad de conexiones web cifradas y autenticadas.
Los certificados SSL/TLS son certificados digitales que se utilizan para verificar identidades y facilitar el cifrado, de modo que los datos no puedan ser interceptados ni alterados durante su transmisión. En el caso de los sitios web, estos certificados habilitan el protocolo HTTPS (HyperText Transfer Protocol Secure) y activan el icono del candado o la llave en la barra de direcciones del navegador.
Los «handshakes» criptográficos desempeñan un papel fundamental en el establecimiento de la protección SSL/TLS. Estos «handshakes» confirman las identidades y crean claves de sesión compartidas. El proceso de «handshake» garantiza que todos los datos intercambiados entre el navegador y el servidor estén cifrados.
Entre las ventajas de los certificados SSL/TLS se incluyen la comunicación autenticada y la confidencialidad de los datos. Estas constituyen la base de la confianza en la comunicación digital, lo que refuerza la seguridad y la reputación general de la marca.
Los certificados SSL pueden adoptar diversas formas, clasificadas en función del nivel de validación y del número de dominios o subdominios que deben proteger. Entre los ejemplos de certificados SSL/TLS se incluyen:
Característica / Finalidad | Certificados de firma de código | Certificados SSL/TLS |
Objetivo principal | Confirmar la identidad del editor y la integridad del software | Cifrar y autenticar los datos en tránsito |
Qué protegen | Scripts, paquetes de software, archivos ejecutables, actualizaciones | Sesiones de navegador y tráfico web |
Amenazas mitigadas | Manipulación, advertencias de editor desconocido, reducción del riesgo de ataques a la cadena de suministro | Interceptación de datos, advertencias del navegador de «conexión no segura», ataques de suplantación de identidad |
Tipos disponibles | Validación de organización (estándar u OV), validación extendida (EV) | Validación de dominio (DV), validación de organización (OV), validación extendida (EV), dominio único, multidominio, comodín |
Cuándo se aplica la protección | Antes de la instalación o la ejecución | Mientras el tráfico está en tránsito |
La firma de código utiliza firmas digitales para garantizar la integridad del software, mientras que SSL/TLS cifra los datos en tránsito. Ambas se basan en la criptografía de clave pública, pero cumplen funciones distintas: la firma de código establece la confianza dentro del software, mientras que SSL/TLS aporta confianza a las conexiones.
Tanto la firma de código como los certificados SSL/TLS cumplen funciones de seguridad fundamentales: juntos, establecen una confianza de extremo a extremo, lo que repercute en todo el ciclo de vida del software. Sus diferencias se reducen, en gran medida, al ámbito en el que se proporciona la protección:
Entre los ataques destructivos relacionados con código comprometido se incluyen el ataque NotPetya de 2017 (que implicó una actualización maliciosa distribuida a través de un software de contabilidad ucraniano) y el ataque a SolarWinds Orion (que implicó un compromiso de la cadena de suministro que provocó una infiltración generalizada).
Muchos ataques se han relacionado con problemas de SSL/TLS; la filtración de datos de Equifax de 2017, por ejemplo, se debió a un certificado SSL/TLS caducado que desactivó un sistema de supervisión clave, lo que permitió a los atacantes pasar desapercibidos.
Las organizaciones que desarrollan software pueden necesitar tanto la firma de código como certificados SSL/TLS, especialmente si el software se distribuye a través de sitios web o portales de clientes. Sin la firma de código, las organizaciones carecen de garantías criptográficas sobre la integridad del software y la identidad del editor. Sin embargo, incluso si está debidamente firmado, la distribución de software sigue siendo vulnerable sin certificados SSL/TLS. Los detalles de las licencias o la información de los clientes podrían verse comprometidos si se permite que circulen por las redes sin cifrado.
En conjunto, la firma de código y los certificados SSL/TLS respaldan los modelos «Zero Trust», que eliminan la confianza implícita y exigen la verificación del software, las redes y las identidades. Mediante la firma de código, las organizaciones evitan confiar en el software de forma predeterminada, mientras que SSL/TLS impide la confianza implícita en las conexiones o las vías de comunicación.
Las empresas recurren a los certificados de firma de código para proteger la integridad del software y a los certificados SSL/TLS para proteger las comunicaciones y los datos en tránsito. Como autoridad de certificación (CA) líder, Sectigo ofrece una gama completa de certificados de firma de código y SSL/TLS para dar soporte a las organizaciones en ambos casos de uso.
A medida que aumenta el volumen de certificados y se reducen los períodos de validez, la gestión de ambos tipos de certificados digitales en entornos complejos o distribuidos se vuelve cada vez más difícil. Sin una supervisión centralizada, los certificados caducados o implementados de forma inconsistente pueden crear brechas de seguridad. El seguimiento manual se vuelve rápidamente insostenible, lo que hace que la automatización sea cada vez más importante para mantener la continuidad y la confianza.
Sectigo ofrece tanto los certificados como la plataforma de gestión que las organizaciones necesitan para operar a gran escala. Sectigo Certificate Manager (SCM) centraliza y automatiza la gestión del ciclo de vida de los certificados (CLM), agilizando la detección, la emisión y las renovaciones.
26 de octubre de 2020
5 de noviembre de 2024