Inicio / Alerta Temprana / Avisos Seguridad / Microsoft alerta de posible ataque basado en "Windows Service Isolation"

Microsoft alerta de posible ataque basado en "Windows Service Isolation"

Fecha de publicación: 
11/08/2010
Importancia: 
3 - Media
Recursos afectados: 

Se ven afectados todos los sistemas Windows que tengan activada la tecnología "Windows Service Isolation", aunque la vulnerabilidad es difícil de explotar ya que en la mayoría de las ocasiones no se ejecuta código no confiable bajo la cuenta NetworkService. En el detalle del aviso se informa de que escenarios suponen un mayor riesgo.

Descripción: 

Mediante un aviso de seguridad, Microsoft alerta de posibles ataques para obtener un escalado de privilegios.

Solución: 

Hasta que se publique una actualización, se pueden aplicar las siguientes mitigaciones, a aplicar en cada servicio, en caso de tener un servidor en situación de riesgo (ver el apartado detalles):

IIS:

Configurar "Worker Process Identity" WPI para los pools de aplicación. Para ello se deben seguir los siguientes pasos:

En IIS 6.0:

  • En el gestor de IIs, expandir el ordenador local, expandir pools de aplicación, hacer click con el botón derecho en "Application Pools" y seleccionar propiedades.
  • Seleccionar la pestaña "Identity" y hacer click en "Configurable". En esta ventana introducir el nombre de usuario y contraseña bajo el que se desea que se ejecute el IIS.
  • Añadir la cuenta de usuario al grupo IIS_WPG.

Para IIS 7.0 y superiores:

  • Desde una consola de comandos, con un usuario administrador, ir al directorio %systemroot%\system32\inetsrv.
  • Ejecutar el comando APPCMD.exe con la sintaxis siguiente donde 'string' es el nombre del 'application pool', 'userName:string' el nombre de usuario asignado y 'password:string' su contraseña:
    appcmd set config /section:applicationPools /
    [name='string'].processModel.identityType:SpecificUser /
    [name='string'].processModel.userName:string /
    [name='string'].processModel.password:string
    

Windows Telephony Application Programming Interfaces (TAPI):

Aplicar la actualización para la vulnerabilidad CVE-2010-1886. Se puede obtener información de cómo hacerlo en el siguiente enlace:

SQL Server:

Eliminar, en caso de que no hagan falta, los privilegios administrativos de SQL Server de los usuarios.

Detalle: 

El ataque está basado en la tecnología Windows Service Isolation que permite el acceso a determinados objetos sin la necesidad de utilizar una cuenta privilegiada o disminuir la seguridad de los objetos.

La vulnerabilidad está presente en situaciones en las que código no confiable es ejecutado con la cuenta NetworkService. En estos casos, es posible que un atacante cambie la cuenta del proceso en ejecución a LocalSystem, con lo que tomaría el control de la máquina.

Aunque en la mayoría de situaciones no se ejecuta código no confiable bajo la cuenta NetworkService, se han identificado las siguientes servicios mediante los cuales un atacante puede subir y ejecutar código bajo ella:

  • Internet Information Services (IIS) que ejecuta código de usuario como por ejemplo:
    • Filtros ISAPI.
    • Extensiones ISAPI.
    • Código ASP.NET.

    Para que un ataque tenga éxito el atacante primero debería añadir contenido Web al servidor IIS. Aunque esto normalmente no se permite, existen servidores que tienen más riesgo porque hospedan contenido de terceras partes.

    El riesgo de instancias de IIS sobre Windows Server 2003 y Windows Server 2008 es mayor porque el usuario por defecto es NetworkService.

    El riesgo se reduce en las situaciones siguientes:

    • Instalaciones por defecto de IIS 5.1, IIS 6.0, y IIS 7.0 bloquean el vector de ataque por parte de usuarios anónimos porque en la configuración por defecto las subidas de ficheros de forma anónima no se permiten.
    • Todos los vectores de ataque a través de IIS se bloquean si ASP.NET está configurado con un nivel de confianza menor al de confianza total (full trust).
  • SQL Server donde los usuarios tienen privilegios administrativos (permiten subir código al servidor y ejecutarlo).
  • Windows Telephony Application Programming Interfaces (TAPI). Permite, durante la ejecución de una transacción, la obtención del token de NetworkService cuando se realiza una llamada RPC.

Impacto:

La ejecución de estos ataques podrían permitir un escalado de privilegios y, consecuentemente, tomar el control de la máquina.