• Sign in
 
  •  
  • MSDN Blogs
  • Microsoft Blog Images
  • More ...
Common Tasks
  • Blog Home
  • Email Blog Author
  • About
  • RSS for comments
  • RSS for posts
Blog - News
Search
Recent Posts
  • Digest Authentication in System.Net classes don't fully comply with RFC2617

    Posted 2 months ago
    by Daniel Mossberg
      0 Comments
  • Corrupción de las claves RSA y la importancia de hacer backup

    Posted 11 months ago
    by Daniel Mossberg
      0 Comments
  • Modelos de programación en ASP.NET: Web Forms, MVC y Web Pages

    Posted over 1 year ago
    by Daniel Mossberg
      4 Comments
  • HttpException: An error occurred while attempting to impersonate

    Posted over 3 years ago
    by Daniel Mossberg
      2 Comments
  • Problemas al subir ficheros a una aplicación ASP.NET

    Posted over 3 years ago
    by Daniel Mossberg
      0 Comments
Tags
  • ASP
  • ASP.NET
  • Common Language Runtime (CLR)
  • Debugging
  • Ejemplos de Código
  • Failed Request Tracing
  • Herramientas
  • IIS 6.0
  • IIS 7.0
  • Kerberos
  • Log Parser
  • Pages
  • Seguridad
  • Silverlight
  • SSL/TLS
Archives
Archives
  • February 2013 (1)
  • May 2012 (2)
  • November 2010 (1)
  • August 2010 (1)
  • April 2010 (1)
  • March 2010 (2)
  • February 2010 (2)
  • January 2010 (2)
  • December 2009 (5)
  • October 2009 (1)
  • September 2009 (3)
  • August 2009 (1)
  • July 2009 (2)
  • May 2009 (2)
  • April 2009 (4)
  • February 2009 (1)
  • January 2009 (1)
  • December 2008 (1)
Web Developer Support Blogs
  • If broken it is, fix it you should

  • Notes from a dark corner

  • Never doubt thy debugger

  • Speaking of which...

  • Desarrollo Web

Server and Tools Blogs
  • Windows 8 app developer blog

  • The Visual Studio Blog

  • .NET Web Development and Tools Blog

  • .NET Framework Blog

  • The Windows Phone Developer Blog

  • ScottGu's Blog

  • Scott Hanselman's Computer Zen

Cómo hacer más seguro un servidor IIS 6.0

Cómo hacer más seguro un servidor IIS 6.0

Rate This
Daniel Mossberg
18 May 2009 10:30 AM
  • Comments 0

Cuando Microsoft sacó Windows Server 2003 con IIS 6.0 se dio un gran paso adelante en cuanto al paradigma secure by default. A diferencia de anteriores versiones, IIS 6.0 se instalaba con muchas de sus funcionalidades deshabilitadas por defecto (p. ej. extensiones ISAPI y componentes CGI), de forma que cada administrador debía habilitar explícitamente las funcionalidades que realmente fuera a utilizar. En una instalación por defecto de IIS 6.0 sólo se sirve contenido estático.

 

Con Windows Server 2008 e IIS 7.0 se ha dado un paso más en esta dirección, pero este tema ya lo trataré en un post separado.

 

En todo caso, aunque la instalación por defecto de IIS 6.0 ya nos proporciona un buen punto de partida en cuanto a seguridad, podemos tomar una serie de precauciones para hacer nuestros servidor menos susceptibles a ser atacados, y en el peor de los casos, mitigar las consecuencias de un eventual ataque exitoso. Estas son algunas de las recomendaciones que damos a nuestros clientes (no están ordenadas por importancia):

 

Reducir la superficie de ataque del servidor usando la herramienta Security Configuration Wizard for Windows Server 2003.
Utilizar esta herramienta es una buena práctica para establecer un buen punto de partida del bastionado de los servidores IIS. Esta herramienta nos ayuda a determinar la funcionalidad mínima requerida para el rol o roles de nuestro servidor y nos permite:

·         Deshabilitar servicios no requeridos.

·         Bloquear puertos que nos están en uso.

