Entendiendo una DMZ con múltiples servidores

0

Obtengo el principio general de una DMZ, es decir, colocar servidores públicos en la DMZ para aislar y proteger la LAN corporativa. Tengo una aplicación web que debe ser pública, esta aplicación necesita comunicarse con un servidor de base de datos, por lo que es un requisito bastante básico.

La aplicación web solo requiere la comunicación a través de un puerto específico a la base de datos para que todos los puertos no esenciales se cierren. Estoy tratando de proteger la base de datos tanto como sea posible en caso de que la aplicación web esté comprometida.

Mi pregunta tiene que ver con la ubicación del servidor de la base de datos, ¿debería estar esto también en la DMZ o tiene que estar en la DMZ? Mi opinión es que si la base de datos no está en la zona DMZ y está ubicada en la LAN corporativa, al menos un puerto está abierto a la base de datos, lo que significa que existe una conexión a la red corporativa y, por lo tanto, se anula el beneficio de una zona DMZ, por lo que, según mi lógica, la Base de datos necesita estar en la DMZ?

    
pregunta Darragh 18.07.2016 - 09:11
fuente

3 respuestas

2

El propósito de la DMZ es no exponer su DB directamente a Internet. En su lugar, lo expone a su aplicación web, y su aplicación web a Internet. Pero debes cuidar la seguridad tanto de la aplicación web como de la base de datos.

Si su aplicación web se ve comprometida, no significa que la base de datos también lo sea. Hay varios vectores aquí, por ejemplo, podría tener una vulnerabilidad de inyección de SQL en su código, por lo que sería irrelevante si la base de datos está en una DMZ, subred privada o incluso el mismo host que la aplicación web, ya que un atacante podría recuperar información de todos modos.

Otro ejemplo, de alguna manera su aplicación podría llevar a acceder al sistema operativo. Pero si su sistema está cuidadosamente reforzado, el atacante solo podría acceder a los recursos a los que tiene acceso el usuario de la aplicación web. La base de datos no debe ser ninguno de esos recursos.

    
respondido por el yzT 18.07.2016 - 09:22
fuente
0

Otra forma es tener un proxy inverso también conocido como load Balancer para que actúe como punto de terminación de tráfico para el tráfico externo e interno. Cuando el tráfico finaliza en un proxy, puede inspeccionar los encabezados y el contenido del tráfico antes de permitir que se restablezca en los servidores que se ocultan detrás del proxy inverso.

Para combatir los ataques de las aplicaciones web, puede considerar un firewall de aplicación web en la parte superior de su red de firewall y sistemas de detección y prevención de intrusos.

    
respondido por el Davis 18.07.2016 - 12:35
fuente
0

Si su aplicación no requiere acceso de escritura a la base de datos, considere colocar una réplica de solo lectura de la base de datos en la DMZ, luego use un puerto oscuro para la replicación de la base de datos con la base de datos "real".

    
respondido por el Dave 18.07.2016 - 19:42
fuente

Lea otras preguntas en las etiquetas