miércoles, 29 de febrero de 2012

Evolución en la estructura de las infraestructuras Web

Internet es un mundo que avanza muy rápidamente. Este hecho obliga a que las técnicas de ataque y defensa cambien constantemente buscando los puntos más vulnerables para atacarlos o defenderlos.

Es una especie de juego de gato y ratón. Los hackers investigan los aspectos más vulnerables de una tecnología, descubren fallos y los aprovechan. Con el tiempo estas vulnerabilidades van siendo corregidas y los hackers se ven obligados a cambiar sus tácticas.

Hoy en día, dentro de las tácticas de ataque directo las más populares son las que se centran en la tecnología Web, por varios motivos:
• Con la popularización de los cortafuegos, el numero de servicios de red que están abiertos al público son cada vez menores.
• La mayoría de las organizaciones cuentan con unos o varios servidores Web públicos que hospedan distintas aplicaciones.
• Algunos de los estándares en los que se basa la Web (p.e. HTTP, HTML, Javascript) no fueron diseñados considerando la seguridad como un factor clave.
• Muchas de las herramientas software que se utilizan en el entorno Web son relativamente jóvenes y no han sido probadas exhaustivamente.
• La Web suele permitir cierto grado de interactividad, esto desde el punto de vista de la seguridad suele significar más puntos vulnerables posibles.
• Es habitual que las aplicaciones Web que se publican hayan sido desarrolladas a medida y su código normalmente no ha sido auditado desde el punto de vista de la seguridad.

Esto hace que el numero de vulnerabilidades que puede presentar un servicio Web sean mucho mayores que las de cualquier otro tipo de servicio. Y lo hacen un entorno propicio para posibles atacantes.

Para comprender algunas de las razones históricas de este escenario vamos a ver una representación simplificada de la evolución en la estructura de las infraestructuras Web típicas.

A finales de los 90 el servicio Web típico era este:


Paulatinamente se fue añadiendo mayor interactividad:


Por cuestiones de rendimiento, escalabilidad y seguridad; se separaron algunas funciones:


A día de hoy, una infraestructura Web medianamente compleja suele estar compuesta de los siguientes elementos.


Está claro que esta estructura no es fija ni mucho menos. Muchas páginas Web siguen funcionando con la filosofía clásica de los 90. Mientras que aplicaciones más complejas y avanzadas pueden repartir las funciones de forma incluso más granular y contar con más componentes.

Para controlar la seguridad de una infraestructura Web hay que controlar la de todos y cada uno de sus componentes. Como se puede apreciar esta tarea es mucho más compleja hoy en día que hace unos pocos años.

La separación de las distintas funciones entre varios servidores aporta mejores capacidades de control sobre la seguridad del conjunto, pero el aumento de la complejidad también introduce nuevos vectores de ataque.

No hay comentarios:

Publicar un comentario en la entrada