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 complementoMetaDefender Jenkins analiza las compilaciones de Jenkins en busca de malware y comprueba si hay amenazas en el código fuente y los artefactos. 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 una pérdida de esfuerzos, tiempo y recursos en la corrección.MetaDefender 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 sus 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.

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

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

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.

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.

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.

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

Acerca de OPSWAT MetaDefender Jenkins
OPSWAT MetaDefender Jenkins comprueba si tus compilaciones contienen malware o información confidencial antes de publicar tu aplicación. Aprovecha todas las capacidades de la MetaDefender , que incluyen más de 30 motores antivirus líderes, la tecnología Deep CDR™ y Proactive DLP—, el MetaDefender para Jenkins analizará minuciosamente su código fuente y sus artefactos en busca de amenazas. Se le informará de posibles problemas a través de mecanismos de seguridad integrados que ayudan a prevenir brotes de malware y la filtración de datos confidenciales. Obtenga más información sobre MetaDefender Jenkins y otras herramientasOPSWAT .
Para obtener más información, póngase en contacto con nuestros expertos en ciberseguridad.
