Un nuevo género de ataque a la cadena de suministro afectó a Apple, Microsoft y otras 33 compañías

Hola , otro fantastico articulo blog , aguardamos que les complazaca

imágenes falsas

La semana anterior, un estudioso probó un nuevo ataque a la cadena de suministro que ejecutaba código falsificado en redes correspondientes a ciertas compañías mucho más enormes del mundo, dentro Apple, Microsoft y Tesla. En este momento, otros estudiosos están salpicando Internet con packs de imitación, con mucho más de 150 de detectados hasta la actualidad.

La técnica fue revelada el martes pasado por el estudioso de seguridad Alex Birsan. Su llamado ataque de confusión de dependencia o confusión de espacio de nombres empieza poniendo código malicioso en un repositorio público oficial como NPM, PyPI o RubyGems. Al ofrecer a los envíos exactamente el mismo nombre de bulto que las dependencias usadas por compañías como Apple, Microsoft, Tesla y otras 33 compañías, Birsan ha podido hallar que estas compañías descargaran y también instalasen de forma automática el código falsificado.

Pwnage automático

Las dependencias son packs o bibliotecas de código público que los programadores emplean para añadir tipos recurrentes de ocupación al programa que escriben. Al explotar el trabajo de una cantidad enorme de sus pares de código abierto, los programadores se ahorran las afecciones y los costos de hacer el código mismos. El código del creador descarga y también tiene dentro de forma automática la dependencia, o algún actualización, así sea desde la PC local del creador o desde un repositorio público.

Birsan procuró en foros de discusión de Internet, código JavaScript, packs internos publicados de manera accidental y otras fuentes para conseguir los nombres de las dependencias de código usadas en el programa de 35 compañías. Entonces cargó su código en NPM, PyPI o Ruby Gems empleando exactamente los mismos nombres de dependencia. En otras expresiones, el estudioso se encontraba ocultándose en el nombre genuino del bulto que pertenecía a las compañías. El estudioso acabó recibiendo 130.000 dólares estadounidenses en recompensas por fallos.

Al ofrecer a los packs números de versión mucho más altos que los genuinos, las compañías propósito descargaron y ejecutaron de manera automática los packs falsificados de Birsan.

Aviso promocional

«La tasa de éxito fue sencillamente impactante», escribió Birsan. Añadió:

Desde fallos puntuales realizados por los programadores en sus máquinas, hasta servidores de colección internos o basados ​​en la nube mal configurados, hasta cañerías de avance sistémicamente atacables, una cosa se encontraba clara: ocupar nombres de packs internos válidos era un procedimiento prácticamente seguro para ingresar en el redes de ciertas compañías de tecnología mucho más enormes que hay, consiguiendo ejecución recóndita de código y probablemente admitiendo a los atacantes añadir puertas traseras a lo largo de las compilaciones.

Un par de días una vez que Birsan publicara sus desenlaces, la compañía de seguridad Sonotype ha dicho el viernes pasado que otros programadores o estudiosos habían realizado asaltos de imitación y habían puesto 150 packs ocultos de nombres afines en NPM.

De qué manera marcha

Los gestores de packs en general admiten las dependencias enumeradas como nombres y también procuran investigar las pretenciones de los programadores. Los gestores procuran dependencias tanto en la PC local donde se guarda el emprendimiento como en el directorio alcanzable por Internet que forma parte al gestor de packs.

“El inconveniente de confusión de dependencias es una falla de diseño inseparable en las herramientas de instalación nativas y los flujos de trabajo de DevOps que gustan las dependencias a la cadena de suministro de programa”, escribieron los estudiosos de Sonotype en un producto previo sobre el ataque de Birsan. «En este contexto, la confusión de dependencias tiene relación a la incapacidad de su ambiente de avance para distinguir entre un bulto de hoy privado desarrollado desde adentro en su colección de programa y un bulto con exactamente el mismo nombre libre en un repositorio de programa público».

Los estudiosos de Sonotype siguieron enseñando la técnica así:

Por servirnos de un ejemplo, imaginemos que su aplicación usa como dependencia un ingrediente de adentro de PyPI desarrollado de manera privada llamado foobar (versión 1). Mucho más adelante, si un ingrediente no relacionado con exactamente el mismo nombre pero con un número de versión superior foobar (versión 9999) se publica en el repositorio público de descargas de PyPI, la configuración ya establecida de los ámbitos de avance de PyPI dicta que el foobar con la versión superior se descargue como dependencia.

En un caso así, eso querría decir que el bulto foobar falsificado del agresor con un número de versión mucho más prominente entraría discreta y de forma automática en su colección de programa.

Los llamados asaltos de tipo cuclillas han existido a lo largo de años. Cargan código en repositorios públicos y utilizan nombres que son afines a los nombres de packs lícitos con la promesa de que un creador cometa un fallo tipográfico o realice click en un link malicioso que provoca que se descargue el código falso. El beneficio de la técnica de confusión de dependencias de Birsan es que no es dependiente del fallo humano para marchar.

Aviso promocional

Más allá de que las compañías perjudicadas no advirtieron la falsificación, Sonotype sí lo logró. Tras preguntar con Birsan, la compañía se enteró de que las dependencias falsas eran una parte de un ensayo benigno.

Prueba de criterio

Birsan descubrió que las 35 compañías perjudicadas empleaban dependencias guardadas de forma local que no estaban libres en el directorio público. En el momento en que cargó su código malicioso de prueba de criterio en un repositorio público con exactamente el mismo nombre que la dependencia lícita y un número de versión mucho más prominente, el programa de las compañías los instaló y ejecutó de forma automática.

Para eludir ingresar en enfrentamiento con las políticas de reportes de inseguridades de las compañías, el código de Birsan limitó sus ocupaciones a mandar el nombre de usuario, el nombre de host y el parche de hoy de cada instalación única al estudioso. Asimismo tenía permiso para evaluar la seguridad de las 35 compañías, así sea por medio de programas públicos de recompensas por fallos o pactos privados.

Para asegurar que las defensas de seguridad no impidiesen que la información saliese de la red de la compañía propósito, el código PoC de Birsan codificó los datos en hexadecimal y los envió en una consulta de DNS. El fracaso de las compañías para denegar el tráfico se genera por lo menos 4 años una vez que la utilización de la exfiltración de DNS por la parte del software malicioso llamó la atención de los estudiosos.

La compañía canadiense de comercio on-line Shopify instaló de forma automática una Ruby Gem llamada shopify-cloud escasas horas una vez que Birsan la pusiese predisposición en el repositorio de Ruby Gems. Hasta entonces, múltiples máquinas en la red de Apple ejecutaron el código que Birsan subió a NPM. Birsan mencionó que los proyectos de Apple damnificados parecían estar relacionados con Apple ID, el sistema de autenticación de la compañía. Tanto Shopify como Apple dieron recompensas de $ 30,000 a Birsan cada uno de ellos.

Sonotype tiene una lista de pasos aquí que los programadores tienen la posibilidad de tomar para impedir asaltos de confusión de dependencia. La primordial de las defensas es que los repositorios hagan cumplir la verificación obligatoria del alcance y el espacio de nombres. Una técnica de verificación es la utilización inverso del nombre de dominio completamente calificado, lo que deja a los dueños lícitos de una marca o espacio de nombres divulgar elementos en ese espacio de nombres sin ignorar a los contrincantes.

Si les ha dado gusto este articulo posiblemente les interese otras clases sobre la manzana

utilizamos cookies para poder ofrecer la mejor experiencia a los usuarios que nos vistan. Si sigues utilizando este sitio asumiremos que estás de acuerdo. Salir de la Web

Los ajustes de cookies en esta web están configurados para «permitir las cookies» y ofrecerte la mejor experiencia de navegación posible. Si sigues usando esta web sin cambiar tus ajustes de cookies o haces clic en «Aceptar», estarás dando tu consentimiento a esto. Haz clic aquí si quieres que el hacer scroll se considere como aceptación de cookies

Cerrar