TLP:CLEARAnálisis defensivo de fuentes públicas. Sin pasos de explotación. Cierra la serie [Nightmare Eclipse](/posts/nightmare-eclipse/).

Resumen ejecutivo#

El 13 de mayo, un día después del Patch Tuesday de mayo, el actor soltó tres LPEs de golpe (junto con YellowKey). Dos de ellas son las “Plasma”, y ambas terminan en SYSTEM:

  • GreenPlasma (CVE-2026-45586) — abusa del framework de entrada de texto CTFMON, un servicio que corre como SYSTEM.
  • MiniPlasma (CVE-2020-17103) — reutiliza, sin cambios, un CVE de 2020 contra el driver de Cloud Files. No es un error de tipeo: es el titular de este post.

Ambas se parchearon en el Patch Tuesday de junio 2026. Su valor hoy no es la urgencia (están parcheadas) sino la lección: una es un recordatorio de que los procesos SYSTEM que confían en objetos manipulables son superficie de escalada; la otra, de que un parche que no se verifica es un parche que quizá nunca existió.

MiniPlasma: la resurrección de CVE-2020-17103#

Empecemos por la buena historia. CVE-2020-17103 es un bug de elevación de privilegios en cldflt.sys —el Cloud Files Mini Filter Driver—, descubierto por Project Zero y “parcheado” por Microsoft en noviembre de 2020. Seis años después, el PoC de MiniPlasma lo dispara igual.

¿Por qué? Según el análisis de GuardSix, “el PoC original de Project Zero sigue funcionando sin cambios, lo que significa que el fix o nunca se aplicó correctamente o fue silenciosamente revertido en algún momento.” Es decir: una regresión o un parche incompleto que dejó el agujero abierto durante años.

Mecanismo (nivel conceptual). El driver realiza operaciones de registro usando su contexto SYSTEM privilegiado sin restringir al llamante. Ganando una condición de carrera (alternando tokens de impersonación mientras se invoca CfAbortOperation()), el atacante engaña al driver para que escriba en HKEY_USERS\.DEFAULT —un hive de SYSTEM que el usuario no puede tocar normalmente—. Eso se convierte en envenenamiento de variables de entorno (redirigir %windir%), que a su vez hace que Windows Error Reporting ejecute un wermgr.exe malicioso como SYSTEM. Resultado: shell SYSTEM interactivo en el escritorio del usuario, sin credenciales y sin prompt de UAC.

El patrón WER, otra vez. Fíjate: MiniPlasma y RoguePlanet llegan a SYSTEM por el mismo sitio final —Windows Error Reporting ejecutando un wermgr.exe suplantado—, aunque el camino para llegar allí sea distinto (registro/env vars vs. junction). WER es una primitiva recurrente de ejecución como SYSTEM en toda esta campaña. Si vigilas wermgr.exe fuera de System32, cubres varias piezas a la vez.
La lección de ingeniería. Un fix no está cerrado hasta que se verifica que el PoC original ya no funciona —idealmente con un test de regresión que se ejecute en cada build—. MiniPlasma es el caso de libro de por qué “marcado como parcheado” no es lo mismo que “parcheado”: el CVE-2020-17103 estuvo seis años en estado zombie. Aplica igual a tu propio código: sin test de regresión, un bug corregido puede volver silenciosamente.

GreenPlasma: abusar de la confianza de CTFMON#

Componente: ctfmon.exe, el servicio de entrada de texto de Windows, que corre como SYSTEM. Clase de bug: escalada vía manipulación de symlinks del Object Manager + bypass de DACL de registro.

Mecanismo (nivel conceptual). El exploit crea un enlace simbólico del Object Manager apuntando a CTF.AsmListCache.FMPWinlogon. Cuando el proceso privilegiado ctfmon abre esa sección con nombre, accede sin saberlo a un objeto controlado por el atacante. En paralelo, usa un symlink de registro para saltarse los controles de acceso sobre el hive de Policies —engañando al kernel para que resetee permisos sobre claves sensibles redirigiendo las escrituras por la ruta, menos protegida, de la política de CloudFiles—.

Matiz de madurez. Según GuardSix, el PoC de GreenPlasma todavía dispara un prompt de consentimiento de UAC y se comporta más como prueba de técnica que como exploit llave en mano. Menos “turnkey” que MiniPlasma, pero igual de instructivo: demuestra que un proceso SYSTEM que abre objetos por nombre sin validar su origen es manipulable.

Detección#

Ambas están parcheadas, así que esto es hunting retrospectivo y cobertura de la clase de bug, no respuesta urgente:

wermgr.exe fuera de ruta (cubre MiniPlasma y RoguePlanet)#

DeviceProcessEvents
| where Timestamp > ago(30d)
| where FileName =~ "wermgr.exe"
| where not(FolderPath has_any (@"\Windows\System32\", @"\Windows\SysWOW64\"))
| project Timestamp, DeviceName, FolderPath, ProcessCommandLine,
          InitiatingProcessFileName, AccountName

Anomalías de %windir% / variables de entorno (MiniPlasma)#

Vigila procesos SYSTEM lanzados con un %windir% que no apunta a C:\Windows, o modificaciones inesperadas de variables de entorno en HKEY_USERS\.DEFAULT\Environment. Es el corazón del truco de envenenamiento de env vars.

La creación de symlinks del Object Manager hacia objetos CTF.* o de symlinks de registro hacia el hive de Policies desde procesos de usuario es rara. Requiere telemetría de kernel/registro (Sysmon EventID 12-14 para el registro; el Object Manager es más difícil de instrumentar).

Mitigación#

AmenazaControl
GreenPlasma, MiniPlasmaParche Patch Tuesday junio 2026 (fix real de ambas)
MiniPlasmaVerificar que el host recibió el parche de junio, dado el historial de regresión de este CVE
Clase de bugVigilar wermgr.exe fuera de System32 y anomalías de %windir% como cobertura transversal

Cierre de la serie#

Seis posts, ocho exploits, un actor. Si algo se lleva el lado azul de Nightmare Eclipse, es esto:

  1. Caza clases de bug, no CVE. Cinco de las ocho piezas son la misma primitiva (TOCTOU + oplock + junction, con WER como salida a SYSTEM). Una detección comportamental sólida —shell hijo de MsMpEng.exe, wermgr.exe fuera de ruta— cubre lo que cinco firmas de CVE no.
  2. El estado autorreportado miente. UnDefend y las piezas de BitLocker demuestran que “protección activada” y “protegido” son cosas distintas.
  3. Un parche sin verificar no es un parche. MiniPlasma estuvo seis años zombie.
  4. El control nativo también es superficie. El propio Defender fue el vehículo de la escalada. Defensa en profundidad no es un lujo.

Vuelve al índice de la serie para el mapa completo y los IoCs consolidados.

MITRE ATT&CK#

TácticaTécnica
Privilege EscalationT1068 — Exploitation for Privilege Escalation
Privilege EscalationT1574.007 — Path Interception by PATH Environment Variable (MiniPlasma)
Defense EvasionT1036 — Masquerading (wermgr.exe)
Privilege EscalationT1548 — Abuse Elevation Control Mechanism (GreenPlasma / DACL bypass)

Referencias#