Software Supply Chain Security Amenazas en la etapa de origen

Como comentamos en nuestro contenido anterior sobre software supply chain securityExploramos el concepto de ataques a la cadena de suministro y su posible impacto en las organizaciones. Estos ataques suelen explotar vulnerabilidades a lo largo del ciclo de vida del desarrollo de software.SDLC), lo que supone riesgos significativos en cada etapa. Hoy, les informaremos sobre los más frecuentes. software supply chain security amenazas que surgen durante la etapa de origen.

En primer lugar, es crucial definir un ataque a la cadena de suministro y las características específicas. Software Supply Chain Security Amenazas que surgen durante la etapa de origen.

Definición de ataque a la cadena de suministro de software

 El Instituto Nacional de Estados Unidos Standards y Tecnología (NIST) define un ataque a la cadena de suministro de software  “cuando el ataque ocurre cuando un actor de amenaza cibernética se infiltra en la red de un proveedor de software y emplea código malicioso para comprometer el software antes de que el proveedor lo envíe a sus clientes. El software comprometido luego compromete los datos o el sistema del cliente. El software recién adquirido puede verse comprometido desde el principio, o puede ocurrir un compromiso a través de otros medios, como un parche o una revisión. En estos casos, el compromiso todavía ocurre antes de que el parche o la revisión ingrese a la red del cliente. Estos tipos de ataques afectan a todos los usuarios del software comprometido y pueden tener consecuencias generalizadas para el gobierno, la infraestructura crítica y los clientes de software del sector privado.

Etapa de origen Software Supply Chain Security Amenazas

La etapa fuente del ciclo de vida de la cadena de suministro de software abarca las fases iniciales del desarrollo de software, desde la ideación hasta la creación del código fuente. Esta etapa implica la selección de herramientas, bibliotecas y componentes, así como el desarrollo e implementación de las funcionalidades principales del software.

Software supply chain security Las amenazas en la etapa de origen se refieren a vulnerabilidades de seguridad que pueden explotarse para introducir cambios no autorizados o maliciosos en el código fuente. Esto incluye la amenaza de que tanto personas no autorizadas como personas autorizadas introduzcan cambios no autorizados.

amenazas a la seguridad de la cadena de suministro de software ataques a la cadena de suministro de software

Ejemplos de amenazas de origen 

 
Enviar código incorrecto 

Enviar código incorrecto se refiere a la práctica de committing código a un repositorio fuente que contiene defectos, errores o vulnerabilidades. Esto puede variar desde código malicioso introducido intencionalmente para comprometer la integridad o seguridad del software, hasta código no intencional que introduce errores o vulnerabilidades debido a malas prácticas de codificación o falta de pruebas. Un ejemplo de este ataque vectorial fue el Ataque del MNP. En 2022, un pirata informático se infiltró en el repositorio de código fuente de una popular biblioteca de software de código abierto llamada npm. El pirata informático insertó código malicioso en el código de la biblioteca que le permitió obtener acceso no autorizado a los sistemas de las organizaciones que instalaron la biblioteca. El código malicioso permitió al pirata informático robar datos de los sistemas afectados, instalar malware e interrumpir las operaciones. El ataque afectó a una amplia gama de organizaciones, incluidas agencias gubernamentales, empresas e individuos.

Compromiso del repositorio fuente

Un adversario obtiene acceso no autorizado a un repositorio de código fuente (SCM) e introduce cambios maliciosos o elimina código legítimo. Esto puede lograrse mediante diversos métodos, como la explotación de vulnerabilidades en el SCM, comprometiendo las credenciales de un desarrollador con acceso al repositorio, o obteniendo acceso a la infraestructura subyacente que aloja el repositorio. SCMUn ejemplo de este ataque vectorial fue el Ataque PHP.  Un atacante comprometió el servidor Git autohospedado de PHP, que es un repositorio seguro para almacenar y administrar el código fuente del lenguaje de programación PHP. El atacante pudo inyectar dos maliciosos commits en la base de código principal de PHP. Estos commitSe agregaron puertas traseras que permitieron al atacante obtener acceso no autorizado a las instalaciones de PHP. Las puertas traseras permitieron al atacante ejecutar código arbitrario en cualquier instalación PHP, que podría usarse para robar datos, instalar malware o interrumpir operaciones. El ataque también causó un gran daño a la reputación de PHP, ya que generó preocupaciones sobre la seguridad del lenguaje de programación.

Construir a partir de una fuente modificada

