Los archivos de bloqueo de Bun y la seguridad de tu cadena de suministro
Los archivos de bloqueo binarios son un impuesto a la seguridad: lo pagas más tarde, con intereses.
Bun solía almacenar las dependencias en un archivo binario llamado bun.lockb. Era rápido y pequeño, pero no se podía leer. No podías hacer un diff en un pull request y no podías ver qué había cambiado.
Cuando no puedes revisar un cambio de dependencia, no tienes una política, solo una corazonada.
Bun v1.2 cambia el valor predeterminado a un archivo bun.lock basado en texto. Eso, por sí solo, es una gran victoria para la seguridad.
Por qué importan los archivos de bloqueo basados en texto
- Diffs significativos – los revisores ven exactamente qué paquetes se movieron o cambiaron.
- Controles de política fáciles – el CI puede escanear patrones prohibidos o registros no confiables.
- Forense más rápido –
git logmuestra el commit exacto que introdujo un paquete malicioso.
Un archivo de bloqueo garantiza la integridad y la reproducibilidad, pero no es una solución mágica. No detendrá una versión maliciosa que haya sido publicada legítimamente, ni a un mantenedor comprometido.
Lo que el archivo de bloqueo de texto añade es visibilidad. La visibilidad es tu primera línea de defensa.
Cómo asegurar tu flujo de trabajo con Bun
- Ejecuta
bun install --frozen-lockfileen el CI. La compilación fallará si el archivo de bloqueo necesita una actualización. - Ejecuta
bun install --lockfile-onlyen el CI. Validas la resolución sin ejecutar scripts de instalación pesados. - Migra cualquier archivo bun.lockb a bun.lock de inmediato.
- Requiere revisión humana para los cambios en los archivos de bloqueo. Añade a los propietarios adecuados a
CODEOWNERSpara que los ojos correctos vean cada actualización de dependencias.
Deja de confiar ciegamente en la herramienta. En su lugar, verifica cada cambio.
