Certificados de firma de código Son fundamentales para garantizar la autenticidad e integridad del software. Sin embargo, su robo puede permitir a los ciberdelincuentes distribuir código malicioso bajo la apariencia de legitimidad, siempre que también comprometan las claves privadas asociadas, ya que la vulneración de estas claves realmente permite la firma maliciosa. Estos certificados son objetivos atractivos para los atacantes porque cuentan con la confianza de organizaciones de renombre, lo que permite que el malware firmado eluda los controles de seguridad en sistemas como Windows y macOS.
El 31 de enero de 2023, GitHub, una plataforma líder de alojamiento de código, reportó una importante brecha de seguridad en la que atacantes robaron tres certificados de firma de código cifrados. Este incidente puso de relieve las vulnerabilidades incluso en los ecosistemas de desarrollo de software más robustos y el devastador potencial del robo de certificados.
En este blog, descubriremos la violación de GitHub, exploraremos los desafíos que enfrentaron, el impacto del robo y cómo podría haberse evitado.
Anuncios
Microsoft es propietario de GitHub, la plataforma más grande del mundo para el control de versiones y el desarrollo de software colaborativo, que alberga más de 100 millones de repositorios y presta servicio a más de 94 millones de desarrolladores en 2023. Con sede en San Francisco, GitHub proporciona herramientas para el alojamiento de código, el control de versiones y Canalizaciones de integración continua/implementación continua (CI/CD), que respalda millones de proyectos empresariales y de código abierto. Estos CI/CD y DevOps Las integraciones, si bien son poderosas, también presentan posibles superficies de ataque que los actores cibernéticos pueden explotar para comprometer la cadena de suministro de software.
El papel crucial de la plataforma en el ecosistema global de software la convierte en un objetivo de alto valor para los atacantes que buscan explotar certificados de confianza con fines maliciosos. GitHub actúa como un eslabón crucial en la cadena de confianza del software, donde sus certificados garantizan la legitimidad del software distribuido a través de su plataforma. Esta posición clave la convierte en un objetivo excepcionalmente atractivo para los atacantes, ya que comprometer los certificados de GitHub podría permitirles inyectar código malicioso en una amplia gama de software de confianza, socavando así la base misma de la seguridad del software para millones de usuarios.
Naturaleza y cronología de la infracción
La brecha de seguridad fue facilitada por un token de acceso personal (PAT) comprometido, que otorgó a los atacantes acceso no autorizado. Se trata de un campo similar a una contraseña, asociado a una cuenta de equipo, diseñado para que herramientas y scripts automatizados interactúen con GitHub. Es probable que el PAT se explotara debido a medidas de seguridad inadecuadas, aunque el método exacto de vulneración aún no está claro. Los atacantes tuvieron acceso durante aproximadamente un día antes de que se detectara la intrusión. Los certificados robados incluían:
- Un certificado de ID de desarrollador de Apple, válido hasta 2027.
- Dos certificados emitidos por DigiCert, con fechas de vencimiento del 4 de enero de 2023 y el 1 de febrero de 2023, respectivamente.
Es importante destacar que todos los certificados robados estaban cifrados y protegidos con contraseña; no había evidencia de que los atacantes los descifraran o usaran maliciosamente. Este cifrado probablemente mitigó los riesgos inmediatos, pero la posibilidad de abuso seguía siendo una preocupación importante.
Los hechos se desarrollaron de la siguiente manera:
- 6 de diciembre de 2022:Los atacantes utilizaron el PAT comprometido para clonar repositorios, incluidos aquellos que contenían los certificados de firma de código.
- 7 de diciembre de 2022GitHub detectó el acceso no autorizado y revocó inmediatamente el PAT comprometido, deteniendo el acceso futuro.
- Enero 31, 2023GitHub reveló públicamente el incidente a través de una publicación de blog, revelando el robo y describiendo las medidas de respuesta.
- Febrero 2, 2023Como medida de precaución, GitHub revocó inmediatamente los tres certificados robados.
El hecho de que los atacantes obtuvieran y mantuvieran acceso no autorizado antes de ser detectados indica una posible deficiencia en los sistemas de monitorización y alerta en tiempo real de GitHub para detectar actividades sospechosas asociadas con cuentas de máquina y PAT. Si bien GitHub actuó con rapidez una vez identificado el acceso, este periodo de acceso no detectado subraya la importancia crucial de una detección robusta de anomalías y una monitorización continua de la seguridad, especialmente para un entorno de infraestructura crítica como GitHub.
Desafíos
El certificado de firma de código de GitHub planteó varios desafíos importantes:
-
Acceso no autorizado a los certificados
El 6 de diciembre de 2022, atacantes obtuvieron acceso no autorizado a repositorios seleccionados de GitHub y robaron tres certificados de firma de código cifrados: un certificado de Apple Developer ID y dos certificados emitidos por DigiCert. Aunque los certificados estaban protegidos con contraseña, su robo expuso el riesgo de que los atacantes intentaran descifrarlos y usarlos indebidamente para firmar código malicioso.
-
Detección retrasada
La brecha pasó desapercibida hasta el 7 de diciembre de 2022, cuando GitHub identificó actividad sospechosa. Este retraso permitió a los atacantes extraer los certificados, lo que pone de relieve el desafío de la monitorización en tiempo real en entornos de desarrollo complejos.
-
Vulnerabilidades en la gestión de certificados
El incidente reveló vulnerabilidades en el almacenamiento de certificados y los controles de acceso. Un RBAC adecuado garantiza que las cuentas, como la comprometida, solo tengan los permisos mínimos necesarios para realizar las tareas asignadas, lo que impide el acceso generalizado a activos sensibles como los certificados de firma de código.
Si bien los certificados estaban encriptados, se almacenaron en repositorios accesibles para los atacantes, lo que sugiere un uso insuficiente de soluciones de almacenamiento seguro como Módulos de seguridad de hardware (HSM), ya que son dispositivos criptográficos diseñados específicamente para almacenar claves criptográficas en un entorno a prueba de manipulaciones, lo que garantiza que nunca salgan del dispositivo, ni siquiera durante las operaciones de firma. La investigación de GitHub confirmó que no se produjo ningún uso malicioso, pero la posibilidad de abuso seguía siendo preocupante.
-
Complejidad de revocación y respuesta
La revocación de los certificados robados requirió la coordinación con autoridades de certificación (CA) como DigiCert y Apple, un proceso que requería mucho tiempo e interrumpía las operaciones de GitHub. El certificado Apple Developer ID, válido hasta 2027, planteó un desafío particular, ya que requería que Apple supervisara el uso indebido de ejecutables firmados. Estos procesos de revocación pueden ser muy complejos y lentos; por lo tanto, el uso de soluciones automatizadas podría agilizar significativamente la detección de certificados comprometidos, acelerar el proceso de revocación y minimizar la interrupción operativa causada por estos incidentes.
Estos desafíos resaltan algunos problemas más grandes en la industria, donde una gestión deficiente de certificados y medidas de seguridad insuficientes pueden dejar a las organizaciones enfrentando riesgos considerables.
Impacto
El robo de los certificados de firma de código de GitHub tuvo implicaciones de gran alcance, aunque no se confirmó ningún uso malicioso:
-
Potencial de distribución de malware
Si los atacantes hubieran descifrado los certificados robados, podrían haber firmado software malicioso, eludiendo las comprobaciones de seguridad en sistemas Windows y macOS. Según el informe de IBM sobre el Coste de las Filtraciones de Datos de 2024, el coste medio global de una filtración de datos ronda los 4.9 millones de dólares, lo que refleja la posible gravedad de este tipo de ataques.
-
Daño reputacional
La reputación de GitHub como plataforma confiable estaba en riesgo, ya que la brecha de seguridad podría haber erosionado la confianza de sus 94 millones de usuarios. Un estudio de investigación señala que los ataques de malware, facilitados por certificados robados, pueden dañar significativamente la credibilidad de una organización, lo que podría provocar pérdidas de negocio.
-
Interrupción operativa
La respuesta de GitHub implicó revocar los certificados robados el 2 de febrero de 2023 y emitir otros nuevos, lo que interrumpió los flujos de trabajo de desarrollo.
-
Riesgos regulatorios y de cumplimiento
La infracción generó inquietudes sobre el cumplimiento de estándares como GDPR y los requisitos del Foro CA/B, ya que los certificados robados podrían provocar violaciones de datos si se utilizan incorrectamente.
-
Preocupaciones de toda la industria
El incidente subrayó la creciente amenaza del robo de certificados de firma de código, con un aumento del 742 % en los ataques a la cadena de suministro según un estudio en los últimos años. Esto motivó un renovado enfoque en la protección de las claves privadas y certificados En toda la industria del software. Más allá de las implicaciones técnicas, estas infracciones pueden erosionar gravemente la confianza de los desarrolladores en plataformas como GitHub, ya que afectan directamente la confianza que los usuarios depositan en dichas herramientas y plataformas, de las que dependen a diario.
Además, el incidente tuvo un impacto indirecto pero significativo en la vasta comunidad de colaboradores de código abierto, que dependen de la integridad de GitHub como base para su trabajo colaborativo y la distribución de sus proyectos.
El potencial de la brecha para permitir la distribución generalizada de malware realmente pone de relieve la importancia de contar con sólidas medidas de protección de certificados. La revocación de los certificados tuvo implicaciones directas para los usuarios de las aplicaciones afectadas:
- GitHub Desktop para MacLas versiones 3.0.2 a 3.1.2 fueron invalidadas, ya que estaban firmadas con los certificados comprometidos. Se recomendó a los usuarios actualizar a la última versión, publicada el 4 de enero de 2023, que incluía nuevos certificados.
- AtomLas versiones 1.63.0 y 1.63.1 también fueron invalidadas y eliminadas de la página de lanzamientos. Se indicó a los usuarios que actualizaran a la versión 1.60.0, teniendo en cuenta que Atom se había descontinuado oficialmente en diciembre de 2022.
- Aplicaciones no afectadasGitHub Desktop para Windows no se vio afectado, ya que utilizaba diferentes mecanismos de firma.
¿Cómo podría la consultoría de cifrado ayudar a prevenirlo?
La solución CodeSign Secure de Encryption Consulting ofrece herramientas integrales para prevenir incidentes como el robo de certificados de GitHub. Así es como podría haber mitigado los riesgos:
-
Almacenamiento seguro de claves con HSM
En lugar de depender de un almacenamiento de repositorio potencialmente vulnerable, CodeSign seguro aprovecha la conformidad con FIPS 140-2 Nivel 3 Módulos de seguridad de hardware (HSM)Esto es crucial porque los HSM proporcionan un entorno aislado y a prueba de manipulaciones donde se generan y utilizan claves privadas, lo que garantiza que nunca salgan del dispositivo.
En el caso del robo de certificados de firma de código de GitHub, esto habría significado que incluso si los atacantes hubieran obtenido acceso a repositorios que contenían certificados cifrados, las claves privadas correspondientes, esenciales para la firma real, habrían permanecido seguras y totalmente inaccesibles dentro de los HSM.
-
Proveedor de almacenamiento de claves personalizado (KSP)
El KSP propietario de Encryption Consulting permite el hash del lado del cliente, donde el hash criptográfico del código se calcula localmente sin exponer la clave privada al usuario ni a la aplicación. Esto ayuda a garantizar que las operaciones de firma se realicen de forma segura dentro del HSM, eliminando el riesgo de exposición de la clave privada, incluso en caso de robo de certificados.
-
Firma y auditoría automatizadas
Los procesos de firma manual son propensos a errores y ofrecen menos visibilidad. CodeSign Secure automatiza el proceso de firma directamente en las canalizaciones de CI/CD, garantizando que solo el código autorizado se firme de forma consistente. Aún más importante, se generan registros de auditoría completos para cada operación de firma, lo que habría permitido a GitHub detectar el acceso no autorizado en tiempo real, lo que podría haber impedido el robo antes de que ocurriera.
-
Control y Monitoreo de Acceso
CodeSign Secure implementa estrictos controles de acceso basados en roles, lo que garantiza que solo las personas autorizadas y los procesos automatizados puedan iniciar operaciones de firma. Además, su integración con Gestión de eventos e información de seguridad (SIEM) Sistemas como Splunk permiten una monitorización y alertas centralizadas en tiempo real.
-
Cumplimiento de los estándares de la industria
Nuestra solución CodeSign Secure también le ayudará a garantizar el cumplimiento de Foro CA / B y los requisitos del RGPD y ayudan a su organización a mantener prácticas de firma y certificados seguros.
Conclusión
El robo del certificado de firma de código de GitHub en 2023 sirve como un importante recordatorio de las vulnerabilidades en los ecosistemas de desarrollo de software. El robo de tres certificados cifrados expuso riesgos significativos, con posibles costos y daños para la organización. La respuesta de GitHub mitigó el daño inmediato, pero la brecha de seguridad subrayó la necesidad de reforzar la seguridad de los certificados.
Consultoría de cifrado CodeSign seguroCon almacenamiento basado en HSM, firma automatizada y monitorización robusta, ofrece una defensa proactiva contra estas amenazas. Dado que los ciberdelincuentes atacan los certificados de firma de código, las organizaciones deben priorizar la gestión segura de claves para proteger su software, sus usuarios y su reputación. Proteger la cadena de suministro de software no es responsabilidad exclusiva de las empresas, sino un imperativo común para toda la industria, que exige esfuerzos colaborativos y la adopción de las mejores prácticas para mantener la confianza digital.
