En la estela de incidentes alarmantes como el ataque masivo de malware NotPetya en Rusia en 2017 y la campaña de ciberespionaje SolarWinds en 2020 del Kremlin (ambos llevados a cabo mediante el envenenamiento de pozos para la distribución de software), las organizaciones de todo el mundo se han esforzado por controlar la seguridad de la cadena de suministro de software.
En general, y para el software de código abierto en particular, una defensa más fuerte se basa en saber qué software está ejecutando realmente, con un enfoque crucial en enumerar todas las pequeñas piezas que componen el todo y validar que son lo que deberían ser. De esa manera, cuando empaque una caja de reliquias de software y la guarde en un estante, sabrá que no habrá un micrófono en vivo o un Tupperware lleno de huevos rellenos en la caja durante años.
Crear un sistema para generar un manifiesto de lo que hay dentro de cada caja en cada sótano y garaje es un esfuerzo enorme, pero una nueva herramienta de la firma de seguridad Chainguard tiene como objetivo hacer precisamente eso para los «contenedores» de software que subyacen a casi todos los servicios digitales en la actualidad.
El jueves, Chainguard lanzóuna distribución de Linux llamada Wolfi que está diseñada específicamente para la forma en que los sistemas digitales se construyen hoy en día en la nube. La mayoría de los consumidores no usan Linux, el famoso sistema operativo de fuente abierta, en sus computadoras personales. (Si lo saben, no necesariamente lo saben, como es el caso de Android, que se basa en una versión modificada de Linux).
Pero el sistema operativo de código abierto se usa ampliamente en servidores e infraestructura en la nube en todo el mundo, en parte porque se puede implementar de maneras tan flexibles. A diferencia de los sistemas operativos de Microsoft y Apple, donde su única opción es cualquier sabor de helado que lancen, la naturaleza abierta de Linux permite a los desarrolladores crear todo tipo de sabores, conocidos como «distribuciones», para satisfacer necesidades y antojos específicos. Pero los desarrolladores de Chainguard.
-¿Cómo usan los disfraces los espías?
“Lo que hemos hecho es crear una distribución que creemos que funcionará bien para las empresas que buscan abordar seriamente la seguridad de la cadena de suministro”, dice la ingeniera principal de Chainguard, Ariadne Conill. “Diferentes distribuciones tienen diferentes piezas de software que incluyen, son colecciones de software seleccionadas. Comenzar con una distribución de Linux que hace todo bien desde el principio, es una gran ventaja para que los desarrolladores de software hagan bien sus propias cosas”.
Piense en los contenedores de software como una casa construida a partir de un contenedor de envío. Todo lo que necesita para vivir está allí, pero puede recoger la casa contenedor y moverla a donde sea necesario. Si un sistema operativo es como los electrodomésticos, el cableado eléctrico, la plomería y otra infraestructura en la casa contenedor, eso es lo que Wolfi está investigando y detallando previamente para garantizar la seguridad de todo en su casa contenedor. Wolfi está diseñado para funcionar sin problemas con otras herramientas de Chainguard que ayudan a los desarrolladores a desarrollar y agregar software en su contenedor de manera segura. En otras palabras, es simple validar muebles y efectos personales y agregarlos al índice de inicio de su contenedor. De esa manera, si entran en su casa, es más fácil determinar qué sucedió y cómo. Y si alguna vez desea enviar su casa al extranjero,
“Es exactamente lo mismo con el software que con los bienes físicos: puede haber bienes de contrabando o falsificados que la gente trata de esconder y pasar sigilosamente”, dice Adolfo García, ingeniero de software de Chainguard. “Para el software, si no tiene la capacidad de recopilar la información en el momento de la compilación, se perderá mucho de lo que hay allí”.
En la seguridad de la cadena de suministro de software, y particularmente en entornos de código abierto donde generalmente hay menos recursos para invertir en mejoras, hay mucho en juego y los gobiernos han comenzado a tomarse el problema en serio. En mayo de 2021, la administración de Biden emitió una orden ejecutiva que abordaba específicamente los imperativos de seguridad de la cadena de suministro de software. Y la semana pasada, la Casa Blanca anunció que la Oficina de Administración y Presupuesto de EE. UU. había emitido una guía específica de seguridad de la cadena de suministro para las agencias federales.
“No hace mucho tiempo, el único criterio real para la calidad de una pieza de software era si funcionaba como se anunciaba. Con las amenazas cibernéticas que enfrentan las agencias federales, nuestra tecnología debe desarrollarse de una manera que la haga resistente y segura”, escribió Chris DeRusha, director de seguridad de la información federal de EE. UU. y subdirector cibernético nacional, en el anuncio de la Casa Blanca. «Esto no es teórico: los gobiernos extranjeros y los sindicatos criminales buscan regularmente formas de comprometer nuestra infraestructura digital».
Cuando se trata de Wolfi, Santiago Torres-Arias, investigador de la cadena de suministro de software de la Universidad de Purdue, dice que los desarrolladores podrían lograr algunas de las mismas protecciones con otras distribuciones de Linux, pero que es un paso valioso para ver un lanzamiento que ha sido reducido y especialmente diseñado teniendo en cuenta la seguridad y la validación de la cadena de suministro.
«Hay trabajo anterior, incluido el trabajo realizado por personas que ahora están en Chainguard, que fue una especie de precursor de este tren de pensamiento de que necesitamos eliminar los elementos potencialmente vulnerables y enumerar el software incluido en un contenedor particular o versión de Linux». Dice Torres-Arias. “Algo como esto es parte de una constelación de controles de la cadena de suministro de software. Y a nivel técnico, es una idea sencilla. Pero a nivel comercial, en términos de lograr que las organizaciones adopten estas prácticas, podría ser muy bueno”.
Tanto Torres-Arias como el CEO de Chainguard, Dan Lorenc, señalan que generar un manifiesto, conocido en la seguridad de la cadena de suministro de software como una «lista de materiales de software» o SBOM, no produce una mejor seguridad en sí misma. Es la forma en que las organizaciones actúan sobre la información lo que realmente marcará la diferencia. Pero como con cualquier cosa en seguridad, una defensa solo es valiosa y protectora si ya está en su lugar antes de que algo salga mal.
“La gente ha estado luchando para hacer que las cosas funcionen con las distribuciones que existían anteriormente y otras soluciones alternativas”, dice Conill de Chainguard. “Pero pueden tener una pieza de software, una dependencia ahí dentro que no sabían que estaba ahí hasta que lo descubren por las malas. Y, ya sabes, de repente resulta que había una pequeña bolsita de coca cola en ese osito de peluche en el contenedor”.