Google presenta OSS Rebuild para mejorar la seguridad de los ecosistemas de código abierto
Google presenta OSS Rebuild para mejorar la seguridad de los ecosistemas de código abierto

Google presenta OSS Rebuild para mejorar la seguridad de los ecosistemas de código abierto

Google ha anunciado el lanzamiento de una nueva iniciativa denominada OSS Rebuild, cuyo propósito es reforzar la seguridad de los ecosistemas de paquetes de código abierto y prevenir ataques de cadena de suministro de software.

Objetivo del proyecto

El proyecto busca proporcionar una procedencia de compilación para los paquetes en registros como Python, NPM (JS/TS) y CRATES.IO (Rust), con intención de extenderlo a otras plataformas de desarrollo de software de código abierto.

Con OSS Rebuild, se busca aprovechar una combinación de definiciones de compilación declarativas, instrumentación de compilación y capacidades de monitoreo de red para generar metadatos de seguridad confiables. Estos metadatos permiten validar el origen del paquete y asegurar que no haya sido alterado.

Metodología

A través de la automatización y la heurística, se determina una definición de compilación prospectiva para un paquete objetivo y se reconstruye. Se compara semánticamente el resultado con el artefacto aguas arriba, normalizando cada uno para eliminar inestabilidades que causan que las comparaciones de bits para bits fallen (por ejemplo, debido a la compresión de archivos).

Una vez que se reproduce el paquete, la definición y el resultado de compilación se publican mediante la procedencia de SLSA, como un mecanismo de certificación. Esto permite a los usuarios verificar confiablemente su origen, repetir el proceso de compilación e incluso personalizar la compilación desde una línea de base funcional conocida.

Detección de compromisos

OSS Rebuild puede ayudar a detectar varias categorías de compromisos en la cadena de suministro, entre ellas:

  • Paquetes publicados que contienen código no presente en el repositorio de fuente pública (por ejemplo, @solana/web3.js).
  • Actividad de construcción sospechosa (por ejemplo, TJ-Actions/Cambied-Files).
  • Rutas de ejecución inusuales o operaciones sospechosas integradas dentro de un paquete que son difíciles de identificar mediante la revisión manual (por ejemplo, XZ Utils).

Además de asegurar la cadena de suministro de software, la solución puede mejorar el inventario de activos (SBOMs), acelerar la respuesta a las vulnerabilidades, fortalecer la confianza en los paquetes y eliminar la necesidad de que las plataformas CI/CD estén responsables de la seguridad del paquete de una organización.