Ir al contenido

”Se acercan los certificados de 47 días! ¿EstÔs preparado?

ActĆŗa ahora →

Comprensión de SBOM en CodeSign Secure de Encryption Consulting

SBOM en la firma de código

Al utilizar tecnología digital, garantizar la seguridad de la cadena de suministro de software se ha vuelto esencial debido a la creciente frecuencia y complejidad de los ciberataques. Incidentes recientes, como el ataque a la cadena de suministro de SolarWinds y la vulnerabilidad Log4Shell, han puesto de manifiesto la necesidad crítica de transparencia y seguridad en los componentes de software. La lista de materiales de software (SBOM, por sus siglas en inglés) desempeña un papel fundamental en este marco de seguridad al proporcionar información detallada sobre todos los componentes de una aplicación de software.

Al integrarse con la firma de código , los SBOM garantizan que el software permanezca auténtico e inalterado. No solo verifican la integridad y autenticidad del código, sino que también catalogan con precisión su composición, proporcionando una visión general completa de todos los componentes incluidos. El portal CodeSign Secure de Encryption Consulting LLC ofrece SBOM como una función clave que permite a los usuarios analizar su código en busca de vulnerabilidades antes de su implementación. Al generar un anÔlisis SBOM, el portal proporciona una visión clara de la estructura del software, lo que ayuda a los desarrolladores a publicar código seguro en plataformas como GitHub.

SBOM en la firma de código, definido como: escanear los componentes de un artefacto en busca de vulnerabilidades conocidas antes de firmarlo, de modo que nunca se aplique una firma a código que no supere el umbral de vulnerabilidad, y, opcionalmente, certificar el SBOM resultante con una firma vinculada al resumen del artefacto específico, para que los consumidores posteriores puedan verificar que la lista de componentes coincide con lo que realmente se envió, y no solo leer un documento que podría haber sido editado posteriormente.

Puntos Clave

  • El anĆ”lisis SBOM de CodeSign Secure se ejecuta antes de la firma, a modo de filtro: el código que supera el umbral de vulnerabilidad bloquea la firma en lugar de enviarse con una advertencia posterior.
  • Un SBOM sin firmar es simplemente un documento que cualquiera podrĆ­a editar a posteriori. Para que el SBOM tenga verdadero valor probatorio, debe estar vinculado al resumen del artefacto especĆ­fico mediante una certificación firmada, el mismo mecanismo que se utiliza para la procedencia de las compilaciones de SLSA.
  • Para conocer la superficie de ataque mĆ”s amplia de la cadena de suministro de software en la que esto encaja, consulte Introducción a la firma de código: Cómo proteger su cadena de suministro de software; para el mecanismo de atestación en sĆ­, vĆ©ase Procedencia de compilación y firma de SLSA en canalizaciones de CI/CD.

¿Qué es SBOM?

Una SBOM (Lista de Materiales de Software) es una lista completa de todos los componentes, bibliotecas, dependencias y detalles clave, como licencias y versiones, utilizados para crear una aplicación de software. Permite a las organizaciones comprender la composición de su software, identificar posibles riesgos de seguridad y garantizar el cumplimiento de las normativas del sector.

  • Identificación de vulnerabilidad: Los SBOM permiten a las organizaciones identificar componentes obsoletos o vulnerables, lo que permite realizar actualizaciones oportunas.
  • Cumplimiento Regulatorio: Los SBOM, exigidos por la orden ejecutiva de 2021 del gobierno de EE. UU. para los proveedores de software (Orden Ejecutiva 14028), garantizan el cumplimiento de estĆ”ndares como NIST, ISO 27001 y GDPR.
  • Gestión de riesgos: Al proporcionar visibilidad de la cadena de suministro de software, los SBOM ayudan a mitigar los riesgos de ataques a la cadena de suministro. Herramientas como Syft, Trivy y diversas herramientas SPDX (p. ej., SPDX SBOM Generator) se utilizan habitualmente para generar estas listas detalladas, lo que permite a su organización identificar y abordar las vulnerabilidades de sus componentes de software de forma proactiva.

¿CuÔl es la situación actual de las normas SBOM?

Dos formatos predominan: SPDX, ahora un estÔndar ISO (ISO/IEC 5962:2021) que se originó a partir del trabajo de seguimiento de licencias de código abierto de la Linux Foundation, y CycloneDX, el formato de OWASP centrado en la seguridad, diseñado específicamente para detectar vulnerabilidades y componentes obsoletos. El anÔlisis de CodeSign Secure es compatible con ambos, por lo que la elección del formato depende de si sus clientes finales o su marco de cumplimiento especifican uno en particular. La Orden Ejecutiva 14028 (mayo de 2021) estableció la obligatoriedad de los SBOM para las adquisiciones de software federales y constituye el fundamento normativo al que se remontan la mayoría de los requisitos de SBOM empresariales.

