Skip to main content

Alertas de WithSecure sobre el uso de PAExec por parte de Medulla

Aplicable a: Medulla / WithSecure Elements
Versión: Todas
Entorno: Windows / Local / SaaS
Categoría: Seguridad / EDR / Ejecución remota

Contexto

Medulla utiliza PAExec, un equivalente de código abierto de PsExec/SysInternals, para ejecutar acciones de forma remota en los equipos Windows gestionados:

  • Despliegue de aplicaciones
  • Ejecución de scripts programados
  • Orquestación de tareas desde el quiosco de aplicaciones
  • Acciones de corrección o mantenimiento

Importante:
Cualquier medida de exclusión de seguridad (EDR, antivirus, lista de permitidos) debe reevaluarse periódicamente para garantizar que siga siendo pertinente en función del contexto, las versiones de software y su política de seguridad.
Se recomienda aplicar las exclusiones más restrictivas posibles.

En Medulla, este mecanismo lo utiliza, en particular, el componente:

scheduling_launch_kiosk.py

PAExec adopta deliberadamente un comportamiento similar al de PsExec, una herramienta legítima ampliamente utilizada por los administradores de sistemas, pero también conocida como vector de movimiento lateral en determinados escenarios de ataque.

Por lo tanto, los EDR modernos, entre ellos WithSecure Elements, supervisan este tipo de comportamiento de forma predeterminada.

¿Por qué WithSecure detecta un archivo PAExec-XXXX-POSTE.exe?

PAExec funciona según un mecanismo temporal:

  1. El binario Medulla se copia en el equipo de destino
  2. Se guarda una copia temporal en C:\Windows\
  3. Esta copia se ejecuta como un servicio temporal de Windows
  4. El archivo se elimina automáticamente al finalizar la operación

El nombre del archivo es dinámico:

C:\WINDOWS\PAExec-<PID>-<NombreEquipo>.exe

Ejemplo:

C:\WINDOWS\PAExec-2124-CSE-SDN-ALV-02.exe

El binario original de Medulla permanece en:

C:\Archivos de programa\Medulla\bin\paexec.exe

Información:
El EDR detecta principalmente la copia temporal guardada en C:\Windows\, y no el binario original de Medulla.


¿Por qué se ejecuta PAExec con el permiso de NT\Sistema?

Este comportamiento es normal.

El ciclo de ejecución de PAExec se desarrolla en dos fases:

  1. El binario de Medulla se copia en C:\Windows\PAExec-*.exe
  2. La copia se instala como un servicio temporal de Windows

Esta segunda fase se ejecuta con:

NT AUTHORITY\SYSTEM

con el argumento:

-service

Comportamiento esperado:
La ejecución bajo SYSTEM y el argumento -service son normales en el contexto de Medulla.


¿Qué eventos de Windows se generan?

ID Registro Descripción Esperado
7045 Sistema Instalación del servicio PAExec temporal ✅ Sí
7036 Sistema Inicio del servicio PAExec ✅ Sí
5145 Seguridad Acceso al recurso compartido de Administración ✅ Sí
5145 Seguridad Acceso a las tuberías con nombre stdin/stdout/stderr ✅ Sí
4648 Seguridad Autenticación con credenciales explícitas ✅ Posible

Eventos en las tuberías denominadas:

*-stdin
*-stdout
*-stderr

son objeto de una vigilancia especial por parte de los EDR, ya que caracterizan el funcionamiento de PsExec/PAExec.


¿Por qué WithSecure asocia esto al movimiento lateral?

WithSecure detecta un conjunto de comportamientos típicamente asociados a las herramientas de administración remota:

  • Copia de un ejecutable en C:\Windows\
  • Uso del recurso compartido de Administración
  • Creación de un servicio temporal de Windows
  • Ejecución bajo NT AUTHORITY\SYSTEM
  • Comunicación a través de tuberías denominadas stdin/stdout/stderr

Estos comportamientos son idénticos en un uso:

  • Legítimo: Medulla / administración del sistema
  • Malicioso: desplazamiento lateral del atacante

Importante:
La exclusión debe ser lo más restrictiva posible para no reducir el nivel general de seguridad.


¿Puedo excluir C:\Program Files\Medulla\bin\paexec.exe?

No.

Esta exclusión por sí sola es ineficaz, ya que el archivo detectado por el EDR es la copia temporal:

C:\WINDOWS\PAExec-*.exe

y no el binario original:

C:\Archivos de programa\Medulla\bin\paexec.exe

¿Qué exclusión se recomienda en WithSecure Elements?

Opción A: exclusión mediante hash SHA256 (recomendada)

En WithSecure Elements Security Center:

  1. Ve a Perfiles → Seguridad → Control de aplicaciones
  2. Crea una regla «Allow by hash»
  3. Introduce el hash SHA256 del archivo binario PAExec Medulla
  4. Opcionalmente, restringir a la ruta:
C:\Windows\PAExec-*.exe

y a la cuenta:

NT AUTHORITY\SYSTEM

Recomendación:
La exclusión por hash es el método más seguro, ya que comprueba la integridad exacta del archivo binario de Medulla.

Opción B – Exclusión de padre a hijo (recomendada como complemento)

Permitir PAExec-*.exe únicamente cuando el proceso padre sea el agente Medulla.

Proceso padre esperado:

Servicio del agente Medulla (programador de tareas de Python)

Este método permite reducir considerablemente el riesgo de uso indebido.

Opción C – Exclusión con comodín (temporal)

Crear una exclusión de ruta:

C:\Windows\PAExec-*.exe

con las siguientes condiciones:

  • Cuenta: NT AUTHORITY\SYSTEM
  • Argumento: -service
  • Proceso principal: agente Medulla

Atención:
Este método debe ser solo temporal. No valida la integridad del binario.


¿Cómo se obtiene el hash SHA256 del binario PAExec?

Desde un equipo administrado por Medulla:

Get-FileHash "C:\Program Files\Medulla\bin\paexec.exe" -Algorithm SHA256

El hash es idéntico entre:

C:\Program Files\Medulla\bin\paexec.exe

y:

C:\WINDOWS\PAExec-*.exe

ya que PAExec se copia tal cual.


¿Cambia el hash tras una actualización de Medulla?

Sí.

Si PAExec se actualiza en una nueva versión de Medulla, el SHA256 cambiará.

Recomendación:
Comprueba las exclusiones de WithSecure tras cada actualización importante de Medulla.


Resumen de los aspectos técnicos

Elemento Valor
Archivo binario de origen C:\Archivos de programa\Medulla\bin\paexec.exe
Ruta detectada C:\Windows\PAExec-<PID>-<NombreEquipo>.exe
Mecanismo Copia temporal a través de la administración
Cuenta de ejecución NT AUTHORITY\SYSTEM
Argumento -service
Eventos de Windows 7045, 7036, 5145
Componente Medulla scheduling_launch_kiosk.py
Exclusión recomendada Hash SHA256 + contexto de ejecución
Exclusión que debe evitarse C:\Archivos de programa\Medulla\bin\paexec.exe por sí solo