Más información sobre el libro de Benny Czarny, «Cybersecurity Upside Down»

Más información
Utilizamos inteligencia artificial para traducir el sitio web y, aunque nos esforzamos por garantizar la precisión, es posible que las traducciones no sean siempre 100 % exactas. Agradecemos tu comprensión.

Secure compilación, desde el código fuente hasta los artefactos

Por OPSWAT Academy

El código fuente constituye la base fundamental de cualquier aplicación o producto de software. Es la columna vertebral de cualquier organización centrada en la tecnología. El código fuente contiene información confidencial sobre la propiedad intelectual de su empresa y protege los datos que permiten su funcionamiento.

La integración de componentes de código abierto de terceros facilita a los equipos de software el uso del código ya disponible, sin tener que desarrollarlo desde cero. Lamentablemente, la otra cara de esta comodidad conlleva riesgos que afectan a los proveedores externos y dan lugar a ataques a la cadena de suministro. Durante un ataque de este tipo, los ciberdelincuentes pueden introducir malware en el código de terceros o en los sistemas de desarrollo, lo que permite que el malware llegue a la organización y a sus clientes.

En este blog, voy a mostrar cómo prevenir el malware en el código fuente utilizando el complemento MetaDefender .

Secure con MetaDefender para Jenkins

El complemento «MetaDefender » para Jenkins analiza las compilaciones de Jenkins en busca de malware y comprueba si el código fuente y los artefactos contienen amenazas. El malware avanzado puede eludir fácilmente un único motor antivirus (AV), lo que pone en riesgo el código fuente. Los falsos positivos en la detección de malware son también un efecto secundario habitual en la mayoría de las soluciones antivirus, lo que conlleva un desperdicio de esfuerzos, tiempo y recursos en la corrección de problemas. « MetaDefender » para Jenkins utiliza Metascan—una tecnología de análisis múltiple— para aumentar las tasas de detección y reducir los tiempos de detección de brotes en las compilaciones de software.

A continuación se presentan dos situaciones que ilustran cómo puede infiltrarse el malware: en el código fuente y durante el proceso de compilación.

Escenario 1: Malware en el código fuente

En este caso, el código fuente puede ser el tuyo propio (procedente del equipo comprometido de un desarrollador) o de una biblioteca de terceros. En el primer caso, quería comprobar un repositorio de una biblioteca de terceros en GitHub. Para asegurarme de que el repositorio no presentara amenazas, añadí un paso de compilación para realizar un análisis con el MetaDefender para Jenkins.

Secure compilación, desde el código fuente hasta los artefactos

También quería que la compilación devolviera el resultado «fallida» si hubiera alguna amenaza en el código fuente.

Secure compilación, desde el código fuente hasta los artefactos

Tras intentar ejecutar la compilación, el resultado se marcó como «fallido» debido a los archivos infectados detectados por el complemento MetaDefender .

Secure compilación, desde el código fuente hasta los artefactos

Escenario 2: Malware introducido durante el proceso de compilación

Si crees que analizar tu repositorio es suficiente para proteger tu código fuente, puede que no siempre sea así. Hay malware que no se encuentra en el repositorio original del código fuente, pero que puede introducirse al descargar componentes como dependencias o bibliotecas. En este segundo vídeo, he mostrado un ejemplo de este segundo caso y cómo evitarlo utilizando el complemento MetaDefender .

Como puedes ver, no se detectaron errores tras analizar el código fuente en la primera ejecución.

Secure compilación, desde el código fuente hasta los artefactos

Después de eso, añadí un nuevo paso de compilación al proceso mediante un archivo build.bat y volví a iniciar la compilación.

Secure compilación, desde el código fuente hasta los artefactos

A modo de demostración, utilicé npm para descargar un paquete de prueba EICAR con el fin de simular la instalación de malware en un escenario real. En este caso, aunque el código fuente original no contenía ninguna amenaza, el paquete malicioso de npm se introdujo en el script durante la compilación. El complemento MetaDefender detectó la amenaza y marcó la compilación como fallida.

Secure compilación, desde el código fuente hasta los artefactos

Los resultados detallados del análisis se muestran en MetaDefender Core.

Secure compilación, desde el código fuente hasta los artefactos

Acerca de OPSWAT MetaDefender Jenkins

OPSWAT MetaDefender para que Jenkins compruebe si tus compilaciones contienen malware o información confidencial antes de publicar tu aplicación. Gracias a todas las capacidades de la plataforma MetaDefender —que incluye más de 30 motores antivirus líderes, la tecnología Deep CDR™ y Proactive DLP—, el complemento de MetaDefender para Jenkins analizará a fondo su código fuente y sus artefactos en busca de posibles amenazas. Se le informará de posibles problemas a través de mecanismos de seguridad integrados que ayudan a prevenir brotes de malware y fugas de datos confidenciales. Obtenga más información sobre MetaDefender para Jenkins y otras herramientas gratuitas deOPSWAT .

Para obtener más información, póngase en contacto con nuestros expertos en ciberseguridad.

¡Mantente al día con OPSWAT!

Regístrate hoy mismo para recibir las últimas novedades de la empresa, historias, información sobre eventos y mucho más.