Herramientas SBOM: características clave para generar SBOM

Cada vez más empresas reconocen la importancia de un SBOM actualizado como parte de cada producto y nuevo lanzamiento. La NSA incluso publicado un documento alentar a las empresas a adoptar esta herramienta para aumentar la conciencia cibernética y proteger mejor sus cadenas de suministro de software. Incluso si llegó a la conclusión de que generar un SBOM es lo correcto, es posible que no esté seguro de cómo hacerlo, qué herramientas utilizar o cómo implementarlas. Existen múltiples herramientas de generación de SBOM en el mercado, algunas son propietarias, otras gratuitas y otras son herramientas de código abierto. En este artículo, cubriremos las características clave que debe tener su herramienta de generación de SBOM para que sea la adecuada para sus necesidades. 

Formatos SBOM

Hay dos principales Formatos SBOM utilizados actualmente en el mercado: SPDX y CycloneDX. 

Intercambio de datos de paquetes de software (SPDX) es un proyecto SBOM de código abierto y legible por máquina de la fundación Linux. La última versión del SPDX fue diseñada de acuerdo con el estándar de la NTIA para 'Elementos mínimos para una lista de materiales de software.' Enumera los componentes, derechos de autor, licencias y referencias de seguridad de un software.

CiclónDX (CDX) También es un formato SBOM de código abierto y legible por máquina desarrollado por la comunidad Open Web Application Security Project (OWASP). Como formato BOM, CycloneDX tiene otras aplicaciones más allá de la preparación de listas de materiales de software. También se puede utilizar para compilar componentes, vulnerabilidades y servicios de hardware y sistemas en la nube.

Antes de comenzar a comprobar las distintas herramientas, considere qué formato se adapta mejor a sus necesidades. Es mejor no sólo considerar el momento actual sino también tus necesidades futuras, ya que una vez que te comprometas con un determinado formato probablemente te resultará más fácil mantenerlo. Considere los usos que verán sus SBOM y las herramientas que utilizará para analizar los datos. Si no está seguro de qué formato elegir, busque una herramienta que pueda generar ambos formatos.

Características clave de las herramientas SBOM

A continuación se muestran algunas características que debe buscar en una buena herramienta de generación de SBOM: 

Colección SBOM tanto de SCM como del producto final – Obtener una cobertura total de su producto es clave para un buen SBOM. Es bien sabido que en la etapa de desarrollo, no siempre se incorporan todas las dependencias y se integran en el proyecto; eso es algo que normalmente se hace sólo en la compilación final al final de su proceso de CI/CD. Obtener un SBOM de su SCM y su producto final le permite comparar los dos y también asegurarse de que no se hayan realizado cambios no deseados en ningún archivo o carpeta en las etapas intermedias. Se pueden comparar archivos y carpetas entre SBOM comparando los valores hash calculados para cada uno. Tener una herramienta que pueda hacer eso automáticamente le ahorraría mucho tiempo y preocupaciones.

 

Análisis SBOM – El SBOM es un archivo con muchos datos. Es mejor contar con un software creado para analizarlo en busca de la información que desea recibir. Por supuesto, crear dicho software usted mismo es lento y requiere mucho tiempo, por lo que es mucho mejor obtener una herramienta que ya incluya el software de análisis para que pueda verificar los informes resultantes en lugar de intentar hacer cara o cruz de un archivo SBOM de miles de líneas. . Algunos informes que quizás desee considerar son informes completos de vulnerabilidad para todas las dependencias, un informe sobre cualquier componente desactualizado utilizado en su software, un informe sobre todas las licencias de código abierto utilizadas y un informe sobre el estado relativo de las aplicaciones de código abierto. componentes fuente utilizados. Este último podría utilizar elementos como el Cuadro de mando OpenSSF dar una puntuación imparcial a cada paquete utilizado.

