Este artículo fue escrito junto a Viktor Kartashov y Daniel Nebenzahl.
La prueba de fuego del auditor: ¿puede usted probar sus construcciones?
¿Puedes demostrar, de forma definitiva, que cada imagen de contenedor que envías se construyó exactamente como afirmas?
La mayoría de los auditores esperan una respuesta rápida y segura, no semanas de frenética refactorización de YAML. El marco SLSA (Niveles de la Cadena de Suministro para Artefactos de Software) proporciona la base para esa prueba: procedencia estructurada y a prueba de manipulaciones.
Pero aquí está el problema: tradicionalmente, conectar un generador de procedencia en cada flujo de trabajo de CI rápidamente se convierte en un juego de golpear topos:
- ¿Docenas de repositorios? Esto significa innumerables relaciones públicas para revisar y fusionar.
- ¿Cambios en el pipeline? Mantenimiento manual constante.
- ¿Construcciones históricas? No existe una forma sencilla de recrear evidencia de lanzamientos anteriores.
Scribe Security elimina esa fricción con SLSA on Scale. Impulsado por nuestro nivel superior Plataformas CLIRecopila de forma inteligente sus registros de CI existentes, detecta automáticamente cada creación de imagen y emite una procedencia completa e incompleta (sin firmar para SLSA Nivel 1 o firmado para SLSA Nivel 2), todo desde un único comando que no requiere ninguna configuración preliminar.
Plataformas CLI: El cambio de paradigma sin contacto en la procedencia
Enfoque tradicional | CLI de plataformas Scribe |
Incorpore un paso de generador en cada trabajo de CI | Cero ediciones de canalización — analiza registros después de La construcción se completa |
Es difícil rellenar compilaciones antiguas | Crea procedencia retroactivamente de ejecuciones de flujo de trabajo anteriores |
Esfuerzo lineal por repo | Un comando escala de 10 a 1,000+ repositorios |
Cómo ocurre la magia: automatizando la confianza
La CLI de Scribe Platforms realiza una danza sofisticada detrás de escena para brindar procedencia SLSA automatizada, todo sin interferir con sus compilaciones existentes:
- Cosecha troncos: Scribe se conecta a su sistema CI/CD (actualmente GitHub Actions, con soporte para GitLab y Jenkins próximamente) para obtener registros de compilación.
- Detecta cada compilación: Sin ninguna configuración especial en sus pipelines, Scribe identifica de forma inteligente los comandos Docker, Podman o Buildah para señalar con precisión la creación de cada imagen.
- Extrae metadatos clave: Los detalles críticos como etiquetas de imágenes, resúmenes criptográficos, identificaciones de ejecutores, argumentos de compilación y marcas de tiempo se extraen directamente de estos registros.
- Genera SBOM vinculados: Para una trazabilidad completa, Scribe crea automáticamente ambos fuente Lista de materiales de software (SBOM) y imagen SBOM, vinculándolos directamente a la procedencia de la construcción.
- Procedencia de It Crafts SLSA: Con estos datos enriquecidos, Scribe luego construye una declaración de procedencia SLSA totalmente compatible para cada imagen.
- Firma (Opcional) para Nivel 2: Con solo agregar una bandera, Scribe se integra con su capacidad de firma (X509, Pub-Priv, Sigstore o su KMS preferido) para firmar criptográficamente la procedencia, elevándola al Nivel 2 de SLSA.
- Valida y reporta: Fundamentalmente, Scribe ejecuta automáticamente archivos predefinidos. SLSA.l1 or SLSA.l2 Iniciativas basadas en la evidencia. Esto valida su integridad y genera un informe SARIF completo, que también se firma para el cumplimiento de Nivel 2.
Todos los artefactos generados pueden permanecer locales o cargarse de forma segura en Scribe Hub para un almacenamiento a largo plazo y a prueba de manipulaciones.
Más allá de la generación: Demostrando el cumplimiento de la política como código
Generar la procedencia es fundamental, pero demostrar su cumplimiento es lo que realmente satisface a los auditores. Inmediatamente después de que Scribe genere la procedencia SLSA, ejecuta automáticamente iniciativas basadas en esa evidencia.
Estas iniciativas actúan como auditores automatizados, comprobando aspectos como:
- ¿La procedencia está bien formada y completa?
- ¿Están presentes y precisos todos los campos necesarios?
- ¿Son válidos y accesibles los SBOM vinculados?
- ¿La procedencia fue firmada criptográficamente por las identidades esperadas?
¿El resultado? Un informe SARIF completo que detalla su estado de cumplimiento. Para el Nivel 2, este informe también está firmado, lo que proporciona una respuesta clara, legible por máquina y verificable para cualquier auditor.
Un ejemplo rápido: cómo obtener la procedencia SLSA con Scribe-Security 🚀
La CLI de Plataformas de Scribe-Security optimiza la generación de la procedencia de SLSA para sus compilaciones, ofreciendo un comando unificado para lograr seguridad de Nivel 1 (sin firmar) y Nivel 2 (firmada). El factor diferenciador clave es la presencia del argumento –valint.sign.
Para obtener la procedencia SLSA para todas las compilaciones basadas en etiquetas en su repositorio scribe-security/valint en GitHub, debe ejecutar el siguiente comando:
Bash
Luego, Scribe entra en acción: escanea flujos de trabajo recientes de GitHub, detecta de manera inteligente las compilaciones de imágenes, recopila todos los datos necesarios y escribe una procedencia SLSA completa con SBOM vinculados.
–valint.sign: Your Switch for SLSA Level 1 or 2 🔑
Set –valint.sign flag acts as your simple toggle:
- Omitir –valint.sign for SLSA Level 1 (Unsigned): Scribe generates foundational, unsigned provenance for basic traceability.
- Incluir –valint.sign for SLSA Level 2 (Signed): Scribe cryptographically signs provenance files and the SARIF compliance report, providing a higher level of verifiable assurance.
Este comando unificado, controlado por un solo indicador, simplifica el logro de un sólido cumplimiento de SLSA a escala sin modificar sus canales de CI/CD existentes.
Generación de procedencia SLSA de código abierto
La generación de la procedencia de SLSA no se limita a los repositorios privados. Muchos proyectos de código abierto han... registros públicos de CI/CD, lo que permite generar la procedencia de sus compilaciones. Si bien estos registros de procedencia podrían contener inicialmente información menos extensa (como secretos del repositorio y de la organización), futuras mejoras, posiblemente mediante... Fuente SBOM, podría abordar este problema.
Por ejemplo, puede generar fácilmente la procedencia SLSA Nivel 1 para el ir a gitea/gitea proyecto utilizando el platforms discover mando:
Después de ejecutar este comando, verá un registro que indica la solicitud SLSA y una tabla que resume las compilaciones de imágenes detectadas y su procedencia asociada:
Como puede ver, al momento de escribir esto, la última versión de `gitea/gitea` encontrada era la **v1.24.2**. Las dos imágenes para las que se emitió la procedencia de SLSA y su evidencia relacionada son `gitea/gitea:1.24.2` y `gitea/gitea:1.24.2-rootless`. A modo de ejemplo, la procedencia de SLSA se puede referenciar en lo siguiente. enlace,
On our service, we manage the lifecycle of the framework and evidence to provide a clear overview of your products and assets.
Este contenido es presentado por Scribe Security, un proveedor líder de soluciones de seguridad de la cadena de suministro de software de extremo a extremo, que ofrece seguridad de última generación para artefactos de código y procesos de desarrollo y entrega de código en todas las cadenas de suministro de software. Más información.