Un adversario obtiene una copia del código fuente de una fuente distinta al repositorio oficial de código fuente y la utiliza para construir e implementar el software. Este código fuente modificado puede contener código malicioso, puertas traseras u otras alteraciones dañinas que pueden comprometer la integridad, funcionalidad o seguridad del software. Un ejemplo de este ataque vectorial fue el webmin Ataque. Un atacante obtuvo acceso no autorizado a la infraestructura de compilación de Webmin, que es responsable de compilar y empaquetar el software de Webmin. El atacante modificó la infraestructura de compilación para utilizar archivos fuente que no estaban presentes en el repositorio fuente oficial de Webmin. 

Escribir código inseguro

Las prácticas de codificación inseguras, ya sean intencionales o no, pueden introducir vulnerabilidades en el software. Los atacantes pueden aprovechar estas vulnerabilidades para obtener acceso no autorizado, modificar o robar datos o interrumpir operaciones. Un ejemplo de este ataque vectorial fue el Ataque de puntales Apache. En 2003, un hacker se infiltró en el repositorio de código fuente de la biblioteca de software de código abierto llamada Apache Struts. El pirata informático introdujo una vulnerabilidad en la biblioteca que le permitió obtener acceso no autorizado a los sistemas de las organizaciones que instalaron la biblioteca. La vulnerabilidad permitió al hacker ejecutar código arbitrario en los sistemas afectados, que podría usarse para robar datos, instalar malware e interrumpir operaciones. El ataque afectó a una amplia gama de organizaciones, incluidas agencias gubernamentales, empresas e individuos.

Manipulación de archivos críticos

Alterar o modificar archivos críticos en el ciclo de vida de desarrollo de software puede tener consecuencias graves, incluida la introducción de código malicioso, el compromiso de datos confidenciales y la interrupción de las operaciones del software. Un ejemplo de este ataque de vector de manipulación fue el Ataque experto. En 2020, los piratas informáticos se infiltraron en el repositorio de código fuente de una popular biblioteca de software de código abierto llamada Maven. Los piratas informáticos insertaron código malicioso en el archivo pom.xml de la biblioteca, que se utiliza para configurar el proceso de compilación. El código malicioso permitió a los piratas informáticos inyectar sus dependencias en el proceso de compilación, que luego se incluyeron en el software compilado. Estas dependencias contenían puertas traseras que permitían a los piratas informáticos obtener acceso no autorizado a los sistemas de las organizaciones que instalaron el software.

Despejando el camino: agilizando las operaciones con una visión clara

Vaya más allá del ámbito de la seguridad y descubrirá que visualizar su cadena de suministro hace más que salvaguardar: es como encender una luz en una habitación oscura, revelando las rutas más rápidas y eficientes a través de sus operaciones. Brinda a los equipos una vista panorámica del ecosistema de desarrollo, lo que les permite identificar activos redundantes y elementos sin mantenimiento. Esta claridad es particularmente beneficiosa en proyectos a gran escala donde se entrelazan múltiples unidades y componentes.

Observaciones finales

Al comprender los diferentes tipos de etapa de origen software supply chain security amenazas e implementar medidas de seguridad adecuadas, las organizaciones pueden ayudar a protegerse de estos ataques devastadores.

  • Los ataques a la cadena de suministro de software pueden introducir código malicioso en el software en cualquier etapa del ciclo de vida de desarrollo, incluida la etapa de origen.
  • Las amenazas en la etapa de origen incluyen el envío de código incorrecto, comprometer los repositorios de origen, construir a partir de fuentes modificadas, escribir código inseguro y alterar archivos críticos.
  • Las organizaciones deben implementar medidas de seguridad integrales durante todo el ciclo de vida del desarrollo de software para mitigar los riesgos de ataques a la cadena de suministro.

¿Quiere mantenerse a la vanguardia en software supply chain security?

Estén atentos a nuestro próxima serie de blogs, donde profundizaremos en los ataques más frecuentes que ocurren a lo largo del ciclo de vida del desarrollo de software. Desde el etapa de construcción hasta la implementación y más allá, lo equiparemos con el conocimiento y las estrategias para proteger su organización de estas amenazas insidiosas.

¡No te lo pierdas! Suscríbete a nuestro blog hoy y sea el primero en conocer nuestras últimas novedades sobre software supply chain security.

Juntos, podemos construir un ecosistema de software más resiliente y seguro para todos.

¡Explore las funciones de Xygeni!
Vea nuestra demostración en vídeo
sca-tools-software-herramientas-de-analisis-de-composicion
Priorice, solucione y proteja sus riesgos de software
Además, te ofrecemos una prueba gratuita de 7 días de nuestra Business Edition para que puedas explorar las funciones avanzadas de la plataforma SecurityScorecard.
No se requiere tarjeta de crédito

Asegure el desarrollo y entrega de software

con la suite de productos Xygeni