Seguridad de la Cadena de Suministro
Prácticas para asegurar la integridad y seguridad de todas las dependencias, herramientas y procesos que componen el pipeline de desarrollo de software.
seed#supply-chain#security#sbom#dependencies#slsa#sigstore
¿Qué es?
La seguridad de la cadena de suministro de software protege contra ataques que comprometen dependencias, herramientas de build o procesos de distribución. Ataques como SolarWinds y Log4Shell demostraron su importancia.
Vectores de ataque
| Vector | Ejemplo real | Mitigación |
|---|---|---|
| Dependencias maliciosas | Typosquatting en npm/PyPI | Lockfiles, dependency review |
| Compromiso de build | SolarWinds (2020) | Builds herméticos, SLSA Level 3+ |
| Inyección en CI/CD | Codecov breach (2021) | Permisos mínimos, secretos rotados |
| Imágenes comprometidas | Imágenes base con vulnerabilidades | Escaneo con Trivy, imágenes firmadas |
Prácticas de mitigación
- SBOM: Software Bill of Materials (inventario de dependencias)
- Dependency scanning: Snyk, Dependabot, Trivy
- Firma de artefactos: cosign, Sigstore
- SLSA: Supply-chain Levels for Software Artifacts (framework de madurez)
- Lockfiles: versiones exactas de dependencias
SLSA Levels
| Level | Requisitos |
|---|---|
| 1 | Documentación del proceso de build |
| 2 | Build service hosted, logs retenidos |
| 3 | Build aislado, provenance verificable |
| 4 | Build hermético, two-party review |
¿Por qué importa?
Los ataques a la cadena de suministro de software explotan la confianza en dependencias de terceros. Un solo paquete comprometido puede afectar a miles de aplicaciones. Verificar firmas, auditar dependencias y usar SBOMs son prácticas defensivas esenciales.