Automatización SBOM y almacenamiento seguro – Parte de los principios del marco de seguridad de SLSA es hacer que cada característica de seguridad sea lo más automática y difícil de manipular posible. La idea es que permitir que las personas manipulen los resultados de las funciones de seguridad simplemente dejaría una oportunidad para la cancelación o manipulación de esa función según surja la necesidad. Como parte de ese concepto, puede buscar una herramienta SBOM que pueda automatizarse completamente para ejecutarse de forma independiente en cada proceso de CI/CD o ejecución de compilación sin necesidad de intervención de ningún factor humano. Además, busque una herramienta SBOM que almacene la evidencia en un lugar seguro para que solo el personal validado adecuadamente pueda acceder a ella. Eso garantizaría que las pruebas de SBOM no pudieran manipularse ni eliminarse sin importar las circunstancias.   

Análisis continuo de SBOM – Otra ventaja potencial de que un tercero almacene sus SBOM es permitirle a ese tercero escanearlos continuamente en busca de nuevas vulnerabilidades. Constantemente se descubren y reportan nuevas vulnerabilidades e incluso un paquete que se sabe que hoy está limpio puede no seguir siéndolo mañana. Tener una función SBOM que escanee continuamente todos sus SBOM y busque nuevas vulnerabilidades, notificándole cualquier hallazgo, garantizaría que incluso si no crea un nuevo SBOM cada día, semana o mes, aún así no lo tomará desprevenido. una nueva vulnerabilidad en un paquete previamente limpio que ha incluido en su producto.

SBOM intercambio inteligente – Una razón importante para tener un buen SBOM, además de tener una fuente para verificar posibles problemas en la cadena de suministro de software, es compartirlo con otros. Es posible que desee compartir la información con otros equipos internos, con clientes, contratistas externos o auditores. Por supuesto, siempre puede enviar por correo electrónico un archivo SBOM a una parte interesada, pero si se tienen en cuenta las frecuentes actualizaciones de software y, por tanto, los nuevos SBOM, esto podría resultar muy tedioso muy rápidamente. Es mucho mejor tener una herramienta que tenga una capacidad de compartir incorporada para que pueda definir una lista de suscriptores y los nuevos SBOM con o sin sus informes adjuntos se compartirán automáticamente según el proyecto, sus suscriptores, su nivel de interés, etc. .   

Avisos de SBOM – Como ya mencionamos, un SBOM puede incluir miles de dependencias. Esperar un certificado de buena salud (cero vulnerabilidades) no es realista. Siempre tendrás vulnerabilidades. La gran pregunta es ¿esas vulnerabilidades se pueden explotar en la configuración exacta de su producto? Sólo los desarrolladores pueden responder esa pregunta, pero debe asegurarse de que su herramienta SBOM tenga una función que le permita compartir estos hallazgos. No querrás tener que responder la misma pregunta sobre vulnerabilidad 1000 veces. Tener la capacidad de agregar avisos a su SBOM señalando el estado exacto de cada vulnerabilidad encontrada le permitiría mostrarles a sus clientes y socios que está al tanto y compartir los resultados una vez que sus desarrolladores hayan verificado que una vulnerabilidad en particular es no explotable en su producto.

Por dónde empezar con su herramienta de generación de SBOM

Hay muchas otras características que puedes buscar y encontrar en una herramienta de generación de SBOM, pero creo que nuestra lista de características deja claro que una buena herramienta de SBOM es más que un elemento solitario. Lo mejor es encontrar un sistema completo que incorpore la generación, el análisis (tanto puntual como continuo) de SBOM, los informes y el intercambio. 

Teniendo en cuenta la creciente atención por parte de los elementos regulatorios en los EE. UU., parece que no pasará mucho tiempo antes de que un SBOM adjunto sea un estándar para cada nueva versión de software. Cuando eso suceda, querrás tener ya la mejor herramienta seleccionada e incorporada a tu SDLC. También me gustaría señalar que un SBOM no puede infringir su IP: no "mira" ningún código y sólo escanea nombres de archivos, versiones y similares. Eso significa que compartir SBOM o almacenarlos en una ubicación segura por parte de un tercero confiable no pone en peligro de ninguna manera su seguridad o IP.

Servicios como la plataforma Scribe Security pueden ofrecerle todas las funciones cubiertas en este artículo y se agregan más funciones todo el tiempo. No dude en consultar nuestra plataforma y ver qué otras características incluye nuestra herramienta de generación de SBOM que podrían beneficiarlo a usted y a su organización.