Beneficios de la SBOM

Los SBOM ofrecen ventajas significativas a lo largo del ciclo de vida del software, beneficiando a desarrolladores, compradores, operadores y al ecosistema en general. A continuación, se presentan los beneficios clave segĆŗn los roles de usuario, como Desarrollador, Comprador u Operador, basados ​​en información y estrategias del sector:

Funciones de Usuario Beneficios Ejemplo
Desarrolladores
  • Reduce el trabajo no planificado: Los SBOM ayudan a la identificación temprana de componentes vulnerables, minimizando asĆ­ las reparaciones inesperadas.
  • Gestiona dependencias: Realiza un seguimiento de las dependencias y las dependencias transitivas para simplificar ecosistemas de software complejos.
  • Garantiza el cumplimiento de la licencia: Enumera todas las licencias, lo que ayuda a los desarrolladores a evitar infracciones legales.
  • Admite revisión de código: Proporciona un inventario claro, lo que hace que las revisiones de código sean mĆ”s seguras y eficientes.

Por ejemplo, se anuncia una vulnerabilidad crítica (CVE) en una biblioteca de código abierto que utiliza una empresa de software financiero. El equipo de desarrollo puede consultar inmediatamente sus SBOM internos para todas sus aplicaciones.

En cuestión de minutos, identifican las aplicaciones específicas afectadas, incluyendo la versión de la biblioteca vulnerable. Pueden priorizar la aplicación de parches o actualizaciones a esas aplicaciones, minimizando su exposición a la nueva amenaza sin tener que revisar manualmente innumerables líneas de código.

Compradores
  • Identifica vulnerabilidades: Permite a los compradores evaluar el software en busca de riesgos de seguridad conocidos antes de la compra.
  • Verifica el abastecimiento: Garantiza que los componentes provengan de fuentes confiables, lo que reduce los riesgos de la cadena de suministro.
  • Garantiza el cumplimiento: Ayuda a cumplir con las polĆ­ticas regulatorias y organizacionales.
  • Planes para el final de la vida: Destaca los componentes que pueden llegar a perder soporte, lo que ayuda a la planificación a largo plazo.
  • Reduce los riesgos de integración: Proporciona información sobre la composición del software, minimizando los desafĆ­os de integración.

Por ejemplo, una gran empresa evalúa dos sistemas de gestión de RR. HH. de proveedores competidores. El proveedor A proporciona un SBOM detallado que muestra todas las bibliotecas de terceros, sus licencias y vulnerabilidades conocidas (con planes de remediación), mientras que el proveedor B no proporciona ningún SBOM.

El equipo de seguridad de la empresa puede utilizar el SBOM del Proveedor A para evaluar con confianza el nivel de seguridad de su producto, identificar posibles conflictos de licencias y demostrar la debida diligencia a los auditores, lo que hace que el "Proveedor A" sea una opción mucho mÔs atractiva y confiable.

de telecomunicaciones
  • Evaluación rĆ”pida de vulnerabilidad: Permite la identificación rĆ”pida de los componentes afectados cuando se descubren nuevas vulnerabilidades.
  • Impulsa mitigaciones independientes: Permite a los operadores aislar o mitigar riesgos mientras esperan parches de los proveedores.
  • Apoya el cumplimiento: Mejora el inventario de activos y demuestra adhesión a los estĆ”ndares de seguridad.
  • Reduce Costos: Agiliza la administración al concentrar los esfuerzos en los componentes crĆ­ticos.

Por ejemplo, se divulga públicamente una nueva vulnerabilidad crítica en un componente de servidor web de uso generalizado (p. ej., OpenSSL). El equipo de operaciones puede comparar esta vulnerabilidad con los SBOM de todas sus aplicaciones y componentes de infraestructura implementados. Esto les permite identificar al instante cada servidor o aplicación que utiliza la versión de OpenSSL afectada.

En lugar de una auditoría manual que consume mucho tiempo, pueden iniciar rÔpidamente una aplicación de parches específicos solo en los sistemas afectados, lo que reduce significativamente el tiempo medio de respuesta (MTTR) al incidente y mantiene la disponibilidad del sistema.

Consecuencias de no utilizar SBOM

No adoptar SBOM puede generar riesgos y vulnerabilidades considerables, especialmente considerando nuestro ciberespacio y las amenazas actuales.

ConsecuenciaMareas Ideales para Lecciones Ejemplo

