Atestación de procedencia
¿Qué es Atestación de procedencia?
Atestación de procedenciaDeclaración firmada y verificable por máquina que describe cómo se produjo un artefacto de software —fuente, sistema de build, parámetros y dependencias— para que los consumidores confíen en su origen.
Una atestación de procedencia responde a "¿de dónde viene este artefacto?" con evidencia criptográfica en lugar de confianza por convención. Formatos estándar son las atestaciones in-toto y SLSA Provenance v1, que capturan el commit del repositorio de origen, la plataforma de build, la receta, los materiales y los timestamps, firmados por el builder. Los consumidores verifican las atestaciones contra una política: identidad del builder confiable, repositorios permitidos, workflow esperado, nivel SLSA, etc. Herramientas como Sigstore Cosign, GitHub Actions, Tekton Chains, GitLab CI y plataformas de build compatibles con SLSA generan atestaciones automáticamente. La procedencia es un control clave para detectar binarios alterados y satisfacer exigencias como la EO 14028 de EE. UU. y la Cyber Resilience Act de la UE.
● Ejemplos
- 01
SLSA Provenance v1 generada por un reusable workflow de GitHub y verificada en el despliegue.
- 02
Política Kyverno que exige procedencia de builder confiable en cada imagen de contenedor.
● Preguntas frecuentes
¿Qué es Atestación de procedencia?
Declaración firmada y verificable por máquina que describe cómo se produjo un artefacto de software —fuente, sistema de build, parámetros y dependencias— para que los consumidores confíen en su origen. Pertenece a la categoría de Seguridad de aplicaciones en ciberseguridad.
¿Qué significa Atestación de procedencia?
Declaración firmada y verificable por máquina que describe cómo se produjo un artefacto de software —fuente, sistema de build, parámetros y dependencias— para que los consumidores confíen en su origen.
¿Cómo funciona Atestación de procedencia?
Una atestación de procedencia responde a "¿de dónde viene este artefacto?" con evidencia criptográfica en lugar de confianza por convención. Formatos estándar son las atestaciones in-toto y SLSA Provenance v1, que capturan el commit del repositorio de origen, la plataforma de build, la receta, los materiales y los timestamps, firmados por el builder. Los consumidores verifican las atestaciones contra una política: identidad del builder confiable, repositorios permitidos, workflow esperado, nivel SLSA, etc. Herramientas como Sigstore Cosign, GitHub Actions, Tekton Chains, GitLab CI y plataformas de build compatibles con SLSA generan atestaciones automáticamente. La procedencia es un control clave para detectar binarios alterados y satisfacer exigencias como la EO 14028 de EE. UU. y la Cyber Resilience Act de la UE.
¿Cómo defenderse de Atestación de procedencia?
Las defensas contra Atestación de procedencia combinan habitualmente controles técnicos y prácticas operativas, como se detalla en la definición.
¿Cuáles son otros nombres para Atestación de procedencia?
Nombres alternativos comunes: Procedencia SLSA, Procedencia de build.
● Términos relacionados
- appsec№ 1053
SLSA Framework
Supply-chain Levels for Software Artifacts: conjunto escalonado de requisitos publicado por OpenSSF que endurece progresivamente la forma de construir, firmar y verificar software frente a manipulaciones de la cadena de suministro.
- appsec№ 522
in-toto
Marco abierto que atestigua criptográficamente cada paso de una cadena de suministro de software, para que los consumidores verifiquen que el artefacto se construyó y manejó exactamente como pretendía el propietario del proyecto.
- appsec№ 1044
Sigstore
Proyecto open source de la Linux Foundation que facilita firmar, verificar y proteger artefactos de software combinando claves efímeras, identidades OIDC y un registro de transparencia.
- appsec№ 226
Cosign
CLI open source del proyecto Sigstore para firmar, verificar y atestiguar artefactos OCI y otro software, usando flujos con o sin claves de larga duración.
- appsec№ 1069
Seguridad de la cadena de suministro de software
Disciplina que protege cada eslabón de la producción de software —fuente, dependencias, build, firma, distribución y despliegue— frente a manipulación, código malicioso y pérdida de integridad.
- appsec№ 921
Builds reproducibles
Prácticas de build que garantizan que compilar el mismo código fuente con las mismas instrucciones produzca un artefacto idéntico bit a bit, sin importar cuándo o dónde se construya.