Vulnerabilidad

Vulnerabilidad sobre el servicio “Print Spooler” de Microsoft Windows

Se identificaron dos vulnerabilidades sobre el servicio Print Spooler de Microsoft Windows de ejecución remota de código, con autenticación. Una de ellas es considerada como zero day dado que no hay parches publicados hasta el momento.
vulnerabilidad

Detalles técnicos

Productos afectados:

  • Microsoft Windows 10
  • Microsoft Windows Server 2008 SP2 / 2008 R2 SP1
  • Microsoft Windows Server 2012 / 2012 R2
  • Microsoft Windows Server 2016
  • Microsoft Windows Server 2019

Las vulnerabilidades afectan la función “RpcAddPrinterDriverEx()” en el servicio Windows Print Spooler, servicio que se encuentra activado por defecto en las versiones de Windows antes mencionadas.

La vulnerabilidad CVE-2021-1675 puede permitir alojar un controlador manipulado en el directorio local del equipo afectado vía SMB (Server Message Block). La función RpcAddPrinterDriver realiza la carga del controlador con privilegios de SYSTEM, lo que permite la ejecución del código arbitrario ensamblado el archivo DLL del controlador con estos permisos. El código ensamblado en el DLL es ejecutado por cualquieraque se autentique en el servicio de Print Spooler.

La otra vulnerabilidad identificada, a la que se le asignó el identificador CVE-2021-34527, presenta una variante en el vector de ataque. Ambas vulnerabilidades son asociadas al nombre “PrintNightmare”, con el que la comunidad técnica las referencia.

Para las dos vulnerabilidades, existen múltiples explotaciones y pruebas de concepto publicadas en Internet.

Remediación

Para la vulnerabilidad CVE-2021-1675 Microsoft liberó un parche de seguridad junto con los  de junio. Recomendamos aplicarlos cuanto antes.

Respecto a la vulnerabilidad CVE-2021-34527, hasta el momento Microsoft no ha publicado una actualización de seguridad, por lo que se recomienda seguir las mitigaciones sugeridas por el fabricante en aquellos controladores de dominio y sistemas que no requieren realizar impresiones.

Microsoft cuenta con una guía de mejores prácticas respecto al servicio de Print Spooler para los controladores de dominio, donde recomienda que este servicio sea deshabilitado mediante Políticas de Grupo (GPO).

Mitigación

Microsoft publicó algunos workarounds para mitigar temporalmente los riegos asociados:

  • Deshabilitar el servicio de Print Spooler.

Esto previene que el equipo sobre el cual se aplique la medida pierda la posibilidad de imprimir, tanto localmente como de forma remota.

  • Deshabilitar las impresiones remotas entrantes con una Política de Grupo.

El equipo dejará de funcionar como estación de impresión remota, aunque si se podrá enviar a imprimir de manera local a una impresora conectada directamente al mismo.

Acorde con los pasos definidos por Microsoft, esto puede realizarse con los siguientes comandos de PowerShell:

  • Stop-Service -Name Spooler -Force
  • Set-Service -Name Spooler -StartupType Disabled

Recomendaciones

Microsoft liberó parches que contemplan la vulnerabilidad CVE-2021-1675, sin embargo, existen reportes de explotación del servicio luego de haberlos aplicado. Aun así, recomendamos aplicarlos lo antes posible.

Acceder a los parches de seguridad de Junio

Como aún no hay parches para la vulnerabilidad CVE-2021-34527, recomendamos seguir las mitigaciones temporales provistas por Microsoft, mediante las cuales es posible atenuar ambas vulnerabilidades.

Detección

Si hubo intentos de explotación, es posible detectarlos ejecutando el siguiente código en PowerShell:

Get-WinEvent -LogName 'Microsoft-Windows-PrintService/Admin' | Select-String -InputObject {$_.message} -Pattern 'The print spooler failed to load a plug-in module'

 

Referencias

Windows Print Spooler Remote Code Execution Vulnerability CVE-2021-1675

Windows Print Spooler Remote Code Execution Vulnerability – CVE-2021-34527

Recomendaciones de CERT/CC

Guía de buenas prácticas para Print Spooler de Microsoft

Etiquetas