Productos inseguros
Sin un SBOM, las vulnerabilidades en componentes de terceros pueden pasar desapercibidas, lo que aumenta el riesgo de ciberataques.Ataque a la cadena de suministro de SolarWinds (2020): Los atacantes insertaron código malicioso en una actualización de software legítima de SolarWinds, una empresa de gestión de TI ampliamente utilizada.

Un SBOM para el SolarWinds El software, si se hubiera utilizado correctamente, podría haber ayudado a detectar la presencia del componente malicioso no autorizado durante el proceso de compilación o implementación, previniendo potencialmente o limitando significativamente el impacto de este ataque generalizado a la cadena de suministro.
Actualizaciones de seguridad perdidasLa falta de visibilidad de los componentes dificulta saber cuÔndo se necesitan actualizaciones o parches, lo que deja el software expuesto.Vulnerabilidad de Log4Shell (2021): La vulnerabilidad crítica Log4Shell en la biblioteca Apache Log4j afectó a innumerables aplicaciones a nivel mundial.

Las organizaciones sin SBOM tuvieron grandes dificultades para identificar todas las instancias de Log4j en sus sistemas. Tuvieron que realizar enormes esfuerzos manuales para escanear las bases de código y las aplicaciones implementadas, lo que provocó retrasos en la aplicación de parches y una exposición prolongada a una grave vulnerabilidad de ejecución remota de código.
Desafíos legalesLas licencias no rastreadas pueden dar lugar a infracciones, lo que resulta en batallas legales, sanciones financieras y daños a la reputación.Violaciones de la GPL (numerosos casos): Muchas empresas se han enfrentado a acciones legales (o escrutinio público) por violar licencias de software de código abierto, particularmente la Licencia Pública General GNU (GPL).

Sin un SBOM que documente claramente las licencias de todos los componentes incluidos, una empresa podría distribuir inadvertidamente software que contenga código con licencia GPL sin proporcionar el código fuente requerido, lo que daría lugar a reclamos por infracciones, retiradas de productos y un daño significativo a la reputación, como se ha visto en casos que involucran a varios fabricantes de dispositivos integrados o distribuidores de software.
Requisitos de cumplimiento insatisfechosIndustrias como la atención médica requieren SBOM para cumplir con las normativas (por ejemplo, la política de "rechazo de aceptación" de la FDA). El incumplimiento puede retrasar el lanzamiento de productos y generar costos.Reglamento de Dispositivos Médicos (FDA): La FDA de EE. UU., a través de directrices y políticas, exige cada vez mÔs que los fabricantes de dispositivos médicos proporcionen SBOM para su software.

Una empresa de dispositivos médicos que no proporcione un SBOM detallado y preciso para un nuevo dispositivo podría ver su presentación rechazada por la FDA, lo que daría lugar a demoras significativas en la aprobación del producto, pérdida de oportunidades de mercado y costos financieros sustanciales asociados con la reelaboración y la nueva presentación.
Desarrollo ineficienteSin SBOM, los desarrolladores se enfrentan a retrasos en la respuesta a incidentes, desperdicio de recursos y dificultades para gestionar las dependencias, lo que conduce a un código excesivamente extenso.ā€œEl infierno de la dependenciaā€: Un equipo de desarrollo que construye una aplicación compleja sin un SBOM podrĆ­a encontrarse en el ā€œinfierno de las dependenciasā€, donde versiones conflictivas de las bibliotecas causan errores de compilación o errores de tiempo de ejecución.

Cuando se descubre una vulnerabilidad de seguridad, la ausencia de un SBOM obliga a los desarrolladores a rastrear manualmente las dependencias, lo que potencialmente implica pasar días o semanas identificando los módulos afectados y sus dependencias transitivas, lo que genera ineficiencia, demoras y un aumento en los costos de desarrollo.

Solución de firma de código empresarial

Obtenga una solución para todas sus necesidades criptogrÔficas de firma de código de software con nuestra solución de firma de código.

SBOM en la solución de firma de código de Encryption Consulting

El portal CodeSign Secure de Encryption Consulting LLC integra SBOM para ofrecer una solución robusta de firma de código y seguridad. A continuación, le mostramos cómo usar la función SBOM de nuestro CodeSign Secure:

