Ataque a la cadena de suministro 3CX.

El fabricante de software de comunicaciones empresariales 3CX confirmó el jueves que múltiples versiones de su aplicación de escritorio para Windows y macOS están afectadas por un ataque a la cadena de suministro.

Los números de versión incluyen 18.12.407 y 18.12.416 para Windows y 18.11.1213, 18.12.402, 18.12.407 y 18.12.416 para macOS.

La compañía dijo que está contratando los servicios de Mandiant, propiedad de Google, para revisar el incidente. Mientras tanto, está instando a sus clientes de versiones locales y autohospedadas del software a actualizar a la versión 18.12.422.

3CX dijo que la alerta inicial que marcaba un posible problema de seguridad en su aplicación la semana pasada fue tratada como un “falso positivo” debido al hecho de que ninguno de los motores antivirus en VirusTotal lo etiquetó como sospechoso o malware.

Análisis técnico.

La evidencia disponible hasta el momento apunta a un compromiso de la canalización de compilación de software de 3CX para distribuir las versiones de Windows y macOS del paquete de la aplicación o, alternativamente, el envenenamiento de una dependencia ascendente. Las consecuencias completas de este incidente en la cadena de suministro aún están por verse.

La versión de Windows del ataque aprovechó una técnica llamada DLL side-loading para cargar una biblioteca no autorizada conocida como “ffmpeg.dll” que está diseñada para leer shellcode cifrado de otra DLL llamada “d3dcompiler_47.dll“, con una firma digital válida.

El descargador también es un archivo DLL con una función de exportación: DllGetClassObject : contiene todas las funciones maliciosas (DllEntryPoint no realiza ninguna actividad). En primer lugar, el descargador intenta abrir el archivo de manifiesto que contiene 4 bytes que representan el tiempo en segundos en que debe iniciarse la aplicación.

El DllEntryPoint conduce a la función maliciosa principal, que es responsable de leer el archivo d3dcompiler_47.dll que debe estar ubicado en el mismo directorio que el archivo ejecutable. Este archivo contiene un shellcode encriptado responsable de desempaquetar y ejecutar la siguiente etapa, que es un descargador. Es importante tener en cuenta que antes de extraer el shellcode, la DLL infectada crea un evento con el nombre AVMonitorRefreshEvent . El shellcode en sí se encuentra en la segunda DLL después de los bytes FEEDFACE :

El código que busca el inicio de la shellcode.

Vale la pena señalar que d3dcompiler_47.dll también tiene una firma digital, pero no es válida en este caso:

En comparación con la versión de Windows de la aplicación 3CX, su versión para Mac OS tiene una lógica ligeramente diferente. La aplicación contiene libffmpeg.dylib con dos sublibs dentro: para código arm64 y x86_64. El código malicioso se implementa en _run_avcodec(), que solo se puede encontrar en x86_64 sublib. La versión ARM64 no contiene el código malicioso. Las URL de la siguiente etapa están codificadas en la biblioteca XORed con 0x7A.

RECOMENDACIÓN.

Según la propia declaración del CEO Nick Galea, la recomendación es desinstalar la aplicación (si está ejecutando Windows Defender, lo hará automáticamente) asimismo, recomienda usar el cliente PWA en su lugar. Este hace el 99% de la aplicación del cliente y está completamente basado en la web, hasta que se lance una nueva versión de la herramienta comprometida.

Related Post