Versiones adulteradas de Notepad++ distribuyen malware

16 Abril 2024
Alto

 

Investigadores de AhnLab han detectado la distribución de una versión modificada de "mimeTools[.]dll", un complemento estándar de Notepad++. Este archivo malicioso se ha incluido en la instalación de una versión específica de Notepad++ y se ha disfrazado como un archivo legítimo. MimeTools es un módulo predeterminado que permite la codificación en Base64 y otras funciones, y su inclusión en Notepad++ es automática, no requiriendo intervención manual del usuario, ya que este se activa al momento de iniciar el programa.

 

 

Modificación de Notepad++

El actor de amenazas ha realizado una intrusión al incorporar un código shell malicioso codificado dentro del archivo mimeTools[.]dll, además de incluir el código necesario para descifrar y ejecutar dicho código shell. En comparación con el paquete estándar de Notepad++, se ha identificado una discrepancia evidente en los archivos, siendo certificate[.]pem el archivo que alberga el código shell malicioso. Este archivo comprometido representa una amenaza potencial para la integridad y seguridad de los sistemas en los que se encuentra.

 

Ilustración 1: Comparación Notepad++ oficial y malicioso
Fuente: Blog AhnLab

 

Etapas de infección

Este malware utiliza técnicas de llamada al sistema indirecta para evadir productos antimalware. Esto implica bifurcar el código a través de una instrucción jmp para llamar a una función del sistema operativo directamente, en este caso, para evitar ser detectado por productos antimalware que monitorean la API nativa.

El malware descifra un shellcode en el área de proceso de Notepad++ que se ejecuta al principio. Este shellcode contiene un temporizador con un retraso de aproximadamente 10 minutos para evitar la detección. Luego, el binario incluido en el archivo certificado[.]pem se utiliza para transformarse en un código shell a través de los módulos Crypt32[.]dll y BCrypt[.]dll.

Se modifica el punto de entrada de BingMaps[.]dll y se sobrescribe el código dentro de la función de exportación GetBingMapsFactory() con un código de shell. Esto implica un cambio en el flujo de ejecución de la DLL, utilizando llamadas al sistema como NtCreateThreadEx() y NtGetContextThread() para establecer el registro RIP en el área sobrescrita con el código de shell.

La función GetBingMapsFactory() se sobrescribe con un código shell. Este código verifica los procesos en ejecución, realizando un cálculo SHIFT y XOR en cada letra de sus nombres para crear un valor hash. Si se detectan ciertos procesos de análisis, el malware finaliza. Si encuentra el proceso "explorer[.]exe", recopila información necesaria (PID) para futuras actividades maliciosas.

Una vez que se encuentra el proceso "explorer[.]exe", el malware asigna espacio dentro de este proceso, inyecta un shellcode y ejecuta el shellcode inyectado con un subproceso. Esto permite que el malware se ejecute en el área de memoria de explorer[.]exe, lo que le permite realizar actividades maliciosas más avanzadas.

El malware se conecta a un servidor de comando y control (C2), luego descarga y ejecuta un código shell adicional. La cadena utilizada en la comunicación con el C2 se convierte en una URL después de cierto procesamiento, y estas URLs se utilizan para la comunicación con el servidor C2.

 

Ilustración 2: Diagrama de infección
Fuente: Blog AhnLab

 

Información recopilada

Antes de enviar la solicitud de obtención al C2, la información recopilada del equipo comprometido se codifica en Base64, se agrega al encabezado y se envía al actor de la amenaza. La información recopilada incluye lo siguiente:

  • Nombre de la computadora
  • Nombre de usuario
  • Si el usuario actual es miembro del grupo de administradores
  • Idioma
  • Hora del sistema

 

Apreciación

El descubrimiento de una versión modificada de Notepad++, que incluía un complemento predeterminado comprometido, destaca la creciente sofisticación y diversidad de las amenazas cibernéticas que aprovechan las vulnerabilidades en la cadena de suministro de software. Este incidente subraya la importancia crítica de la vigilancia continua y las medidas proactivas de seguridad en todas las etapas del ciclo de vida del software, desde el desarrollo y la distribución hasta el uso por parte de los usuarios finales. Para mitigar el riesgo de futuros ataques de este tipo, es fundamental que los desarrolladores adopten prácticas de seguridad robustas, que los usuarios descarguen software únicamente de fuentes confiables y que se fomente la conciencia y la educación en ciberseguridad en todos los niveles de la organización.