Acceda a la función SBOM

  • Vaya a la sección Configuración del sistema en el portal CodeSign Secure. Función de acceso
  • Iniciar un escaneo

    • Haga clic en el botón Escanear código. Escanear código
    • Ingrese los detalles requeridos, incluido un token de acceso personal de GitHub (PAT) para acceder al repositorio. Ingresar PAT
      1. Para generar un PAT:
      2. Vaya a Configuración de GitHub > Configuración de desarrollador > Tokens de acceso personal. Generar PAT
      3. Seleccione ā€œTokens (clĆ”sico)ā€. Configuración de GitHub
      4. Haga clic en ā€œGenerar nuevo token (clĆ”sico)ā€. Fichas clĆ”sicas
      5. Agregue una nota de token y otorgue permisos para ā€œrepositorioā€ y ā€œflujo de trabajoā€. Generar ficha

    Subir código

  • Sube tu código como un archivo ZIP y haz clic en Enviar.
  • Subir código

    Revisar resultados

    • Si las vulnerabilidades estĆ”n por debajo del umbral especificado, un mensaje de Ć©xito confirma que el código es seguro. Mensaje de Ć©xito Interfaz de usuario de Ć©xito
    • Si las vulnerabilidades superan el umbral, un mensaje de advertencia le solicitarĆ” que aborde los problemas. Mensaje de advertencia

    Generar un SBOM responde a la pregunta "¿qué contiene este artefacto?". Sin embargo, por sí solo no responde a la pregunta "¿puedo confiar en que este SBOM describe realmente este artefacto?", ya que un SBOM sin firmar es un documento que cualquiera podría editar después de ejecutar el anÔlisis. Para subsanar esta deficiencia, se requiere una certificación: una declaración firmada que vincula el contenido exacto del SBOM con el resumen del artefacto específico que describe, de modo que un consumidor posterior que verifique la firma de la certificación pueda confiar en que los componentes enumerados coinciden realmente con lo que estÔ ejecutando, y no solo que alguien haya generado un archivo de apariencia plausible.

    Este es el mismo marco de certificación integral que utiliza la procedencia de compilación de SLSA, por lo que una canalización que ya produce procedencia firmada puede extender la misma infraestructura de firma para certificar sus SBOM en lugar de tratarlos como un flujo de trabajo separado. La puerta de vulnerabilidad de CodeSign Secure ejecuta el escaneo antes de la firma; al combinarlo con una certificación SBOM firmada, se cierra el ciclo de "esto pasó el escaneo" a "este artefacto específico, verificablemente, es lo que pasó el escaneo".

    VEX: Filtrando el ruido

    Un SBOM enumera todos los componentes; no indica si una vulnerabilidad CVE específica en alguno de ellos es realmente explotable en su compilación particular. El formato Vulnerability Exploitability eXchange (VEX) complementa el SBOM al permitir que el proveedor lo indique explícitamente, lo que reduce la saturación de alertas que supone la búsqueda de vulnerabilidades CVE que no se aplican al uso real de un componente en su artefacto.

    Conclusión

    La Lista de Materiales de Software es una herramienta importante para que las organizaciones aborden las complejidades del desarrollo de software moderno. Las SBOM permiten a las organizaciones gestionar riesgos, garantizar el cumplimiento normativo y crear aplicaciones seguras al brindar transparencia sobre los componentes de software.

    CodeSign Secure de Encryption Consulting LLC aprovecha SBOM para ayudar a los usuarios a analizar el código, identificar vulnerabilidades e implementar con confianza. AdemÔs, es una solución verdaderamente preparada para el futuro en materia de integridad del software. Proporciona un sólido soporte para compilaciones reproducibles, asegurando la reconstrucción consistente y verificable de los artefactos de software antes de la firma mediante validación hash previa y posterior. Asimismo, CodeSign Secure estÔ diseñado para facilitar la transición a la criptografía postcuÔntica (PQC), ayudando a las organizaciones a adaptar proactivamente sus procesos de firma para resistir las amenazas que plantean los futuros avances en computación cuÔntica.

    Al automatizar los flujos de trabajo, garantizar el cumplimiento y aprovechar las funciones de seguridad avanzadas, como el escaneo de vulnerabilidades, las compilaciones reproducibles y la criptografƭa postcuƔntica (PQC), CodeSign Secure permite a las organizaciones proteger sus activos de software y, al mismo tiempo, mantener la confianza en sus productos.

    Preguntas frecuentes

    ¿CodeSign Secure bloquea la firma si el anÔlisis SBOM encuentra vulnerabilidades?

    Sí, en función de un umbral configurable. El código que supere el umbral devuelve una advertencia y no se somete a la firma; el código que se encuentre dentro del umbral recibe una confirmación de éxito y puede firmarse.

    ¿Qué formatos SBOM admite CodeSign Secure?

    El escaneo es compatible con los dos formatos principales: SPDX (ISO/IEC 5962:2021) y CycloneDX. La elección del formato dependerÔ, por lo general, de los requisitos de sus clientes o de su marco de cumplimiento normativo.

    ¿Un SBOM es lo mismo que una certificación firmada?

    No. Un SBOM es la lista de componentes en sí; una certificación es una declaración firmada que vincula esa lista a un resumen de artefacto específico. Sin la certificación, un SBOM es simplemente un documento que alguien podría editar posteriormente.