·         Aplicar restricciones a los puertos que dejamos abiertos.

·         Deshabilitar las Web Extensions de IIS que no vayamos a necesitar.

·         Establecer políticas de auditoría eficaces.

Utilizar Host Headers para los sitios web en IIS.
El uso de Host Headers previene que un sitio web responda a cualquier otra URL que las que están configuradas como Host Headers. De esta forma podemos evitar ataques de escaneo de IPs. La mayoría de los gusanos se extienden mediante escaneo de IPs, por lo que podemos minimizar las susceptibilidad de nuestro servidor a estos ataques simplemente utilizando host headers.

 

Almacenar el contenido del sitio web en una partición o unidad de disco distinta a la del sistema y auditar los permisos NTFS.
Esto nos permitirá protegernos de ataques del tipo directory traversal o backtracking en los que el hacker intenta acceder a ficheros de sistema mediante rutas relativas para obtener el control de la máquina. Restringir al máximo los permisos NTFS del contenido del sitio web es igualmente muy importante.

Desplegar los servidores IIS publicados en Internet fuera del dominio corporativo.
Debido a la exposición de los frontales IIS a los ataques de Internet, siempre es recomendable tenerlos los más separados posible de la intranet corporativa y el dominio de directorio activo. De tal forma mitigaremos el potencial daño al resto de máquinas del dominio si la seguridad del servidor IIS se ve comprometida.

Usar URLScan 3.1 para bloquear peticiones potencialmente peligrosas.

Con URLScan podremos crear reglas para bloquear verbos HTTP específicos, extensiones de ficheros, secuencias de caracteres y aplicarlas de forma individual a uno o varios de los encabezados HTTP de cada petición.

 

Por ejemplo, podemos crear reglas para mitigar ataques de inyección de SQL, de forma que las peticiones cuyo querystring (o cualquier otro encabezado HTTP relvante como las cookies) cumpla una serie de requisitos serán bloqueadas y nunca llegaran a procesarse por nuestro servidor web.

 

La herramienta la podemos descargar desde aquí:
UrlScan version 3.1 RTW - x86

UrlScan version 3.1 RTW - x64

Algunos recursos sobre la herramienta:

Common URLScan Scenarios

http://learn.iis.net/page.aspx/476/common-urlscan-scenarios/

 

UrlScan 3.1

http://blogs.iis.net/wadeh/archive/2008/10/31/urlscan-3-1.aspx

 

Habilitar extended logging de IIS

Los logs de IIS nos pueden proporcionar información valiosa sobre intentos de ataque y ataques exitosos a nuestros servidores web. Es recomendable habilitar extended logging de IIS configurado de modo que se registren todos los campos disponibles (por defecto no se registran todos). Adicionalmente, debemos almacenar los logs en una partición o unidad de disco distinta a la del contenido del sitio web y distinta a la del sistema operativo. Por último debemos restringir los permisos NTFS a la carpeta de logs.

De esta forma dificultaremos la tarea del hacker a la hora de borrar sus huellas tras una ataque exitoso. Únicamente tendrán permisos full control sobre esta carpeta los administradores (y el sistema). Posteriormente debemos analizar regularmente dichos logs, lo cual podemos hacer, por ejemplo, utilizando Log Parser (ver post Análisis de logs de IIS utilizando Log Parser).


Auditar regularmente la seguridad de los servidores mediante el Microsoft Baseline Security Analyzer

Esta herramienta nos ayuda a identificar vulnerabilidades causadas por configuraciones y políticas inadecuadas, falta de actualizaciones de seguridad, y adicionalmente realiza una serie de comprobaciones específicas sobre la configuración de IIS.


Microsoft Baseline Security Analyzer
http://www.microsoft.com/technet/security/tools/mbsahome.mspx

 

Espero que os sea de utilidad.

 

- Daniel Mossberg

  • 0 Comments
Seguridad, IIS 6.0
Leave a Comment
  • Please add 5 and 8 and type the answer here:
  • Post
  • © 2013 Microsoft Corporation.
  • Terms of Use
  • Trademarks
  • Privacy & Cookies
  • Report Abuse
  • 5.6.426.415