El Centro de Ciberinteligencia de Entel CyberSecure recomienda lo siguiente:

 

  • Generar una regla personalizada para bloqueos de IOC’s en perfiles entrantes perimetrales.
  • No abrir archivos de Microsoft Office que contengan MACROS hasta obtener confirmación del remitente y verificar que el envío sea bajo estrictas políticas de seguridad como por ejemplo: archivo cifrado, contraseña enviada por otro medio, contacto directo con el remitente.
  • Utilizar el principio de menor privilegio, que trata de dividir el uso del sistema en dos cuentas, una estándar para uso diario que incluya las mínimas funciones posibles y otra cuenta de administrador que permita acceder al núcleo de su dispositivo.
  • Tener atención y evitar extensiones como “exe”, “vbs” y “scr”. Es necesario vigilar este tipo de archivos, ya que podrían ser peligrosos. Un atacante podría utilizar diversas extensiones para enmascarar archivos maliciosos como un vídeo, foto, o un documento como: (reporte-clientes.doc.scr).
  • Las campañas de phishing se caracterizan por tener faltas de ortografía o errores en el diseño. Revisa el contenido con detención, y desconfía de correos con imperfecciones.
  • Desconfía de los correos alarmantes. Si un mensaje le indica o incentiva a tomar decisiones apresuradas o en un tiempo limitado, probablemente se trata de phishing.
  • Disponer de sistemas antispam para correos electrónicos, de esta manera se reducen las posibilidades de infección a través de campañas masivas de malspam por correo electrónico.
  • Proteger el protocolo RDP:
    • Deshabilite los servicios RDP, si no es necesario. La desactivación de servicios no utilizados e innecesarios ayuda a reducir su exposición a las vulnerabilidades de seguridad, y es una buena práctica de seguridad.
    • Si no es posible cerrarlos, límite las direcciones de origen que pueden acceder a los puertos.
    • Proteger el acceso a los sistemas RDP, bloqueando el sistema local en lugar del sistema remoto. Incluso si el primero no tiene valor, la sesión RDP solo estará protegida limitando el acceso al sistema cliente. 
    • Desconectar sesiones RDP en lugar de bloquearlas, esto invalida la sesión actual, lo que impide una reconexión automática de la sesión RDP sin credenciales. 
    • Bloquear bidireccionalmente el puerto TCP 3389 utilizando un firewall o hacerlo accesible sólo a través de una VPN privada. 
    • Habilitar la autenticación de nivel de red (NLA).
  • Tener políticas de respaldo periódico que se almacenen fuera de la red organizacional.
  • Escanear todos los archivos adjuntos, antes de abrirlos, con un antivirus que detecte comportamientos para combatir los ransomwares.
  • Mantener una buena estrategia de respaldo de información: sistemas de copias de seguridad que deben estar aisladas de la red; y políticas de seguridad. Lo anterior permitirá neutralizar el ataque, restaurar las operaciones y evitar el pago del rescate.
  • Actualizar los equipos con Windows a las últimas versiones.
  • Nunca seguir la instrucción de deshabilitar las funciones de seguridad, si un correo electrónico o documento lo solicita.
  • Establecer políticas de seguridad en el sistema para impedir la ejecución de ficheros desde directorios comúnmente utilizados por Ransomware (App Data, Local App Data, etc.)
  • Mantener listas de control de acceso para las unidades mapeadas en red restringiendo los privilegios de escritura. Con esto podrá identificar el impacto generado por el cifrado de archivos, entendiendo que el secuestro de información se producirá en todas las unidades de red mapeadas en el equipo víctima.
  • Seguir las normativas internacionales tales como ISO 27001:2013 en su control A.7.2.2 “Concienciación con educación y capacitación en seguridad de la información” o NIST PR.AT-1: “Todos los usuarios se encuentran entrenados e informados”, a fin de tener bases para divulgar campañas educativas orientadas a nivel de usuarios respecto al correcto uso de las herramientas tecnológicas, haciendo énfasis en cómo proceder al recibir correos de orígenes desconocidos, objeto prevenir que sus usuarios sean víctimas de entes maliciosos.

Tags: #Malware #Notepad++ #Troyano #mimeTools


© 2023 Entel Digital
Protege tus activos críticos, datos e infraestructura TI y minimiza tus riesgos de fuga de información,
fraude electrónico, espionaje industrial, suplantación de identidades y amenazas Zero Day, con las soluciones y servicios del Centro de Ciberinteligencia de Entel.